File tree Expand file tree Collapse file tree 20 files changed +265
-4
lines changed
102_PW_DA_davidson_GPU_float Expand file tree Collapse file tree 20 files changed +265
-4
lines changed Original file line number Diff line number Diff line change @@ -24,17 +24,23 @@ namespace ModuleESolver
2424ESolver_FP::ESolver_FP ()
2525{
2626 std::string fft_device = PARAM.inp .device ;
27-
27+ std::string fft_precsion;
28+
2829 // LCAO basis doesn't support GPU acceleration on FFT currently
2930 if (PARAM.inp .basis_type == " lcao" )
3031 {
3132 fft_device = " cpu" ;
3233 }
33-
34- pw_rho = new ModulePW::PW_Basis_Big (fft_device, PARAM.inp .precision );
34+ if (PARAM.inp .precision == " single" || PARAM.inp .precision == " mixing" )
35+ {
36+ fft_precsion = " mixing" ;
37+ }else {
38+ fft_precsion = " double" ;
39+ }
40+ pw_rho = new ModulePW::PW_Basis_Big (fft_device, fft_precsion);
3541 if (PARAM.globalv .double_grid )
3642 {
37- pw_rhod = new ModulePW::PW_Basis_Big (fft_device, PARAM. inp . precision );
43+ pw_rhod = new ModulePW::PW_Basis_Big (fft_device, fft_precsion );
3844 }
3945 else
4046 {
Original file line number Diff line number Diff line change 1+ INPUT_PARAMETERS
2+ #Parameters (General)
3+ suffix autotest
4+ pseudo_dir ../../PP_ORB
5+
6+ gamma_only 0
7+ calculation scf
8+ symmetry 1
9+ relax_nmax 1
10+ out_level ie
11+ smearing_method gaussian
12+ smearing_sigma 0.02
13+
14+ #Parameters (3.PW)
15+ ecutwfc 40
16+ scf_thr 1e-7
17+ scf_nmax 100
18+ bndpar 2
19+
20+ #Parameters (LCAO)
21+ basis_type pw
22+ ks_solver bpcg
23+ device gpu
24+ precision single
25+ chg_extrap second-order
26+ out_dm 0
27+ pw_diag_thr 0.00001
28+
29+ cal_force 1
30+ #test_force 1
31+ cal_stress 1
32+ #test_stress 1
33+
34+ mixing_type broyden
35+ mixing_beta 0.4
36+ mixing_gg0 1.5
37+
38+ pw_seed 1
Original file line number Diff line number Diff line change 1+ K_POINTS
2+ 0
3+ Gamma
4+ 2 2 2 0 0 0
Original file line number Diff line number Diff line change 1+ This test for:
2+ *GaAs-deformation
3+ *PW
4+ *kpoints 2*2*2
5+ *sg15 pseudopotential
6+ *smearing_method gauss
7+ *ks_solver bpcg
8+ *mixing_type broyden-kerker
9+ *mixing_beta 0.4
Original file line number Diff line number Diff line change 1+ ATOMIC_SPECIES
2+ As 1 As_dojo.upf upf201
3+ Ga 1 Ga_dojo.upf upf201
4+
5+ LATTICE_CONSTANT
6+ 1 // add lattice constant, 10.58 ang
7+
8+ LATTICE_VECTORS
9+ 5.33 5.33 0.0
10+ 0.0 5.33 5.33
11+ 5.33 0.0 5.33
12+ ATOMIC_POSITIONS
13+ Direct //Cartesian or Direct coordinate.
14+
15+ As
16+ 0
17+ 1
18+ 0.300000 0.3300000 0.27000000 0 0 0
19+
20+ Ga //Element Label
21+ 0
22+ 1 //number of atom
23+ 0.00000 0.00000 0.000000 0 0 0
Original file line number Diff line number Diff line change 1+ etotref -4869.7470518349809936
2+ etotperatomref -2434.8735259175
3+ totalforceref 5.207670
4+ totalstressref 37241.465646
5+ pointgroupref C_1
6+ spacegroupref C_1
7+ nksibzref 8
8+ totaltimeref 10.28
Original file line number Diff line number Diff line change 1+ threshold 1
2+ force_threshold 1
3+ stress_threshold 1
4+ fatal_threshold 1
Original file line number Diff line number Diff line change 1+ INPUT_PARAMETERS
2+ #Parameters (General)
3+ suffix autotest
4+ pseudo_dir ../../PP_ORB
5+
6+ gamma_only 0
7+ calculation scf
8+ symmetry 1
9+ relax_nmax 1
10+ out_level ie
11+ smearing_method gaussian
12+ smearing_sigma 0.02
13+
14+ #Parameters (3.PW)
15+ ecutwfc 40
16+ scf_thr 1e-7
17+ scf_nmax 100
18+
19+ #Parameters (LCAO)
20+ basis_type pw
21+ ks_solver cg
22+ device gpu
23+ precision single
24+ chg_extrap second-order
25+ out_dm 0
26+ pw_diag_thr 0.00001
27+
28+ cal_force 1
29+ #test_force 1
30+ cal_stress 1
31+ #test_stress 1
32+
33+ mixing_type broyden
34+ mixing_beta 0.4
35+ mixing_gg0 1.5
Original file line number Diff line number Diff line change 1+ K_POINTS
2+ 0
3+ Gamma
4+ 2 2 2 0 0 0
Original file line number Diff line number Diff line change 1+ This test for:
2+ *GaAs-deformation
3+ *PW
4+ *kpoints 2*2*2
5+ *sg15 pseudopotential
6+ *smearing_method gauss
7+ *ks_solver bpcg
8+ *mixing_type broyden-kerker
9+ *mixing_beta 0.4
You can’t perform that action at this time.
0 commit comments