# Release of S/PHI/nX 2.0

Download the S/PHI/nX C++ Libraries here.

Today the source code of the S/PHI/nX project has been released and can be downloaded for free. S/PHI/nX is a fully featured and highly optimized object-oriented DFT program library written in C++.

A major objective [1] of the S/PHI/nX project [2] is the development and implementation of a new physics meta-language which can simplify the development of algorithms in materials research and life science significantly.

Within this project state-of-the-art computer science techniques have been implemented or developed to provide a language to express algebraic expressions efficiently on modern computer platforms.**Algebra Expression:**

For example, the algebraic expression

\(\mathbf{M} = \alpha \mathbf{A}^T\mathbf{B} + \beta \mathbf{C}\)

can be implemented as**M = a*A.transpose() ^ B + b*C;**Quantum mechanical algorithms are crucial in the above mentioned research fields. The new meta-language supports the Dirac notation to implement such algorithms in the native language of physists, e.g.,*Quantum mechanical expressions:*

\(\varrho(\mathbf{R})=\left| \sum_{\mathbf{G}}\langle \mathbf{R}|\mathbf{G}\rangle \langle \mathbf{G} | \mu\rangle \right|^2\) can be written in S/PHI/nX as**rhoR = SUM(G, (R|G) * (G|mu)).absSqr();**The S/PHI/nX language is completed by elements to express equations of motions efficiently which is required for implementing structural algorithms such as molecular dynamics.*Equations of Motion:*

\(

\tau_{i_s,i_a}^{(i+1)} = (1 + \lambda_{i_s})\tau_{i_s,i_a}^{(i)}

- \lambda_{i_s}\tau_{i_s,i_a}^{(i-1)}

- \mu_{i_s}F(\tau_{i_s,i_a}^{(i)})

\) becomes in S/PHI/nX**tau = (1+lamda)*tau - lamda*tauOld - mu*F;**

# Applications

Although S/PHI/nX has been made public only today it has been already successfully applied to a wide range of scientific problems, for example,

- investigating thermal properties of III-V semiconductors [1],
- computing bio-inspired systems such as polyanaline alpha [3, 4, 5, 6] and π-helix [7],
- describing thermodynamic properties of metallic systems, e.g., Al [8] and Fe [9] up to the melting points,
- computing electro-optical properties of quantum dots [10, 11, 12], quantum wells [13, 14, 15], and nanowire heterostructures [36],
- calculations on III-V nanostructures [37, 38, 39, 40, 41, 42, 43, 44],
- investigating material properties of semiconductors, e.g., dislocations in wurzite GaN [16], apllication of maximally-localized Wannier functions to III-V semiconductors [17] or to semiconductor allays [18], description of nitrogen solubility at GaAs and InAs (001) surfaces [19,20], compute finite size corrections for charged defect supercell calculations [21], investigate ferromagnetic systems such as GaMnAs [22],
- addressing the band gap problem of DFT using EXX [23, 24, 25, 26, 27, 28, 29, 30, 31],
- introducing an efficient all-band conjugate gradient method for metallic system [32] and a plane-wave implementation of the real space k.p formalism and continuum elasticity theory [33],
- investigating the role of anharmonic effects on the elasticity of ice [34], and
- performing atomic-scale spin-polarized scanning microscopy simulations of nonmagnetic metallic surfaces [35].

# SxAccelerate

In the S/PHI/nX project an intuitive algebra/physics programming interface could be combined with high runtime performance. Therefore, the compiler has to “understand” the algebraic or even quantum mechanical context in order to generate machine code which is (at least) as efficient as manually optimized code. This is been accomplished by various techniques such as

- fully automatic BLAS/LAPACK function mapping,
- algebra type mapping,
- fully automatic memory management, or
- efficient exploitation of level caches and arithmetic pipelines.

These techniques have been made publicly available as a separate project decoupled from the physics libraries of S/PHI/nX. This highly optimized cross-platform general purpose library as called SxAccelerate.

Key features of SxAccelerate are

**Intuitive Programming Interface**

No deep C++ knowledge is necessary to implement algorithms with SxAccelerate.**Fast**

SxAccelerate has been constantly optimized to meet the high-performance demands of the S/PHI/nX density functional theory program package.**Automatic Memory Management**

All SxAccelerate data types provide a fully automatic memory allocation / deallocation mechanism without the need of a garbage collector. The developer never has to care about freeing memory blocks.**Complete**

SxAccelerate covers a broad spectrum of utilities (algebra, numerics, file I/O, parallelism, containers, strings, etc.).**Easy to incorporate**

SxAccelerate can easily be incorporated into Eclipse, MSVC, and other IDEs. It works well together with QT and other widget toolkits.**Open Source**

SxAccelerate is available as open source package.

As S/PHI/nX’s SxAccelerate is highly modularized and designed as a set of C++ libraries it is straightforward to benefit from it in other projects, one of them being the Gemmantics Hive Cluster and PC administration environment. Here, in particular, the cross-platform high-performance libraries of SxAccelerate have been utilized to create a scalable management framework.

In the upcoming blogs I will discuss various aspects of SxAccelerate in detail – please follow me on Twitter.

# Bibliography

- Sixten Boeck, Development and Application of the S/PHI/nX Library, Südwestdeutscher Verlag für Hochschulzeitschriften, 2009, ISBN 978-3-8381-1276-3
- S. Boeck, C. Freysoldt, A. Dick, L. Ismer, J. Neugebauer, The object-oriented DFT program library S/PHI/nX, Comp. Phys. Comm. (182), 2011, 543
- L. Ismer, Protonentransport in Wasserstoffbrückenbindungen, Master’s thesis, Technische Universität Berlin (2002)
- L. Ismer, J. Ireta, S. Boeck, J. Neugebauer, “Phonon spectra and thermodynamic properties of the in polyalanine alpha helix: A density-functional-theory-based harmonic vibrational analysis”, Phys. Rev. E 71, 031 911–1 (2005)
- L. Ismer, J. Ireta, J. Neugebauer, “First principles free energy analysis of helix stability: The origin of the low pi-helices”, J. Phys. Chem. B 112, 4109 (2008)
- L. Ismer, First principles based thermodynamic stability analysis of the secondary structure of proteins, Ph.D. thesis, University of Paderborn (2009)
- M. Petrov, L. Lymperakis, M. Friak, J. Neugebauer, “Ab-initio based conformational study of the crystalline alpha-chitin”, to be submitted.
- B. Grabowski, L. Ismer, T. Hickel, J. Neugebauer, “Ab initio up to the melting point: Anharmonicity and vacancies in aluminum”, Phys. Rev. 79, 134 106 (2009)
- Blazej Grabowski, Ab-initio based free-energy surfaces: Method development and application to alu- minum an iron, Master’s thesis, University of Paderborn (2005)
- O. Marquardt, D. Mourad, S. Schulz, T. Hickel, G. Czycholl and J. Neugebauer, “A comparison of atomistic and continuum theoretical approaches to determine electronic properties of GaN/AlN quantum dots”, Phys. Rev. B 78, 235 302 (2008)
- T. Hammerschmidt, P. Kratzer, M. Scheffler, “Analytic many-body potential for InAs/GaAs surfaces and nanostructures: Formation energy of InAs quantum dots”, Phys. Rev. B 77, 235 303 (2008)
- T. D. Young, O. Marquardt, phys. stat. sol. (c) 6, 557 (2009)
- M. Albrecht, L. Lymperakis, J. Neugebauer, J.E. Northrup, L. Kirste, M. Leoux, I. Grzegory, S. Porowski, “Chemically ordered AlxGa1-xN alloys: Spontaneous formation of natural quantum wells”, Phys. Rev. B 71, 035 314 (2005)
- O. Marquardt, T. Hickel, J. Neugebauer, C.G. van de Walle, “Influence of polarization effects due to thickness fluctuations in nonpolar InGaN/GaN quantum wells”, to be published
- O. Marquardt, T. Hickel, J. Neugebauer, “Polarization-induced charge carrier separation in polar and nonpolar grown GaN quantum dots”, J. Appl. Phys. 106, 083707 (2009)
- J. Kioseoglou, E. Kalesaki, Ph. Komninou, Th. Karakostas and L. Lymperakis, J. Neugebauer, “Elec- tronic structure of 1/6<2023> partial dislocations in wurtzite GaN.” to be submitted
- H. Abu-Farsakh, Maximally-localized Wannier functions in III-V Semiconductors, Master’s thesis, Yarmouk University, Irbid, Jordan (2003)
- T. Hammerschmidt, M. A. Migliorato, D. Powell, A. G. Cullis and G. P. Srivastava, “Composition and Strain Dependence of the Piezoelectric Coefficients in Semiconductor Alloys”, in MRS Proceedings (2007)
- H. Abu-Farsakh, A. Qteish, “Ionicity scale based on the centers of maximally localized Wannier func- tions”, Phys. Rev. B 75, 085 201 (2007)
- H. Abu-Farsakh, J. Neugebauer, “Enhancing nitrogen solubility in GaAs and InAs by surface kinetics: An ab initio study”, Phys. Rev. B 79, 155 311 (2009)
- C. Freysoldt, J. Neugebauer, C. van de Walle, “Fully ab initio finite-size corrections for charged defect supercell calculations”, Phys. Rev. Lett. 102, 035 702 (2009)
- S. Frank, Einfluss der Materialeigenschaften auf den Ferromagnetismus von GaMnAs, Master’s thesis, University Ulm (2006)
- P. Rinke, M. Winkelnkemper, A. Qteish, D. Bimber, J. Neugebauer, M. Scheffler, “Consistent set of band parameters for the group-III nitrides AlN, GaN, and InN”, Phys. Rev. B 77, 075 202 (2008)
- P. Rinke, A. Qteish, J. Neugebauer, C. Freysoldt, M. Scheffer, “Structural phase transformation of GaN under high-pressure: an exact exchange study”, New J. Phys. 7, 2126 (2005)
- P. Rinke, M. Scheffler, A. Qteish, M. Winkelkemper, D. Bimberg, “Band gap and band parameters of InN and GaN from quasiparticle energy calculations based on exact-exchange density-functional theory”, Appl. Phys. Lett. 89, 161 919 (2006)
- “Combining GW calculations with exact-exchange density-functional theory: an analysis of valence- band photoemission for compound seminconductors”, New J. Phys. 7, 126 (2005)
- A. Qteish, A.I. Al-Sharif, M. Fuchs, M. Scheffler, S. Boeck, J. Neugebauer, “Exact-exchange calcula- tions of the electronic structure of AlN, GaN and InN”, Comp. Phys. Comm. 169, 28 (2005)
- Abdallah Qteish, Patrick Rinke, Matthias Scheffler, Joerg Neugebauer, “Exact-exchange based quasi- particle energy calculations for the band gap, effective masses and deformation potentials of ScN”, Phys. Rev. B 74, 245 208–1 (2006)
- A. Qteish, A.I. Al-Sharif, M. Fuchs, M. Scheffler, S. Boeck, J. Neugebauer, “Role of semicore states in the electronic structure of group-III nitrides: An exact exchange study”, Phys. Rev. B 72, 155 317 (2005)
- A.I. Al-Sharif, “Structural phase transformation of GaN under high-pressure: an exact exchange study”, Sol. Stat. Comm. 135, 515 (2005)
- M. Wahn, J. Neugebauer, “Generalized Wannier functions: An efficient way to construct ab-initio tight-binding parameters for group-III nitrides”, phys. stat. solidi (b) 243, 1583 (2006)
- C. Freysoldt, S. Boeck, J. Neugebauer, “Direct minimization technique for metals in density-functional theory”, Phys. Rev. B
- O. Marquardt, S. Boeck, C. Freysoldt, T. Hickel, J. Neugebauer, “Implementation of the real-space k.p formalism and continuum elasticity theory in the plane-wave software library S/PHI/nX”, Comp. Phys. Comm., 181, 765 (2010)
- M. Todorova, L. Ismer, J. Neugebauer, “Role of anharmonic contributions for the elasticity of ice”, in prep.
- A. Dick, “An-initio STM and STS Simulations on Magnetic and Nonmagnetic Metallic Surfaces”, Ph.D.thesis, University of Paderborn (2008)
- O. Marquardt, C. Hauswald, M. Wölz, L. Geelhaar, O. Brandt, “Luminous Efficiency of Axial In
_{x}Ga_{1-x}N/GaN Nanowire Heterostructures: Interplay of Polarization and Surface Potentials, Nano Lett. 13, 3298 (2013) - L. Lymperakis, H. Abu-Farsakh, O. Marquardt, T. Hickel, J. Neugebauer, “Theoretical modelling of growth processes, extended defects, and electronic properties of III-nidrides semiconductor nanostructures”, phys. stat. sol. (b) 248, 1837, 2011
- O. Marquardt, T. Hickel, J. Neugebauer, K. M. Gambaryan, V. M. Aroutiounian, “Growth process, characterization, and modelling of electronic properties of coupled InAsSbP nanostructures”, J. Appl. Phys. 110, 043708 (2011)
- S. Schulz, M. A. Caro, E. P. O’Reilly, O. Marquardt, “Symmetry-adapted calculations of strain and polarization fields in (111)-oriented zinc-blende quantum-dots”, Phys. Rev. B 84, 125312 (2011)
- S. Schulz, M. A. Caro, E. P. O’Reilly, O. Marquardt, “Piezoelectric properties of zinc blende quantum dots”, phys. stat. sol. (b), 249, 521 (2012)
- O. Marquardt, S. Schulz, C. Freysoldt, S. Boeck, T. Hickel, E. P. O’Reilly, J. Neugebauer, “A flexible, plane-wave based multiband k . p model”, Optical and Quantum Electronics, 44, 183 (2012)
- K. M. Gambaryan, V. M. Aroutioumian, V. G. Harutyunyan, O. Marquardt, P. G. Soukiassian, “Room temperature magnetoelectric properties of type-II InAsSbP quantum dots and nanorings”, Appl. Phys. Lett. 100, 033104 (2012)
- K. Schuh, S. Barthel, O. Marquardt, T. Hickel, J. Neugebauer, G. Czycholl, F. Jahnke, “Strong dipole coupling in nanopolar nidtride quantum dots due to Coulomb effects”, Appl. Phys. Lett. 100, 092103 (2012)
- L. O. Mereni, O. Marquardt, G Juska, V. Dimastrodonato, E. P. O’Relly, E. Pelucchi, “Fine-structure splitting in large-pitch pyramidal quantum dots”, Phys. Rev. B 85, 155454 (2012)

Tags: BLAS/LAPACK, Density Functional Theory, Eclipse, IDE, Memory Management, MSVC, QT, SxAccelerate