|
ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
|
#include <vnl_op.h>
Public Member Functions | |
| void | operator() (const Device *ctx, const int &ntype, const int &npw, const int &npwx, const int &nhm, const int &tab_2, const int &tab_3, const int *atom_na, const int *atom_nb, const int *atom_nh, const FPTYPE &DQ, const FPTYPE &tpiba, const std::complex< FPTYPE > &NEG_IMAG_UNIT, const FPTYPE *gk, const FPTYPE *ylm, const FPTYPE *indv, const FPTYPE *nhtol, const FPTYPE *nhtolm, const FPTYPE *tab, FPTYPE *vkb1, const std::complex< FPTYPE > *sk, std::complex< FPTYPE > *vkb_in) |
| Calculate the getvnl for multi-device. | |
| void hamilt::cal_vnl_op< FPTYPE, Device >::operator() | ( | const Device * | ctx, |
| const int & | ntype, | ||
| const int & | npw, | ||
| const int & | npwx, | ||
| const int & | nhm, | ||
| const int & | tab_2, | ||
| const int & | tab_3, | ||
| const int * | atom_na, | ||
| const int * | atom_nb, | ||
| const int * | atom_nh, | ||
| const FPTYPE & | DQ, | ||
| const FPTYPE & | tpiba, | ||
| const std::complex< FPTYPE > & | NEG_IMAG_UNIT, | ||
| const FPTYPE * | gk, | ||
| const FPTYPE * | ylm, | ||
| const FPTYPE * | indv, | ||
| const FPTYPE * | nhtol, | ||
| const FPTYPE * | nhtolm, | ||
| const FPTYPE * | tab, | ||
| FPTYPE * | vkb1, | ||
| const std::complex< FPTYPE > * | sk, | ||
| std::complex< FPTYPE > * | vkb_in | ||
| ) |
Calculate the getvnl for multi-device.
Input Parameters
| ctx | - which device this function runs on |
| ntype | - number of atomic type |
| npw | - number of planewaves of current k point |
| npwx | - number of planewaves of all k points |
| tab_2 | - the second dimension of the input table |
| tab_3 | - the third dimension of the input table |
| atom_nh | - ucell.atoms[ii].ncpp.nh |
| atom_nb | - ucell.atoms[it].ncpp.nbeta |
| atom_na | - ucell.atoms[ii].na |
| DQ | - PARAM.globalv.dq |
| tpiba | - ucell.tpiba |
| NEG_IMAG_UNIT | - ModuleBase::NEG_IMAG_UNIT |
| gk | - GlobalC::wf.get_1qvec_cartesian |
| ylm | - the result of ModuleBase::YlmReal::Ylm_Real |
| indv | - pseudopot_cell_vnl::indv |
| nhtol | - pseudopot_cell_vnl::nhtol |
| nhtolm | - pseudopot_cell_vnl::nhtolm |
| tab | - pseudopot_cell_vnl::tab |
| vkb1 | - intermedia matrix with size nkb * GlobalC::wf.npwx |
| sk | - results of cal_sk |
Output Parameters
| vkb_in | - output results with size nkb * GlobalC::wf.npwx |