Pybigdft Documentation Release 0.1

Total Page:16

File Type:pdf, Size:1020Kb

Pybigdft Documentation Release 0.1 PyBigDFT Documentation Release 0.1 Luigi Genovese Nov 19, 2018 Contents 1 How to write documentation in this package3 2 Module Members 5 3 Index of the Package 55 4 Indices and tables 59 Python Module Index 61 i ii PyBigDFT Documentation, Release 0.1 This package is a collection of Python Modules that are conceived for pre- and post- processing of BigDFT input and output files. Such modules are supposed to enhance the BigDFT experience by high-level approach. Also, calculators and workflows are supposed to be created and inspected with modules of the PyBigDFT package. The documentation of this package is described in Contents 1 PyBigDFT Documentation, Release 0.1 2 Contents CHAPTER 1 How to write documentation in this package The syntax in the text pages is ReStructured Text format. see this page for examples of the syntax, and this one for a more comprehensive explanation of the syntax. The syntax chosen for the auto-documentation of the Python module is Google Docstring syntax. see the google Docstring example in the Sphinx-napoleon package. 1.1 How to generate documentation • Install sphinx package and the requirements written in the file source/requirements.txt of provided with the sources of PyBigDFT. • Copy the quick build file Makefile-sphinxbuild of the PyBigDFT source directory into Makefile • Run the command make html • The documentation of the package can be explored starting from the file build/html/index.html. 1.2 Automodule generation The directive to be used is mainly the automodule one, see this page: 3 PyBigDFT Documentation, Release 0.1 4 Chapter 1. How to write documentation in this package CHAPTER 2 Module Members Input file representation and usage from Python 2.1 BigDFT.Inputfiles module Handling of the input options This module contain the useful quantities to deal with the preparation and the usage of inputfiles for BigDFT code. The main object is the Inputfile class, which inherits from a python dictionary. Such inheritance is made possible by the internal representation of the BigDFT inputfile, which employs the YAML syntax. This means that there is a one-to-one correspondence between a python dictionary and a BigDFT inputfile. class BigDFT.Inputfiles.Inputfile(*args, **kwargs) Bases: dict The BigDFT inputfile. Principal object needed to run a BigDFT calculation. Might be initialized either from a dictionary, a Logfile instance or a (yaml-compliant) filename path Note: Each of the actions of the module InputActions, which is defined on a generic dictionary, also corresponds to a method of of the Inputfile class, and it is applied to the class instance. Therefore also the first argument of the corresponding action is implicitly the class instance. For the remove() method, the action has to be invoked should come from the InputActions module. Example >>> import InputActions asA , Inputfiles asI >>> inp=I.Inputfile() >>> inp.set_hgrids(0.3) # equivalent to A.set_hgrids(inp,0.3) (continues on next page) 5 PyBigDFT Documentation, Release 0.1 (continued from previous page) >>> inp {'dft': {'hgrids': 0.3}} >>> inp.optimize_geometry() # equivalent to A.optimize_geometry(inp) >>> inp {'dft': {'hgrids': 0.3},'geopt': {'method': 'FIRE','ncount_cluster_x': 50} } >>> inp.remove(A.optimize_geometry) # equivalent to A.remove(inp,A.optimize_ ,!geometry) >>> inp {'dft': {'hgrids': 0.3}} Todo: Consider the possiblity of initializing an Inputfile instance from a yaml file. And also from a Logfile class Input Actions on the BigDFT input file 2.2 BigDFT.InputActions module Actions to define on the Input parameters. This module defines some of the most common actions that a BigDFT user might like to perform on the input file. Such module therefore set some of the keys of the input dictionary to the values needed to perform the operations. Users might also inspire to the actions performed in order to customize the runs in a different way. All the functions of this module have as first argument inp, the dictionary of the input parameters. Many other actions are available in BigDFT code. This module only regroups the most common. Any of these functionalities might be removed from the input file by the remove() function. Note: Any of the action of this module, including the remove() function, can be also applied to an instance of the BigDFT.Inputfiles.Inputfile class, by removing the first argument (inp). This adds extra flexibility as the same method may be used to a dictionary instance or to a BigDFT input files. See the example Example. Note: Each of the actions here must have default value for the arguments (except the input dictionary inp). This is needed for a good behaviour of the function remove. remove(inp, action) Remove action from the input dictionary. set_xc(inp[, xc]) Set the exchange and correlation approximation set_hgrid(inp[, hgrids]) Set the wavelet grid spacing. set_rmult(inp[, rmult, coarse, fine]) Set the wavelet grid extension by modifying the multi- plicative radii. set_atomic_positions(inp[, posinp]) Insert the atomic positions as a part of the input dictio- nary set_mesh_sizes(inp[, ngrids]) Constrain the number of grid points in each direction. optimize_geometry(inp[, method, nsteps]) Optimize the geometry of the system spin_polarize(inp[, mpol]) Add a collinear spin polarization to the system. charge(inp[, charge]) Charge the system charge_and_polarize(inp) Charge the system by removing one electron. Continued on next page 6 Chapter 2. Module Members PyBigDFT Documentation, Release 0.1 Table 1 – continued from previous page set_symmetry(inp[, yes]) Set the symmetry detection for the charge density and the ionic forces and stressdef set_symmetry(inp,yes=True): apply_electric_field(inp[, elecfield]) Apply an external electric field on the system set_random_inputguess(inp) Input orbitals are initialized as random coefficients write_orbitals_on_disk(inp[, format]) Set the code to write the orbitals on disk in the provided format read_orbitals_from_disk(inp) Read the orbitals from data directory, if available write_density_on_disk(inp) Write the charge density on the disk after the last SCF convergence calculate_dipole(inp) Extract the dipole momenet from the total charge den- sity. use_gpu_acceleration(inp) Employ gpu acceleration when available, for convolu- tions and Fock operator change_data_directory(inp[, name]) Modify the name of the data- directory. connect_run_data(inp[, log]) Associate the data of the run of a given logfile to the input by retrieving the data directory name of the logfile. add_empty_SCF_orbitals(inp[, norbs]) Insert norbs empty orbitals in the SCF procedure extract_virtual_states(inp, nvirt[, davidson]) Extract a given number of empty states after the scf cy- cle. set_electronic_temperature(inp[, kT, T]) Define the electronic temperature, in AU (kT) or K (T) calculate_tddft_coupling_matrix(inp[, Perform a casida TDDFT coupling matrix extraction. tda, . ]) BigDFT.InputActions.add_empty_SCF_orbitals(inp, norbs=10) Insert norbs empty orbitals in the SCF procedure Parameters norbs (int) – Number of empty orbitals Warning: In linear scaling case, this is only meaningful for the direct minimization approach. BigDFT.InputActions.apply_electric_field(inp, elecfield=[0, 0, 0.001]) Apply an external electric field on the system Parameters electric (list, float) – Values of the Electric Field in the three directions. Might also be a scalar. BigDFT.InputActions.calculate_dipole(inp) Extract the dipole momenet from the total charge density. Note: This function is useful for the linear scaling setup as the cubic scaling approach always calculates the charge density multipoles. BigDFT.InputActions.calculate_tddft_coupling_matrix(inp, tda=False, rpa=True, fxc=True) Perform a casida TDDFT coupling matrix extraction. Parameters • tda (bool) – when True, Tamm-Dancoff approximation is used for the extraction of the coupling matrix 2.2. BigDFT.InputActions module 7 PyBigDFT Documentation, Release 0.1 • rpa (bool) – when False, the calculation of the RPA term (the linear response of the hartree potential) is switched off • fxc (bool) – when False, the calculation of the fxc term (the linear response of the XC operator) is switched off. Note: The arguments fxc and rpa should not be simultaneously False. Warning: Presently the LR-TDDFT casida fxc is only available for LDA functionals in ABINIT flavour. BigDFT.InputActions.change_data_directory(inp, name=”) Modify the name of the data- directory. Useful to grab the orbitals from another directory than the run name BigDFT.InputActions.charge(inp, charge=-1) Charge the system Parameters charge (int,float) – value of the charge in units of e (the electron has charge -1). Also accept floating point numbers. BigDFT.InputActions.charge_and_polarize(inp) Charge the system by removing one electron. Assume that the original system is closed shell, thus polarize. BigDFT.InputActions.connect_run_data(inp, log=None) Associate the data of the run of a given logfile to the input by retrieving the data directory name of the logfile. Parameters log (Logfile) – instance of a Logfile class BigDFT.InputActions.extract_virtual_states(inp, nvirt, davidson=False) Extract a given number of empty states after the scf cycle. Parameters davidson (bool) – If set to True activates davidson calculation, otherwise Trace Minimization of the Hamiltonian is employed. BigDFT.InputActions.optimize_geometry(inp, method=’FIRE’, nsteps=50) Optimize the geometry of the system Parameters • nsteps (int) – maximum number of atomic steps. • method (str) – Geometry optimizer. Available keys: * SDCG: A combination of Steepest
Recommended publications
  • GPAW, Gpus, and LUMI
    GPAW, GPUs, and LUMI Martti Louhivuori, CSC - IT Center for Science Jussi Enkovaara GPAW 2021: Users and Developers Meeting, 2021-06-01 Outline LUMI supercomputer Brief history of GPAW with GPUs GPUs and DFT Current status Roadmap LUMI - EuroHPC system of the North Pre-exascale system with AMD CPUs and GPUs ~ 550 Pflop/s performance Half of the resources dedicated to consortium members Programming for LUMI Finland, Belgium, Czechia, MPI between nodes / GPUs Denmark, Estonia, Iceland, HIP and OpenMP for GPUs Norway, Poland, Sweden, and how to use Python with AMD Switzerland GPUs? https://www.lumi-supercomputer.eu GPAW and GPUs: history (1/2) Early proof-of-concept implementation for NVIDIA GPUs in 2012 ground state DFT and real-time TD-DFT with finite-difference basis separate version for RPA with plane-waves Hakala et al. in "Electronic Structure Calculations on Graphics Processing Units", Wiley (2016), https://doi.org/10.1002/9781118670712 PyCUDA, cuBLAS, cuFFT, custom CUDA kernels Promising performance with factor of 4-8 speedup in best cases (CPU node vs. GPU node) GPAW and GPUs: history (2/2) Code base diverged from the main branch quite a bit proof-of-concept implementation had lots of quick and dirty hacks fixes and features were pulled from other branches and patches no proper unit tests for GPU functionality active development stopped soon after publications Before development re-started, code didn't even work anymore on modern GPUs without applying a few small patches Lesson learned: try to always get new functionality to the
    [Show full text]
  • D6.1 Report on the Deployment of the Max Demonstrators and Feedback to WP1-5
    Ref. Ares(2020)2820381 - 31/05/2020 HORIZON2020 European Centre of Excellence ​ Deliverable D6.1 Report on the deployment of the MaX Demonstrators and feedback to WP1-5 D6.1 Report on the deployment of the MaX Demonstrators and feedback to WP1-5 Pablo Ordejón, Uliana Alekseeva, Stefano Baroni, Riccardo Bertossa, Miki Bonacci, Pietro Bonfà, Claudia Cardoso, Carlo Cavazzoni, Vladimir Dikan, Stefano de Gironcoli, Andrea Ferretti, Alberto García, Luigi Genovese, Federico Grasselli, Anton Kozhevnikov, Deborah Prezzi, Davide Sangalli, Joost VandeVondele, Daniele Varsano, Daniel Wortmann Due date of deliverable: 31/05/2020 Actual submission date: 31/05/2020 Final version: 31/05/2020 Lead beneficiary: ICN2 (participant number 3) Dissemination level: PU - Public www.max-centre.eu 1 HORIZON2020 European Centre of Excellence ​ Deliverable D6.1 Report on the deployment of the MaX Demonstrators and feedback to WP1-5 Document information Project acronym: MaX Project full title: Materials Design at the Exascale Research Action Project type: European Centre of Excellence in materials modelling, simulations and design EC Grant agreement no.: 824143 Project starting / end date: 01/12/2018 (month 1) / 30/11/2021 (month 36) Website: www.max-centre.eu Deliverable No.: D6.1 Authors: P. Ordejón, U. Alekseeva, S. Baroni, R. Bertossa, M. ​ Bonacci, P. Bonfà, C. Cardoso, C. Cavazzoni, V. Dikan, S. de Gironcoli, A. Ferretti, A. García, L. Genovese, F. Grasselli, A. Kozhevnikov, D. Prezzi, D. Sangalli, J. VandeVondele, D. Varsano, D. Wortmann To be cited as: Ordejón, et al., (2020): Report on the deployment of the MaX Demonstrators and feedback to WP1-5. Deliverable D6.1 of the H2020 project MaX (final version as of 31/05/2020).
    [Show full text]
  • 5 Jul 2020 (finite Non-Periodic Vs
    ELSI | An Open Infrastructure for Electronic Structure Solvers Victor Wen-zhe Yua, Carmen Camposb, William Dawsonc, Alberto Garc´ıad, Ville Havue, Ben Hourahinef, William P. Huhna, Mathias Jacqueling, Weile Jiag,h, Murat Ke¸celii, Raul Laasnera, Yingzhou Lij, Lin Ling,h, Jianfeng Luj,k,l, Jonathan Moussam, Jose E. Romanb, Alvaro´ V´azquez-Mayagoitiai, Chao Yangg, Volker Bluma,l,∗ aDepartment of Mechanical Engineering and Materials Science, Duke University, Durham, NC 27708, USA bDepartament de Sistemes Inform`aticsi Computaci´o,Universitat Polit`ecnica de Val`encia,Val`encia,Spain cRIKEN Center for Computational Science, Kobe 650-0047, Japan dInstitut de Ci`enciade Materials de Barcelona (ICMAB-CSIC), Bellaterra E-08193, Spain eDepartment of Applied Physics, Aalto University, Aalto FI-00076, Finland fSUPA, University of Strathclyde, Glasgow G4 0NG, UK gComputational Research Division, Lawrence Berkeley National Laboratory, Berkeley, CA 94720, USA hDepartment of Mathematics, University of California, Berkeley, CA 94720, USA iComputational Science Division, Argonne National Laboratory, Argonne, IL 60439, USA jDepartment of Mathematics, Duke University, Durham, NC 27708, USA kDepartment of Physics, Duke University, Durham, NC 27708, USA lDepartment of Chemistry, Duke University, Durham, NC 27708, USA mMolecular Sciences Software Institute, Blacksburg, VA 24060, USA Abstract Routine applications of electronic structure theory to molecules and peri- odic systems need to compute the electron density from given Hamiltonian and, in case of non-orthogonal basis sets, overlap matrices. System sizes can range from few to thousands or, in some examples, millions of atoms. Different discretization schemes (basis sets) and different system geometries arXiv:1912.13403v3 [physics.comp-ph] 5 Jul 2020 (finite non-periodic vs.
    [Show full text]
  • The CECAM Electronic Structure Library and the Modular Software Development Paradigm
    The CECAM electronic structure library and the modular software development paradigm Cite as: J. Chem. Phys. 153, 024117 (2020); https://doi.org/10.1063/5.0012901 Submitted: 06 May 2020 . Accepted: 08 June 2020 . Published Online: 13 July 2020 Micael J. T. Oliveira , Nick Papior , Yann Pouillon , Volker Blum , Emilio Artacho , Damien Caliste , Fabiano Corsetti , Stefano de Gironcoli , Alin M. Elena , Alberto García , Víctor M. García-Suárez , Luigi Genovese , William P. Huhn , Georg Huhs , Sebastian Kokott , Emine Küçükbenli , Ask H. Larsen , Alfio Lazzaro , Irina V. Lebedeva , Yingzhou Li , David López- Durán , Pablo López-Tarifa , Martin Lüders , Miguel A. L. Marques , Jan Minar , Stephan Mohr , Arash A. Mostofi , Alan O’Cais , Mike C. Payne, Thomas Ruh, Daniel G. A. Smith , José M. Soler , David A. Strubbe , Nicolas Tancogne-Dejean , Dominic Tildesley, Marc Torrent , and Victor Wen-zhe Yu COLLECTIONS Paper published as part of the special topic on Electronic Structure Software Note: This article is part of the JCP Special Topic on Electronic Structure Software. This paper was selected as Featured ARTICLES YOU MAY BE INTERESTED IN Recent developments in the PySCF program package The Journal of Chemical Physics 153, 024109 (2020); https://doi.org/10.1063/5.0006074 An open-source coding paradigm for electronic structure calculations Scilight 2020, 291101 (2020); https://doi.org/10.1063/10.0001593 Siesta: Recent developments and applications The Journal of Chemical Physics 152, 204108 (2020); https://doi.org/10.1063/5.0005077 J. Chem. Phys. 153, 024117 (2020); https://doi.org/10.1063/5.0012901 153, 024117 © 2020 Author(s). The Journal ARTICLE of Chemical Physics scitation.org/journal/jcp The CECAM electronic structure library and the modular software development paradigm Cite as: J.
    [Show full text]
  • Improvements of Bigdft Code in Modern HPC Architectures
    Available on-line at www.prace-ri.eu Partnership for Advanced Computing in Europe Improvements of BigDFT code in modern HPC architectures Luigi Genovesea;b;∗, Brice Videaua, Thierry Deutscha, Huan Tranc, Stefan Goedeckerc aLaboratoire de Simulation Atomistique, SP2M/INAC/CEA, 17 Av. des Martyrs, 38054 Grenoble, France bEuropean Synchrotron Radiation Facility, 6 rue Horowitz, BP 220, 38043 Grenoble, France cInstitut f¨urPhysik, Universit¨atBasel, Klingelbergstr.82, 4056 Basel, Switzerland Abstract Electronic structure calculations (DFT codes) are certainly among the disciplines for which an increasing of the computa- tional power correspond to an advancement in the scientific results. In this report, we present the ongoing advancements of DFT code that can run on massively parallel, hybrid and heterogeneous CPU-GPU clusters. This DFT code, named BigDFT, is delivered within the GNU-GPL license either in a stand-alone version or integrated in the ABINIT software package. Hybrid BigDFT routines were initially ported with NVidia's CUDA language, and recently more functionalities have been added with new routines writeen within Kronos' OpenCL standard. The formalism of this code is based on Daubechies wavelets, which is a systematic real-space based basis set. The properties of this basis set are well suited for an extension on a GPU-accelerated environment. In addition to focusing on the performances of the MPI and OpenMP parallelisation the BigDFT code, this presentation also relies of the usage of the GPU resources in a complex code with different kinds of operations. A discussion on the interest of present and expected performances of Hybrid architectures computation in the framework of electronic structure calculations is also adressed.
    [Show full text]
  • The Empirical Pseudopotential Method
    The empirical pseudopotential method Richard Tran PID: A1070602 1 Background In 1934, Fermi [1] proposed a method to describe high lying atomic states by replacing the complex effects of the core electrons with an effective potential described by the pseudo-wavefunctions of the valence electrons. Shortly after, this pseudopotential (PSP), was realized by Hellmann [2] who implemented it to describe the energy levels of alkali atoms. Despite his initial success, further exploration of the PSP and its application in efficiently solving the Hamiltonian of periodic systems did not reach its zenith until the middle of the twenti- eth century when Herring [3] proposed the orthogonalized plane wave (OPW) method to calculate the wave functions of metals and semiconductors. Using the OPW, Phillips and Kleinman [4] showed that the orthogonality of the va- lence electrons’ wave functions relative to that of the core electrons leads to a cancellation of the attractive and repulsive potentials of the core electrons (with the repulsive potentials being approximated either analytically or empirically), allowing for a rapid convergence of the OPW calculations. Subsequently in the 60s, Marvin Cohen expanded and improved upon the pseudopotential method by using the crystalline energy levels of several semicon- ductor materials [6, 7, 8] to empirically obtain the potentials needed to compute the atomic wave functions, developing what is now known as the empirical pseu- dopotential method (EPM). Although more advanced PSPs such as the ab-initio pseudopotentials exist, the EPM still provides an incredibly accurate method for calculating optical properties and band structures, especially for metals and semiconductors, with a less computationally taxing method.
    [Show full text]
  • Kepler Gpus and NVIDIA's Life and Material Science
    LIFE AND MATERIAL SCIENCES Mark Berger; [email protected] Founded 1993 Invented GPU 1999 – Computer Graphics Visual Computing, Supercomputing, Cloud & Mobile Computing NVIDIA - Core Technologies and Brands GPU Mobile Cloud ® ® GeForce Tegra GRID Quadro® , Tesla® Accelerated Computing Multi-core plus Many-cores GPU Accelerator CPU Optimized for Many Optimized for Parallel Tasks Serial Tasks 3-10X+ Comp Thruput 7X Memory Bandwidth 5x Energy Efficiency How GPU Acceleration Works Application Code Compute-Intensive Functions Rest of Sequential 5% of Code CPU Code GPU CPU + GPUs : Two Year Heart Beat 32 Volta Stacked DRAM 16 Maxwell Unified Virtual Memory 8 Kepler Dynamic Parallelism 4 Fermi 2 FP64 DP GFLOPS GFLOPS per DP Watt 1 Tesla 0.5 CUDA 2008 2010 2012 2014 Kepler Features Make GPU Coding Easier Hyper-Q Dynamic Parallelism Speedup Legacy MPI Apps Less Back-Forth, Simpler Code FERMI 1 Work Queue CPU Fermi GPU CPU Kepler GPU KEPLER 32 Concurrent Work Queues Developer Momentum Continues to Grow 100M 430M CUDA –Capable GPUs CUDA-Capable GPUs 150K 1.6M CUDA Downloads CUDA Downloads 1 50 Supercomputer Supercomputers 60 640 University Courses University Courses 4,000 37,000 Academic Papers Academic Papers 2008 2013 Explosive Growth of GPU Accelerated Apps # of Apps Top Scientific Apps 200 61% Increase Molecular AMBER LAMMPS CHARMM NAMD Dynamics GROMACS DL_POLY 150 Quantum QMCPACK Gaussian 40% Increase Quantum Espresso NWChem Chemistry GAMESS-US VASP CAM-SE 100 Climate & COSMO NIM GEOS-5 Weather WRF Chroma GTS 50 Physics Denovo ENZO GTC MILC ANSYS Mechanical ANSYS Fluent 0 CAE MSC Nastran OpenFOAM 2010 2011 2012 SIMULIA Abaqus LS-DYNA Accelerated, In Development NVIDIA GPU Life Science Focus Molecular Dynamics: All codes are available AMBER, CHARMM, DESMOND, DL_POLY, GROMACS, LAMMPS, NAMD Great multi-GPU performance GPU codes: ACEMD, HOOMD-Blue Focus: scaling to large numbers of GPUs Quantum Chemistry: key codes ported or optimizing Active GPU acceleration projects: VASP, NWChem, Gaussian, GAMESS, ABINIT, Quantum Espresso, BigDFT, CP2K, GPAW, etc.
    [Show full text]
  • The Plane-Wave Pseudopotential Method
    The Plane-wave Pseudopotential Method i(G+k) r k(r)= ck,Ge · XG Chris J Pickard Electrons in a Solid Nearly Free Electrons Nearly Free Electrons Nearly Free Electrons Electronic Structures Methods Empirical Pseudopotentials Ab Initio Pseudopotentials Ab Initio Pseudopotentials Ab Initio Pseudopotentials Ab Initio Pseudopotentials Ultrasoft Pseudopotentials (Vanderbilt, 1990) Projector Augmented Waves Deriving the Pseudo Hamiltonian PAW vs PAW C. G. van de Walle and P. E. Bloechl 1993 (I) PAW to calculate all electron properties from PSP calculations" P. E. Bloechl 1994 (II)! The PAW electronic structure method" " The two are linked, but should not be confused References David Vanderbilt, Soft self-consistent pseudopotentials in a generalised eigenvalue formalism, PRB 1990 41 7892" Kari Laasonen et al, Car-Parinello molecular dynamics with Vanderbilt ultrasoft pseudopotentials, PRB 1993 47 10142" P.E. Bloechl, Projector augmented-wave method, PRB 1994 50 17953" G. Kresse and D. Joubert, From ultrasoft pseudopotentials to the projector augmented-wave method, PRB 1999 59 1758 On-the-fly Pseudopotentials - All quantities for PAW (I) reconstruction available" - Allows automatic consistency of the potentials with functionals" - Even fewer input files required" - The code in CASTEP is a cut down (fast) pseudopotential code" - There are internal databases" - Other generation codes (Vanderbilt’s original, OPIUM, LD1) exist It all works! Kohn-Sham Equations Being (Self) Consistent Eigenproblem in a Basis Just a Few Atoms In a Crystal Plane-waves
    [Show full text]
  • Introduction to DFT and the Plane-Wave Pseudopotential Method
    Introduction to DFT and the plane-wave pseudopotential method Keith Refson STFC Rutherford Appleton Laboratory Chilton, Didcot, OXON OX11 0QX 23 Apr 2014 Parallel Materials Modelling Packages @ EPCC 1 / 55 Introduction Synopsis Motivation Some ab initio codes Quantum-mechanical approaches Density Functional Theory Electronic Structure of Condensed Phases Total-energy calculations Introduction Basis sets Plane-waves and Pseudopotentials How to solve the equations Parallel Materials Modelling Packages @ EPCC 2 / 55 Synopsis Introduction A guided tour inside the “black box” of ab-initio simulation. Synopsis • Motivation • The rise of quantum-mechanical simulations. Some ab initio codes Wavefunction-based theory • Density-functional theory (DFT) Quantum-mechanical • approaches Quantum theory in periodic boundaries • Plane-wave and other basis sets Density Functional • Theory SCF solvers • Molecular Dynamics Electronic Structure of Condensed Phases Recommended Reading and Further Study Total-energy calculations • Basis sets Jorge Kohanoff Electronic Structure Calculations for Solids and Molecules, Plane-waves and Theory and Computational Methods, Cambridge, ISBN-13: 9780521815918 Pseudopotentials • Dominik Marx, J¨urg Hutter Ab Initio Molecular Dynamics: Basic Theory and How to solve the Advanced Methods Cambridge University Press, ISBN: 0521898633 equations • Richard M. Martin Electronic Structure: Basic Theory and Practical Methods: Basic Theory and Practical Density Functional Approaches Vol 1 Cambridge University Press, ISBN: 0521782856
    [Show full text]
  • The Plane-Wave Pseudopotential Method
    The Plane-Wave Pseudopotential Method Eckhard Pehlke, Institut für Laser- und Plasmaphysik, Universität Essen, 45117 Essen, Germany. Starting Point: Electronic structure problem from physics, chemistry, materials science, geology, biology, ... which can be solved by total-energy calculations. Topics of this (i) how to get rid of the "core electrons": talk: the pseudopotential concept (ii) the plane-wave basis-set and its advantages (iii) supercells, Bloch theorem and Brillouin zone integrals choices we have... Treatment of electron-electron interaction and decisions to make... Hartree-Fock (HF) ¿ ÒÌ Ò· Ú ´ÖµÒ´Öµ Ö Ú ¼ ¼ ½ Ò´ÖµÒ´Ö µ ¿ ¿ ¼ · Ö Ö · Ò Configuration-Interaction (CI) ¼ ¾ Ö Ö Quantum Monte-Carlo (QMC) ÑÒ Ò ¼ Ú Ê ¿ Ò´Ö µ ÖÆ Density-Functional Theory (DFT) ¼ ½ Ò´Ö µ ¾ ¿ ¼ ´ Ö · Ú ´Öµ· Ö · Ú ´Öµµ ´Öµ ´Öµ ¼ ¾ Ö Ö Æ Ò ¾ Ò´Öµ ´Öµ Ú ´Öµ Æ´Öµ Problem: Approximation to XC functional. decisions to make... Simulation of Atomic Geometries Example: chemisorption site & energy of a particular atom on a surface = ? How to simulate adsorption geometry? single molecule or cluster Use Bloch theorem. periodically repeated supercell, slab-geometry Efficient Brillouin zone integration schemes. true half-space geometry, Green-function methods decisions to make... Basis Set to Expand Wave-Functions ½ ¡Ê ´Øµ ´ Öµ Ù ´Ö Ê µ Ô Æ linear combination of Ê atomic orbitals (LCAO) ´ Öµ ´µ ´ Öµ simple, unbiased, ½ ´·µ¡Ö ´ Öµ ´ · µ plane waves (PW) Ô independent of ª atomic positions augmented plane waves . (APW) etc. etc. I. The Pseudopotential Concept Core-States and Chemical Bonding? Validity of the Frozen-Core Approximation U. von Barth, C.D.
    [Show full text]
  • Car-Parrinello Molecular Dynamics
    CPMD Car-Parrinello Molecular Dynamics An ab initio Electronic Structure and Molecular Dynamics Program The CPMD consortium WWW: http://www.cpmd.org/ Mailing list: [email protected] E-mail: [email protected] January 29, 2019 Send comments and bug reports to [email protected] This manual is for CPMD version 4.3.0 CPMD 4.3.0 January 29, 2019 Contents I Overview3 1 About this manual3 2 Citation 3 3 Important constants and conversion factors3 4 Recommendations for further reading4 5 History 5 5.1 CPMD Version 1.....................................5 5.2 CPMD Version 2.....................................5 5.2.1 Version 2.0....................................5 5.2.2 Version 2.5....................................5 5.3 CPMD Version 3.....................................5 5.3.1 Version 3.0....................................5 5.3.2 Version 3.1....................................5 5.3.3 Version 3.2....................................5 5.3.4 Version 3.3....................................6 5.3.5 Version 3.4....................................6 5.3.6 Version 3.5....................................6 5.3.7 Version 3.6....................................6 5.3.8 Version 3.7....................................6 5.3.9 Version 3.8....................................6 5.3.10 Version 3.9....................................6 5.3.11 Version 3.10....................................7 5.3.12 Version 3.11....................................7 5.3.13 Version 3.12....................................7 5.3.14 Version 3.13....................................7 5.3.15 Version 3.14....................................7 5.3.16 Version 3.15....................................8 5.3.17 Version 3.17....................................8 5.4 CPMD Version 4.....................................8 5.4.1 Version 4.0....................................8 5.4.2 Version 4.1....................................8 5.4.3 Version 4.3....................................9 6 Installation 10 7 Running CPMD 11 8 Files 12 II Reference Manual 15 9 Input File Reference 15 9.1 Basic rules........................................
    [Show full text]
  • The CECAM Electronic Structure Library and the Modular Software Development Paradigm
    The CECAM electronic structure library and the modular software development paradigm Cite as: J. Chem. Phys. 153, 024117 (2020); https://doi.org/10.1063/5.0012901 Submitted: 06 May 2020 . Accepted: 08 June 2020 . Published Online: 13 July 2020 Micael J. T. Oliveira, Nick Papior, Yann Pouillon, Volker Blum, Emilio Artacho, Damien Caliste, Fabiano Corsetti, Stefano de Gironcoli, Alin M. Elena, Alberto García, Víctor M. García-Suárez, Luigi Genovese, William P. Huhn, Georg Huhs, Sebastian Kokott, Emine Küçükbenli, Ask H. Larsen, Alfio Lazzaro, Irina V. Lebedeva, Yingzhou Li, David López-Durán, Pablo López-Tarifa, Martin Lüders, Miguel A. L. Marques, Jan Minar, Stephan Mohr, Arash A. Mostofi, Alan O’Cais, Mike C. Payne, Thomas Ruh, Daniel G. A. Smith, José M. Soler, David A. Strubbe, Nicolas Tancogne-Dejean, Dominic Tildesley, Marc Torrent, and Victor Wen-zhe Yu COLLECTIONS Paper published as part of the special topic on Electronic Structure SoftwareESS2020 This paper was selected as Featured This paper was selected as Scilight ARTICLES YOU MAY BE INTERESTED IN Recent developments in the PySCF program package The Journal of Chemical Physics 153, 024109 (2020); https://doi.org/10.1063/5.0006074 Electronic structure software The Journal of Chemical Physics 153, 070401 (2020); https://doi.org/10.1063/5.0023185 Siesta: Recent developments and applications The Journal of Chemical Physics 152, 204108 (2020); https://doi.org/10.1063/5.0005077 J. Chem. Phys. 153, 024117 (2020); https://doi.org/10.1063/5.0012901 153, 024117 © 2020 Author(s). The Journal ARTICLE of Chemical Physics scitation.org/journal/jcp The CECAM electronic structure library and the modular software development paradigm Cite as: J.
    [Show full text]