JDFTx  1.2.0
common.h
1 /*-------------------------------------------------------------------
2 Copyright 2011 Ravishankar Sundararaman
3 Copyright 1996-2003 Sohrab Ismail-Beigi
4 
5 This file is part of JDFTx.
6 
7 JDFTx is free software: you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation, either version 3 of the License, or
10 (at your option) any later version.
11 
12 JDFTx is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
16 
17 You should have received a copy of the GNU General Public License
18 along with JDFTx. If not, see <http://www.gnu.org/licenses/>.
19 -------------------------------------------------------------------*/
20 
21 #ifndef JDFTX_ELECTRONIC_COMMON_H
22 #define JDFTX_ELECTRONIC_COMMON_H
23 
24 #include <cstdio>
25 #include <cstdlib>
26 #include <cstring>
27 #include <cmath>
28 #include <cstdarg>
29 #include <core/scalar.h>
30 #include <core/Util.h>
31 
32 class matrix; // general purpose matrix.
33 class diagMatrix; // real diagonal matrix
34 class ColumnBundle; // stores wavefunctions
35 class QuantumNumber; // a set of quantum numbers, eg k, spin etc
36 class Control; // contains control information for the run.
37 class GridInfo; // Lattice information (vectors, reciprocal, etc.)
38 class Basis; // G vector and realspace grid indices.
39 class SpeciesInfo; // information for an ion species
40 class IonInfo; // collections of all SpeciesInfos
41 class Symmetries; // symmetry info
42 class ExactExchange; // Evaluates exact exchange (fock term)
43 class ExCorr; // Ionic dynamics information.
44 class ElecInfo; // parameters for electronic states
45 class ElecVars; // collection of electronic variables.
46 struct Energies; // collection of all energies.
47 class Everything; // A big collection of most of the above structures
48 
49 struct ElecGradient;
50 struct IonicGradient;
51 class VanDerWaals; // pair-potential van der waals corrections
52 class Vibrations;
53 
54 #endif // JDFTX_ELECTRONIC_COMMON_H
Simulation grid descriptor.
Definition: GridInfo.h:45
Definition: IonInfo.h:46
General complex matrix.
Definition: matrix.h:58
Definition: VanDerWaals.h:28
Definition: Energies.h:26
Definition: Vibrations.h:27
Real diagonal matrix.
Definition: matrix.h:31
Definition: ElecInfo.h:35
Definition: ExactExchange.h:27
Definition: ElecMinimizer.h:28
Definition: Basis.h:29
Definition: ExCorr.h:72
Miscellaneous utilities.
Definition: Everything.h:41
Definition: ElecVars.h:30
Definition: Control.h:34
Definition: ElecInfo.h:49
Definition: Symmetries.h:32
Definition: SpeciesInfo.h:33
Object to hold all the forces.
Definition: IonicMinimizer.h:31
Definition: ColumnBundle.h:30