Skip to content

Commit e0eed86

Browse files
committed
update setup_pot for GPU version
1 parent 0e70265 commit e0eed86

File tree

1 file changed

+38
-0
lines changed

1 file changed

+38
-0
lines changed

source/source_pw/module_pwdft/setup_pot.cpp

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -155,3 +155,41 @@ template void pw::setup_pot<std::complex<double>, base_device::DEVICE_CPU>(
155155
ModulePW::PW_Basis_K *pw_wfc, // pw for wfc
156156
const ModulePW::PW_Basis *pw_rhod, // pw for rhod
157157
const Input_para& inp); // input parameters
158+
159+
#if ((defined __CUDA) || (defined __ROCM))
160+
161+
template void pw::setup_pot<std::complex<float>, base_device::DEVICE_GPU>(
162+
const int istep, // ionic step
163+
UnitCell& ucell, // unitcell
164+
const K_Vectors &kv, // kpoints
165+
Structure_Factor &sf, // structure factors
166+
elecstate::ElecState *pelec, // pointer of electrons
167+
const Parallel_Grid &para_grid, // parallel of FFT grids
168+
const Charge &chr, // charge density
169+
pseudopot_cell_vl &locpp, // local pseudopotentials
170+
pseudopot_cell_vnl &ppcell, // non-local pseudopotentials
171+
VSep* vsep_cell, // U-1/2 method
172+
psi::Psi<std::complex<float>, base_device::DEVICE_GPU>* kspw_psi, // electronic wave functions
173+
hamilt::Hamilt<std::complex<float>, base_device::DEVICE_GPU>* p_hamilt, // hamiltonian
174+
ModulePW::PW_Basis_K *pw_wfc, // pw for wfc
175+
const ModulePW::PW_Basis *pw_rhod, // pw for rhod
176+
const Input_para& inp); // input parameters
177+
178+
template void pw::setup_pot<std::complex<double>, base_device::DEVICE_GPU>(
179+
const int istep, // ionic step
180+
UnitCell& ucell, // unitcell
181+
const K_Vectors &kv, // kpoints
182+
Structure_Factor &sf, // structure factors
183+
elecstate::ElecState *pelec, // pointer of electrons
184+
const Parallel_Grid &para_grid, // parallel of FFT grids
185+
const Charge &chr, // charge density
186+
pseudopot_cell_vl &locpp, // local pseudopotentials
187+
pseudopot_cell_vnl &ppcell, // non-local pseudopotentials
188+
VSep* vsep_cell, // U-1/2 method
189+
psi::Psi<std::complex<double>, base_device::DEVICE_GPU>* kspw_psi, // electronic wave functions
190+
hamilt::Hamilt<std::complex<double>, base_device::DEVICE_GPU>* p_hamilt, // hamiltonian
191+
ModulePW::PW_Basis_K *pw_wfc, // pw for wfc
192+
const ModulePW::PW_Basis *pw_rhod, // pw for rhod
193+
const Input_para& inp); // input parameters
194+
195+
#endif

0 commit comments

Comments
 (0)