DFT-EFE
 
Loading...
Searching...
No Matches
Defaults.h
Go to the documentation of this file.
1/******************************************************************************
2 * Copyright (c) 2021. *
3 * The Regents of the University of Michigan and DFT-EFE developers. *
4 * *
5 * This file is part of the DFT-EFE code. *
6 * *
7 * DFT-EFE is free software: you can redistribute it and/or modify *
8 * it under the terms of the Lesser GNU General Public License as *
9 * published by the Free Software Foundation, either version 3 of *
10 * the License, or (at your option) any later version. *
11 * *
12 * DFT-EFE is distributed in the hope that it will be useful, but *
13 * WITHOUT ANY WARRANTY; without even the implied warranty *
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. *
15 * See the Lesser GNU General Public License for more details. *
16 * *
17 * You should have received a copy of the GNU Lesser General Public *
18 * License at the top level of DFT-EFE distribution. If not, see *
19 * <https://www.gnu.org/licenses/>. *
20 ******************************************************************************/
21
22/*
23 * @author Avirup Sircar
24 */
25
26#ifndef dftefeDFTDefaults_h
27#define dftefeDFTDefaults_h
28
29#include <utils/TypeConfig.h>
30#include <string>
31#include <utils/MathConstants.h>
34
35namespace dftefe
36{
37 namespace ksdft
38 {
40 {
41 public:
42 //
43 // The CG Preconditioner Type chosen for Poisson Problem
44 //
46
47 //
48 // The number of batched gemms done
49 //
51
52 //
53 // Maximum iteration for CG
54 //
55 static const size_type MAX_ITER;
56
57 //
58 // Absolute tolerance of the residual |AX-b|
59 //
60 static const double ABSOLUTE_TOL;
61
62 //
63 // Relative tolerance of the residual |AX-b|/|b|
64 //
65 static const double RELATIVE_TOL;
66
67 //
68 // Maximum residual tolerance for divergence
69 //
70 static const double DIVERGENCE_TOL;
71
72 }; // end of class PoissonProblemDefaults
73
75 {
76 public:
77 //
78 // Tolerance of ill conditioning for the
79 // orthogonalization step in CHFSi
80 //
81 static const double ILL_COND_TOL;
82
83 //
84 // Tolerance of ill conditioning for the
85 // orthogonalization step in CHFSi
86 //
87 static const std::map<size_type, size_type> CHEBY_ORDER_LOOKUP;
88
89 //
90 // Max krylov subspace
91 //
93
94 //
95 // Tolerance for lanczos extreme eigenvalues
96 //
97 static const double LANCZOS_EXTREME_EIGENVAL_TOL;
98
99 //
100 // Tolerance for lanczos beta tolerance
101 //
102 static const double LANCZOS_BETA_TOL;
103
104 }; // end of class LinearEigenSolverDefaults
105
107 {
108 public:
109 //
110 // Maximum iteration for NR
111 //
112 static const size_type MAX_ITER;
113
114 //
115 // Tolerance of force to check divergence
116 //
117 static const double FORCE_TOL;
118
119 }; // end of class NewtonRaphsonSolverDefaults
120
122 {
123 public:
124 //
125 // Boltzman constant in hartree units
126 //
127 static const double BOLTZMANN_CONST_HARTREE;
128
129 //
130 // LDA exchange constant C = -3/4 * (3/pi)^1/3
131 //
132 static const double LDA_EXCHANGE_ENERGY_CONST;
133 }; // end of class Constants
134
136 {
137 public:
138 //
139 // tolerance below which density is assumed zero
140 //
141 static const double DENSITY_ZERO_TOL;
142 }; // end of class Constants
143
145 {
146 public:
147 //
148 // The number of batched gemms done
149 //
157 };
158
160 {
161 public:
162 //
163 // AatomPartitionTolONCV
164 //
165 static const double ATOM_PARTITION_TOL_BETA;
166 };
167
169 {
170 public:
172 }; // end of class AtomTCIADataDefaults
173
174 } // end of namespace ksdft
175} // end of namespace dftefe
176#endif // dftefeDFTDefaults_h
Definition: Defaults.h:122
static const double BOLTZMANN_CONST_HARTREE
Setting all the constants.
Definition: Defaults.h:127
static const double LDA_EXCHANGE_ENERGY_CONST
Definition: Defaults.h:132
static const double ATOM_PARTITION_TOL_BETA
Setting all the ElectroHamiltonianDefaults.
Definition: Defaults.h:165
Definition: Defaults.h:145
static const size_type MAX_KINENG_WAVEFN_BATCH_SIZE
Definition: Defaults.h:151
static const size_type MAX_DENSCOMP_WAVEFN_BATCH_SIZE
Definition: Defaults.h:154
static const size_type CELL_BATCH_SIZE
Definition: Defaults.h:152
static const size_type CELL_BATCH_SIZE_GRAD_EVAL
Definition: Defaults.h:153
static const size_type MAX_WAVEFN_BATCH_SIZE
Setting all the KSDFTDefaults.
Definition: Defaults.h:150
static const size_type SCALAPACK_PARAL_PROCS
Definition: Defaults.h:155
static const size_type SCALAPACK_BLOCK_SIZE
Definition: Defaults.h:156
Definition: Defaults.h:136
static const double DENSITY_ZERO_TOL
Setting all the LibxcDefaults.
Definition: Defaults.h:141
static const double LANCZOS_EXTREME_EIGENVAL_TOL
Definition: Defaults.h:97
static const size_type LANCZOS_MAX_KRYLOV_SUBSPACE
Definition: Defaults.h:92
static const double LANCZOS_BETA_TOL
Definition: Defaults.h:102
static const double ILL_COND_TOL
Setting all the LinearEigenSolverDefaults.
Definition: Defaults.h:81
static const std::map< size_type, size_type > CHEBY_ORDER_LOOKUP
Setting all the ChebyshevPolynomialDegreeDefaults.
Definition: Defaults.h:87
static const size_type MAX_ITER
Setting all the NewtonRaphsonSolverDefaults.
Definition: Defaults.h:112
static const double FORCE_TOL
Definition: Defaults.h:117
Definition: Defaults.h:40
static const size_type CELL_BATCH_SIZE
Definition: Defaults.h:50
static const double DIVERGENCE_TOL
Definition: Defaults.h:70
static const double ABSOLUTE_TOL
Definition: Defaults.h:60
static const linearAlgebra::PreconditionerType PC_TYPE
Setting all the PoissonProblemDefaults.
Definition: Defaults.h:45
static const double RELATIVE_TOL
Definition: Defaults.h:65
static const size_type MAX_ITER
Definition: Defaults.h:55
Definition: Defaults.h:169
static const atoms::TCIADataParams TCIA_PARAMS
Definition: Defaults.h:171
PreconditionerType
Definition: LinearAlgebraTypes.h:41
dealii includes
Definition: AtomFieldDataSpherical.cpp:31
unsigned int size_type
Definition: TypeConfig.h:8
Definition: AtomTCIASpline.h:44