Project

General

Profile

Wiki » History » Revision 81

Revision 80 (Oliver Marquardt, 04/19/2021 10:53 AM) → Revision 81/86 (Oliver Marquardt, 04/19/2021 10:55 AM)

h1. Welcome to the SPHInX repository.  

 !>{width: 70px; align: bottom;}SPHInX.png! S/PHI/nX is a *C++ library* for materials simulation, mostly electronic-structure theory. It also is a program (sphinx) to perform such simulations using *density-functional theory*, and *k.p theory*. In addition, the package offers dozens of specialized programs (add-ons) for smaller tasks related to setup, analysis, post-processing, and other types of simulations. 

 !<{width: 70px;}sxaccelerate.jpg! In 2009, the base classes of SPHInX relating to *fundamental programming concepts* (memory handling, string handling, math, io, ...)    have been separated from the physics part, and evolved into the "SxAccelerate":https://gitlab.com/sphinxlib/sxaccelerate library. This powerful library is now used for system administration software, "computer games":https://www.rockitlaunched.com/, and more ... There is more about the [[History|history of SPHInX]]. 

 SPHInX is natively supported by " *pyiron* ":http://pyiron.org/, an Integrated Development Environment for Computational Materials Science. !{height: 40px; }pyiron-logo.png! 

 h1. One-click install 

 The Sphinx binaries are available for a number of Linux distributions via the " *Open Build Service* ":https://software.opensuse.org//download.html?project=home%3Afreysoldt&package=sphinxdft . 
 If you miss your distribution of choice, please contact freysoldt@mpie.de. 
 For permanent usage, we recommend compiling the Sphinx source code individually on the respective architecture for better performance. 

 h1. Features 

 As a library, SPHInX offers features in multiple areas: 

 h2. Charged defect corrections !>{width: 300px; }GaAs-vacGa-3-formEnergy.png! 

 * sxdefectalign ("executable":https://sxrepo.mpie.de/attachments/download/20/sxdefectalign.bz2 "manual":https://sxrepo.mpie.de/attachments/download/36/sxdefectalign-manual.pdf) for point defects in *bulk*, see "PRL *102*, 016402 (2009).":https://doi.org/10.1103/PhysRevLett.102.016402  
 * sxdefectalign2d ("executable":https://sxrepo.mpie.de/attachments/download/57/sxdefectalign2d.bz2 "manual":https://sxrepo.mpie.de/attachments/download/54/sxdefectalign2d-manual.pdf) for point defects at *surfaces, interfaces*, and *2D materials*, see "Phys. Rev. B *97*, 205425 (2018).":https://doi.org/10.1103/PhysRevB.97.205425 

 In case the download links do not work: all standalone add-ons and their manuals are provided for download "here.":https://sxrepo.mpie.de/projects/sphinx-add-ons/files 

 h2. Geometry optimization 

 * on-the-fly parameterized BFGS quasi-Newton (ricQN) ("sxextopt executable":https://sxrepo.mpie.de/attachments/download/53/sxextopt.bz2 "manual":https://sxrepo.mpie.de/attachments/download/12/sxextopt-manual.pdf), see "Comp. Mat. Sci. *133*, 71 (2017).":https://dx.doi.org/10.1016/j.commatsci.2017.03.001 
 * standard BFGS quasi-Newton 

 h2.    k&middot;p 

 Oliver Marquardt, Stefan Schulz, Christoph Freysoldt, Sixten Boeck, Tilmann Hickel, Eoin P. O’Reilly, Jörg Neugebauer 
 _A flexible, plane-wave based *k&middot;p* multiband model_ "Optical and Quantum Electronics *44*, 183 (2012).":https://doi.org/10.1007/s11082-011-9506-3 

 * plane-wave basis set (i.e., periodic-boundary conditions) 
 * flexible N-band model Hamiltonians configurable via input file 
 * fully flexible system geometry via material maps 
 * linear and non-linear interpolation of material parameters 
 * very efficient preconditioner for minimizer 
 * strain calculation 

 See here for the [[kpTutorial| *k&middot;p* tutorial]]. 

 h2. Add-ons !>{width: 300px; }quamolResidue.jpg! 

 * powerful atomic-structure handling for generating and manipulating atomic geometries (rotating, non-trivial multiplying, diffs, patching) 
 * generate slabs, dislocations, random structure 
 * Freysoldt-van-de-Walle-Neugebauer charged defect correction scheme (sxdefectalign) in 3D and 2D 
 * phonons from forces 
 * electronic-structure post-processing: partial densities (also Tersoff-Hamann STM), total & projected DOS, dipole oscillator strengthes, ELNES, MIES 
 * optimized atomic orbitals (quamols), see "Phys Rev B *84*, 1 (2011).":https://dx.doi.org/10.1103/PhysRevB.84.085101 
 * external structure optimizer ("sxextopt executable":https://sxrepo.mpie.de/attachments/download/53/sxextopt.bz2 "manual":https://sxrepo.mpie.de/attachments/download/12/sxextopt-manual.pdf) 
 * interface to the York GW space-time code 

 h2. DFT 

 _The object-oriented DFT program library S/PHI/nX_ 
 S. Boeck, C. Freysoldt, A. Dick, L. Ismer, J. Neugebauer "Comp. Phys. Comm. *182*, 543-554 (2011).":http://www.sciencedirect.com/science/article/pii/S0010465510003619 

 * plane-wave basis sets 
 * norm-conserving pseudopotentials or 
 * PAW formalism (reads Bloechl's cppaw, VASP, abinit PAW setups) 
 * LDA, GGA-PBE functionals (PBE0 and HSE hybrids as an experimental feature) 
 * very robust and fast minimizers 
 * atomic spin constraints 
 * DFT+U for molecular orbitals 
 * generalized dipole correction for charged slabs "Phys. Rev. B *102*, 045403 (2020).":https://dx.doi.org/10.1103/PhysRevB.102.045403 

 h2. "SxAccelerate":https://gitlab.com/sphinxlib/sxaccelerate 
 !<{width: 70px;}sxaccelerate.jpg!  

 * base libraries for "C++ simple & powerful" 
 * easy to learn thanks to limiting complexity to the 95% daily-use case 
 * templates for the REALLY useful containers: contiguous arrays, doubly-linked lists, stacks, (math) vectors 
 * simple & powerful string class 
 * powerful io format 
 * timers made simple: define locally, but get numbers in the global output 
 * math support via linking to FFT & linear algebra libraries, but much simplified interface 
 * simple macro language for MPI-based loop parallelization 

 h1. About Us 

 [[et al|List of Authors]] 

 h2. Contributing Partners 

     * Defect Chemistry and Spectroscopy group     
     "Computational Materials Design Dept.":http://www.mpie.de/2702079/computational_materials_design 
     Max-Planck-Institut für Eisenforschung 
     Düsseldorf, Germany  

     * "DACS Labs":http://www.dacslabs.com     
     Erkrath, Germany  

     * "Oliver Marquardt":https://www.wias-berlin.de/~marquardt/ 
     Weierstra&szlig;-Institut 
     Berlin, Germany 

     * "Max Planck Computing and Data Facility (MPCDF)":https://www.mpcdf.mpg.de/ 
     Garching, Germany