Finite difference method accelerated with sparse solvers for structural analysis of the metal-organic complexes

Finite difference method (FDM) implemented in the FDMNES software [Phys. Rev. B, 2001, 63, 125120] was revised. Thorough analysis shows, that the calculated diagonal in the FDM matrix consists of about 96% zero elements. Thus a sparse solver would be more suitable for the problem instead of traditional Gaussian elimination for the diagonal neighbourhood. We have tried several iterative sparse solvers and the direct one MUMPS solver with METIS ordering turned out to be the best. Compared to the Gaussian solver present method is up to 40 times faster and allows XANES simulations for complex systems already on personal computers. We show applicability of the software for metal-organic [Fe(bpy)3]2+ complex both for low spin and high spin states populated after laser excitation.


Introduction
The main working time of the full-potential finite difference calculation of XANES spectra in FDMNES [1] is occupied by the solution of a linear system. Nonzero elements of the matrix concentrate near the diagonal and the solver performs traditional gaussian elimination for the diagonal neighborhood. Thorough analysis shows, however, that the calculated diagonal consists of about 96% zeros, thus a sparse solver would be more suitable for the problem. We tried several iterative sparse solvers in Matlab and the direct one (Matlab uses the solver UMFPACK of Timothy A. Davis [2]) as well as massively parallel MUMPS solver [3,4]. The comparison of different solvers for FDMNES matrix was published in [5]. Direct solvers can use a variety of ordering packages. MUMPS solver with METIS [6] ordering turned out to be the best and we chose it for latest FDMNES release build.
Highly accelerated version of the software makes possible now using accurate finite difference modelling for structural analysis on personal computers. We show applicability of the method for  3 complex from singlet low-spin (LS) state 1 A 1 to quintet high-spin (HS) state 5 T 2 . The transition occurs via singlet metal-to-ligand-charge-transfer process [7,8]. Theoretical simulations within contemporary quantum chemistry methods provide accurate information about the geometries and electron structure for both LS and HS states [9][10][11][12]. However results of DFT simulations strongly depend on the choice of the exchange-correlation functional, which in turn require experimental verification. In contrast to EXAFS data XANES can provide quantitative information about both distances and bond angles [13].
In this work we have extracted the information about bond distances along with rotation angle of the bipyridine ligands using pump-probe x-ray absorption spectroscopy above Fe K-edge [14].

Compilation details for the sparse release
Each new release of the accelerated FDMNES version is available on the official web-site (http://neel.cnrs.fr/spip.php?rubrique1007). It contains serial executables. The history of builds which includes also parallel executables is available on GitHub repository (https://github.com/gudasergey/fdmnes). We have implemented FDMNES build system as a web service. The figure 1 depicts its structure. The online build system is available to FDMNES developers, and the request for access can be sent to corresponding author. When source code is uploaded the building process starts automatically. The Linux FDMNES version is built locally on the server, while windows -on the remote windows machine. In the first version of build system the FDMNES for Windows was built by MINGW compiler and was linked with BLAS and LAPACK. But then we discovered, that the Windows FDMNES version is 5 times slower than Linux version built by Intel compiler with MKL on the same computer. Thus we decided to setup building of FDMNES for Windows by Intel compiler on Windows machine. Some difficulties appeared because MUMPS is distributed with make-files for Linux. To overcome this we have installed on windows machine MSYS and mingw-make, configured the MUMPS make-file to use Intel compiler and Microsoft Library Manager. The authors of the ordering package METIS increased portability of the sources by using cmake in the last 5th version. It can generate projects for Visual Studio. FDMNES code successfully links with the libraries if option -NODEFAULTLIB:LIBCMT was passed to the linker. When compiling by Intel compiler FDMNES also requires options -heap-arrays and -zero (-Qzero for windows). To generate stack traces in case of errors we have also added the options -g1 and -traceback. If building procedure was finished successfully the testing process starts. We run sequential and several parallel FDMNES release configurations with different MPI overall and MUMPS host number parameters. When some of tests fail, procedure is passed to the same parallel configuration of debug FDMNES. If all the tests finished successfully, their outputs are compared with the output of sequential FDMNES.

Iron tris(bipyridine) deformations upon spin transition
A set of structural parameters for the bipyridines of the Fe(bipy) 3 2+ that strongly influence on the shape of x-ray absorption spectra was determined. These include the Fe-N distance changes and rotation of bipyridine ligands. The procedure of the multidimensional interpolation approximation, as described in [15] and implemented in FitIt software was used to find the accurate values of these parameters. Simulations of the XANES spectra were performed by means of finite-difference method implemented in the FDMnes program.   In the LS state six nitrogens around iron form a slightly distorted octahedron with the Fe-N distances 1.967 Å [16]. When the molecule undergoes a transition to the high-spin state the electrons are transferred from highest occupied the nonbonding molecular orbitals to the antibonding ones with significant admixture of ligand contribution. Such electronic transitions change the energetically favorable positions of the ligands around Fe. DFT simulations show that Fe-N bonds are elongated by 0.2 Å [11]. We have calculated Fe K-edge XANES for a set of Fe-N distances, obtained by a rigid shift of bipyridine ligands from iron center. Figure 2 shows the evolution of the fit index for an experimental high spin spectrum as a function of Fe-N distance. The minimum value was obtained for 2.185 Å in a good agreement with DFT simulations. Figure 3c shows the axes for the distortion of the iron tris-bipyridine structure in order to perform the XANES fitting for two structural parameters. During the fitting procedure we have started from the ideal octahedral configuration of the molecule. Two parameters were chose for deformations in order to represent the structure of the LS and HS states. They are: A1rigid shift of the bipyridine (figure 3c); A2rotation of the bipyridine around same axis (positive value of A2 corresponds to the counterclockwise rotation). Fitting was performed both for the low spin and high spin states of the molecule using data before and after laser excitation. The obtained equilibrium distances for Fe-N bond are in a good agreement with previous EXAFS analysis [14]. Additionally we have obtained the information about the rotation of the bipyridine ligands.
Present experimental XAS data for the high spin state does not have enough time resolution to see intermediate states of the complex. Further generation of the XFELs would provide femtosecond time resolution for x-ray absorption spectroscopy. The structural analysis of these states can be performed by means of the presented above methods.