Programming
Index
C library
Spglib
- http://spglib.sourceforge.net/
- Spglib is a C library for finding and handling crystal symmetries.
C++ library
Boost
- http://www.boost.org/
- Boost provides free peer-reviewed portable C++ source libraries.
Accumulators
http://www.boost.org/libs/accumulators/
Framework for incremental calculation, and collection of statistical accumulators.
Geometry
http://www.boost.org/libs/geometry/
The Boost.Geometry library provides geometric algorithms, primitives and spatial index.
Graph
http://www.boost.org/libs/graph/
The BGL graph interface and graph components are generic, in the same sense as the the Standard Template Library (STL).
Math
http://www.boost.org/libs/math/
Boost.Math includes several contributions in the domain of mathematics.
MPI
http://www.boost.org/libs/mpi/
Message Passing Interface library, for use in distributed-memory parallel application programming.
Multi-Array
http://www.boost.org/libs/multi_array/
Boost.MultiArray provides a generic N-dimensional array concept definition and common implementations of that interface.
Multiprecision
http://www.boost.org/libs/multiprecision/
Extended precision arithmetic types for floating point, integer andrational arithmetic.
Odeint
http://www.boost.org/libs/numeric/odeint/
Solving ordinary differential equations.
Polygon
http://www.boost.org/libs/polygon/
Voronoi diagram construction and booleans/clipping, resizing/offsetting and more for planar polygons with integral coordinates.
Serialization
http://www.boost.org/libs/serialization/
Serialization for persistence and marshalling.
Sort
http://www.boost.org/libs/sort/
High-performance templated sort functions.
Thread
http://www.boost.org/libs/thread/
Portable C++ multi-threading. C++11, C++14.
uBLAS
http://www.boost.org/libs/numeric/ublas/
uBLAS provides matrix and vector classes as well as basic linear algebra routines.
Several dense, packed and sparse storage schemes are supported.
Units
http://www.boost.org/libs/units/
Zero-overhead dimensional analysis and unit/quantity manipulation and conversion.
Eigen
- http://eigen.tuxfamily.org/
- Eigen is a C++ template library for linear algebra: matrices, vectors, numerical solvers, and related algorithms.
Python
Scipy
- http://www.scipy.org/
- SciPy is a Python-based ecosystem of open-source software for mathematics, science, and engineering.
ASE (Atomistic Simulation Environment)
- https://wiki.fysik.dtu.dk/ase/
- ASE is a set of tools and Python modules for setting up, manipulating, running, visualizing and analyzing atomistic simulations.
GPAW
- https://wiki.fysik.dtu.dk/gpaw/
- DFT and beyond within the projector-augmented wave method
- Using real-space grid methods.
pyspglib for ASE
- http://spglib.sourceforge.net/pyspglibForASE/
- Pyspglib is the python module for spglib (C library).
jasp
- https://github.com/jkitchin/jasp
- http://kitchingroup.cheme.cmu.edu/dft-book/dft.html
- python enhancements of ase.calculators.vasp