3 research outputs found

    Algorithms and data structures for matrix-free finite element operators with MPI-parallel sparse multi-vectors

    Full text link
    Traditional solution approaches for problems in quantum mechanics scale as O(M3)\mathcal O(M^3), where MM is the number of electrons. Various methods have been proposed to address this issue and obtain linear scaling O(M)\mathcal O(M). One promising formulation is the direct minimization of energy. Such methods take advantage of physical localization of the solution, namely that the solution can be sought in terms of non-orthogonal orbitals with local support. In this work a numerically efficient implementation of sparse parallel vectors within the open-source finite element library deal.II is proposed. The main algorithmic ingredient is the matrix-free evaluation of the Hamiltonian operator by cell-wise quadrature. Based on an a-priori chosen support for each vector we develop algorithms and data structures to perform (i) matrix-free sparse matrix multivector products (SpMM), (ii) the projection of an operator onto a sparse sub-space (inner products), and (iii) post-multiplication of a sparse multivector with a square matrix. The node-level performance is analyzed using a roofline model. Our matrix-free implementation of finite element operators with sparse multivectors achieves the performance of 157 GFlop/s on Intel Cascade Lake architecture. Strong and weak scaling results are reported for a typical benchmark problem using quadratic and quartic finite element bases.Comment: 29 pages, 12 figure

    Compact Sparse Coulomb Integrals using a Range-Separated Potential

    Get PDF
    The efficient calculation of so-called two-electron integrals is an important component for electronic structure calculations on large molecules and periodic systems at both mean field and post-HF, correlated, levels. In this thesis, a new and fairly complicated representation of the Coulomb interaction is presented. The Coulomb potential is partitioned into short and long-range parts. The short-range interactions are treated analytically using conventional density fitting methods. The long-range interactions are treated numerically through either a Fourier transform in spherical coordinates or through a Cartesian multipole expansion. The Fourier transform is used for intermediate distances, while multipole expansions (up to octupole) are used for longer range, with a switching algorithm to decide between the two. In this range-separated representation, the corresponding two-electron Coulomb integrals can be calculated efficiently and the amount of data scales linearly with respect to system size. Hartree-Fock theory is used as an extensive test of the range-separated method, but the same building blocks can be used in correlated calculations like Second-order Moller-Plesset perturbation theory and (Cluster in Molecule) type Coupled Cluster calculations
    corecore