ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
Loading...
Searching...
No Matches
for_testing_input_conv.h
Go to the documentation of this file.
1#ifndef INPUT_CONV_TEST_H
2#define INPUT_CONV_TEST_H
3#define private public
21#include "source_md/md_func.h"
26#ifdef __PEXSI
28#endif
29#undef private
41
42// Parameters of electric field for RT-TDDFT
43
45
46std::vector<int> elecstate::H_TDDFT_pw::ttype;
47
52
55
56// Gaussian
58std::vector<double> elecstate::H_TDDFT_pw::gauss_omega; // time(a.u.)^-1
59std::vector<double> elecstate::H_TDDFT_pw::gauss_phase;
60std::vector<double> elecstate::H_TDDFT_pw::gauss_sigma; // time(a.u.)
61std::vector<double> elecstate::H_TDDFT_pw::gauss_t0;
62std::vector<double> elecstate::H_TDDFT_pw::gauss_amp; // Ry/bohr
64
65// Trapezoid
67std::vector<double> elecstate::H_TDDFT_pw::trape_omega; // time(a.u.)^-1
68std::vector<double> elecstate::H_TDDFT_pw::trape_phase;
69std::vector<double> elecstate::H_TDDFT_pw::trape_t1;
70std::vector<double> elecstate::H_TDDFT_pw::trape_t2;
71std::vector<double> elecstate::H_TDDFT_pw::trape_t3;
72std::vector<double> elecstate::H_TDDFT_pw::trape_amp; // Ry/bohr
74
75// Trigonometric
77std::vector<double> elecstate::H_TDDFT_pw::trigo_omega1; // time(a.u.)^-1
78std::vector<double> elecstate::H_TDDFT_pw::trigo_omega2; // time(a.u.)^-1
79std::vector<double> elecstate::H_TDDFT_pw::trigo_phase1;
80std::vector<double> elecstate::H_TDDFT_pw::trigo_phase2;
81std::vector<double> elecstate::H_TDDFT_pw::trigo_amp; // Ry/bohr
83
84// Heaviside
86std::vector<double> elecstate::H_TDDFT_pw::heavi_t0;
87std::vector<double> elecstate::H_TDDFT_pw::heavi_amp; // Ry/bohr
88
89double BFGS_Basic::relax_bfgs_w1 = -1.0;
90double BFGS_Basic::relax_bfgs_w2 = -1.0;
95double Ions_Move_CG::RELAX_CG_THR = -1.0;
99
101{
102}
104{
105}
107{
108}
110{
111}
112Soc::~Soc()
113{
114}
116{
117}
119{
120}
122{
123}
125{
126}
128{
129}
130ModuleDFTU::DFTU::DFTU()
131{
132}
133ModuleDFTU::DFTU::~DFTU()
134{
135}
137{
138}
140{
141}
143{
144 itia2iat.create(1, 1);
145}
147#ifdef __LCAO
152#endif
155void Occupy::decision(const std::string& name,
156 const std::string& smearing_method,
157 const double& smearing_sigma) {
158 return;
159}
160// void UnitCell::setup(const std::string&,const int&,const int&,const
161// bool&,const std::string&){return;}
162void UnitCell::setup(const std::string& latname_in,
163 const int& ntype_in,
164 const int& lmaxmax_in,
165 const bool& init_vel_in,
166 const std::string& fixed_axes_in) {
167 this->latName = latname_in;
168 this->ntype = ntype_in;
169 this->lmaxmax = lmaxmax_in;
170 this->init_vel = init_vel_in;
171 // pengfei Li add 2018-11-11
172 if (fixed_axes_in == "None") {
173 this->lc[0] = 1;
174 this->lc[1] = 1;
175 this->lc[2] = 1;
176 } else if (fixed_axes_in == "volume") {
177 this->lc[0] = 1;
178 this->lc[1] = 1;
179 this->lc[2] = 1;
180 // Note: fixed_axes="volume" is now supported with relax_new=false
181 // (see commit cdc3457f5a8546cda869655c3faabd8b29687aff)
182 } else if (fixed_axes_in == "shape") {
183 // Note: fixed_axes="shape" is now supported with relax_new=false
184 // (see commit cdc3457f5a8546cda869655c3faabd8b29687aff)
185 this->lc[0] = 1;
186 this->lc[1] = 1;
187 this->lc[2] = 1;
188 } else if (fixed_axes_in == "a") {
189 this->lc[0] = 0;
190 this->lc[1] = 1;
191 this->lc[2] = 1;
192 } else if (fixed_axes_in == "b") {
193 this->lc[0] = 1;
194 this->lc[1] = 0;
195 this->lc[2] = 1;
196 } else if (fixed_axes_in == "c") {
197 this->lc[0] = 1;
198 this->lc[1] = 1;
199 this->lc[2] = 0;
200 } else if (fixed_axes_in == "ab") {
201 this->lc[0] = 0;
202 this->lc[1] = 0;
203 this->lc[2] = 1;
204 } else if (fixed_axes_in == "ac") {
205 this->lc[0] = 0;
206 this->lc[1] = 1;
207 this->lc[2] = 0;
208 } else if (fixed_axes_in == "bc") {
209 this->lc[0] = 1;
210 this->lc[1] = 0;
211 this->lc[2] = 0;
212 } else if (fixed_axes_in == "abc") {
213 this->lc[0] = 0;
214 this->lc[1] = 0;
215 this->lc[2] = 0;
216 } else {
218 "Input",
219 "fixed_axes should be None,volume,shape,a,b,c,ab,ac,bc or abc!");
220 }
221 return;
222}
223// void Structure_Factor::set(const int&)
224// {
225// return;
226// }
227
228namespace MD_func {
229void current_md_info(const int& my_rank,
230 const std::string& file_dir,
231 int& md_step,
232 double& temperature) {
233 return;
234}
235} // namespace MD_func
236
237namespace GlobalC {
238ModuleDFTU::DFTU dftu;
240} // namespace GlobalC
241
242#ifdef __PEXSI
243namespace pexsi {
247// int PEXSI_Solver::pexsi_symbolic = 0;
257// double PEXSI_Solver::pexsi_spin = 2;
258double PEXSI_Solver::pexsi_temp = 0.0;
259double PEXSI_Solver::pexsi_gap = 0.0;
260double PEXSI_Solver::pexsi_delta_e = 0.0;
263double PEXSI_Solver::pexsi_mu = 0.0;
264double PEXSI_Solver::pexsi_mu_thr = 0.0;
269} // namespace pexsi
270#endif
271
272#endif
static double relax_bfgs_w1
Definition bfgs_basic.h:38
static double relax_bfgs_w2
Definition bfgs_basic.h:39
~Charge_Mixing()
Definition charge_mixing.cpp:15
Charge_Mixing()
Definition charge_mixing.cpp:9
~Fcoef()
Definition klist_test.cpp:83
InfoNonlocal()
Definition klist_test.cpp:44
~InfoNonlocal()
Definition klist_test.cpp:47
static double RELAX_CG_THR
Definition ions_move_cg.h:15
LCAO_Orbitals()
PLEASE avoid using 'ORB' as global variable.
Definition ORB_read.cpp:18
~LCAO_Orbitals()
Definition ORB_read.cpp:33
Magnetism()
Definition sltk_atom_arrange_test.cpp:27
~Magnetism()
Definition sltk_atom_arrange_test.cpp:33
void create(const int d1, const int d2)
Create integer arrays.
Definition intarray.cpp:307
static int symm_flag
Definition symmetry.h:29
static bool symm_autoclose
Definition symmetry.h:30
ORB_gaunt_table()
Definition ORB_gaunt_table.cpp:12
~ORB_gaunt_table()
Definition ORB_gaunt_table.cpp:13
static void decision(const std::string &name, const std::string &smearing_method, const double &smearing_sigma)
Definition occupy.cpp:28
Definition restart.h:11
~Soc()
Definition klist_test.cpp:80
~Structure_Factor()
Definition charge_extra_test.cpp:89
Structure_Factor()
Definition charge_extra_test.cpp:86
int lmaxmax
Definition unitcell.h:217
~UnitCell()
Definition symmetry_test_analysis.cpp:35
int *& lc
Definition unitcell.h:61
bool init_vel
Definition unitcell.h:218
UnitCell()
Definition symmetry_test_analysis.cpp:34
int & ntype
Definition unitcell.h:73
ModuleBase::IntArray & itia2iat
Definition unitcell.h:79
std::string & latName
Definition unitcell.h:55
void setup(const std::string &latname_in, const int &ntype_in, const int &lmaxmax_in, const bool &init_vel_in, const std::string &fixed_axes_in)
Definition mock_unitcell.cpp:35
static bool berry_phase_flag
Definition berryphase.h:23
static double efield_pos_max
Definition efield.h:47
static double efield_pos_dec
Definition efield.h:48
static double efield_amp
Definition efield.h:49
static int efield_dir
Definition efield.h:46
static bool block
Definition gatefield.h:29
static double block_height
Definition gatefield.h:32
static double block_up
Definition gatefield.h:31
static double block_down
Definition gatefield.h:30
static double zgate
Definition gatefield.h:27
static bool relax
Definition gatefield.h:28
static double dt
Definition H_TDDFT_pw.h:62
static std::vector< double > heavi_t0
Definition H_TDDFT_pw.h:114
static std::vector< double > gauss_t0
Definition H_TDDFT_pw.h:85
static std::vector< double > gauss_amp
Definition H_TDDFT_pw.h:86
static std::vector< double > trape_phase
Definition H_TDDFT_pw.h:94
static std::vector< int > trape_ncut
Definition H_TDDFT_pw.h:100
static int tend
Definition H_TDDFT_pw.h:61
static std::vector< double > trape_amp
Definition H_TDDFT_pw.h:98
static int stype
Definition H_TDDFT_pw.h:52
static int heavi_count
Definition H_TDDFT_pw.h:113
static std::vector< double > trape_t1
Definition H_TDDFT_pw.h:95
static double dt_int
Definition H_TDDFT_pw.h:64
static int gauss_count
Definition H_TDDFT_pw.h:81
static std::vector< double > gauss_phase
Definition H_TDDFT_pw.h:83
static int trigo_count
Definition H_TDDFT_pw.h:103
static std::vector< double > trape_t2
Definition H_TDDFT_pw.h:96
static std::vector< int > gauss_ncut
Definition H_TDDFT_pw.h:89
static std::vector< int > ttype
Definition H_TDDFT_pw.h:54
static std::vector< double > trape_t3
Definition H_TDDFT_pw.h:97
static std::vector< double > trigo_phase1
Definition H_TDDFT_pw.h:106
static std::vector< double > trape_omega
Definition H_TDDFT_pw.h:93
static std::vector< double > gauss_omega
Definition H_TDDFT_pw.h:82
static std::vector< double > trigo_phase2
Definition H_TDDFT_pw.h:107
static int trape_count
Definition H_TDDFT_pw.h:92
static std::vector< double > heavi_amp
Definition H_TDDFT_pw.h:115
static double lcut1
Definition H_TDDFT_pw.h:70
static std::vector< double > trigo_omega2
Definition H_TDDFT_pw.h:105
static double lcut2
Definition H_TDDFT_pw.h:71
static std::vector< double > trigo_amp
Definition H_TDDFT_pw.h:108
static int tstart
Definition H_TDDFT_pw.h:60
static std::vector< double > gauss_sigma
Definition H_TDDFT_pw.h:84
static std::vector< double > trigo_omega1
Definition H_TDDFT_pw.h:104
static std::vector< int > trigo_ncut
Definition H_TDDFT_pw.h:110
static double pexsi_zero_thr
If the absolute value of CCS matrix element is less than this value, it will be considered as zero.
Definition pexsi_solver.h:126
static int pexsi_npole
Number of terms in the pole expansion.
Definition pexsi_solver.h:31
static double pexsi_mu_upper
Initial guess of upper bound for mu.
Definition pexsi_solver.h:102
static double pexsi_mu_expand
If the chemical potential is not in the initial interval, the interval is expanded by muInertiaExpans...
Definition pexsi_solver.h:114
static double pexsi_mu_lower
Initial guess of lower bound for mu.
Definition pexsi_solver.h:98
static bool pexsi_inertia
Whether inertia counting is used at the very beginning.
Definition pexsi_solver.h:35
static double pexsi_temp
Temperature, in the same unit as H.
Definition pexsi_solver.h:86
static double pexsi_delta_e
An upper bound for the spectral radius of .
Definition pexsi_solver.h:94
static bool pexsi_trans
Transpose.
Definition pexsi_solver.h:71
static bool pexsi_storage
Whether to use symmetric storage space used by the Selected Inversion algorithm for symmetric matrice...
Definition pexsi_solver.h:47
static double pexsi_elec_thr
Stopping criterion of the PEXSI iteration in terms of the number of electrons compared to numElectron...
Definition pexsi_solver.h:122
static double pexsi_mu
Initial guess for mu (for the solver) (AG)
Definition pexsi_solver.h:106
static int pexsi_ordering
Ordering strategy for factorization and selected inversion.
Definition pexsi_solver.h:51
static double pexsi_gap
Spectral gap. Note This can be set to be 0 in most cases.
Definition pexsi_solver.h:90
static double pexsi_mu_guard
Safe guard criterion in terms of the chemical potential to reinvoke the inertia counting procedure.
Definition pexsi_solver.h:118
static double pexsi_mu_thr
Stopping criterion in terms of the chemical potential for the inertia counting procedure.
Definition pexsi_solver.h:110
static int pexsi_nproc
Number of processors for PARMETIS/PT-SCOTCH. Only used if the ordering == 0.
Definition pexsi_solver.h:59
static int pexsi_row_ordering
row permutation strategy for factorization and selected inversion.
Definition pexsi_solver.h:55
static bool pexsi_symm
Matrix structure.
Definition pexsi_solver.h:65
static int pexsi_nmax
Maximum number of PEXSI iterations after each inertia counting procedure.
Definition pexsi_solver.h:39
static int pexsi_nproc_pole
The point parallelizaion of PEXSI.
Definition pexsi_solver.h:82
static int pexsi_method
The pole expansion method to be used.
Definition pexsi_solver.h:77
static bool pexsi_comm
Whether to construct PSelInv communication pattern.
Definition pexsi_solver.h:43
~pseudopot_cell_vl()
Definition klist_test.cpp:71
pseudopot_cell_vl()
Definition klist_test.cpp:68
pseudopot_cell_vnl()
Definition klist_test.cpp:74
~pseudopot_cell_vnl()
Definition klist_test.cpp:77
Definition cal_epsilon_test.cpp:31
ModuleDFTU::DFTU dftu
Definition for_testing_input_conv.h:238
Restart restart
Definition restart.cpp:47
int out_stru
Definition for_testing_input_conv.h:94
double relax_bfgs_rmin
Definition for_testing_input_conv.h:92
double relax_bfgs_rmax
Definition for_testing_input_conv.h:91
double relax_bfgs_init
Definition for_testing_input_conv.h:93
std::string fixed_axes
Definition for_testing_input_conv.h:96
base functions in md
Definition for_testing_input_conv.h:228
void current_md_info(const int &my_rank, const std::string &file_dir, int &md_step, double &temperature)
determine thr current md step and temperature
Definition for_testing_input_conv.h:229
void WARNING_QUIT(const std::string &, const std::string &)
Combine the functions of WARNING and QUIT.
Definition test_delley.cpp:14
Definition dist_bcd_matrix.h:12