Project

General

Profile

Wiki » History » Revision 60

Revision 59 (Christoph Freysoldt, 12/20/2018 04:01 PM) → Revision 60/69 (Christoph Freysoldt, 12/20/2018 04:04 PM)

h1. Welcome to the SPHInX repository. 

 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. 

 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, graph databases, ... 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. 

 h1. Features 

 As a library, SPHInX offers features in multiple areas: 

 h2. Charged defect corrections 

 * sxdefectalign ("executable":https://sxrepo.mpie.de/attachments/download/20/sxdefectalign.bz2 "manual":https://sxrepo.mpie.de/attachments/download/21/sxdefectalign-manual.pdf) "manual" :https://sxrepo.mpie.de/attachments/download/21/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/24/sxdefectalign2d.bz2 "manual":https://sxrepo.mpie.de/attachments/download/26/sxdefectalign2d-manual.pdf) "manual" :https://sxrepo.mpie.de/attachments/download/26/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 

 h2. Geometry optimization 

 * on-the-fly parameterized BFGS quasi-Newton (ricQN) ("sxextopt executable":https://sxrepo.mpie.de/attachments/download/13/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 · dot p 

 Oliver Marquardt, Stefan Schulz, Christoph Freysoldt, Sixten Boeck, Tilmann Hickel, Eoin P. O’Reilly, Jörg Neugebauer 
 _A flexible, plane-wave based *k* · *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 

 h2. Add-ons 

 * 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/13/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), 2011, 543-554":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 

 h2. "SxAccelerate":https://gitlab.com/sphinxlib/sxaccelerate 

 * 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  

     * "Gemmantics IT-Consulting":http://www.gemmantics.com     
     Erkrath, Germany  

     * "Photonics Theory Group":http://www.tyndall.ie/content/photonics-0     
     Tyndall National Institute, 
     Cork, Ireland  

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