ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
Loading...
Searching...
No Matches
Protected Types | Protected Member Functions | Protected Attributes | List of all members
TestSrcPWForceMultiDevice Class Reference
Inheritance diagram for TestSrcPWForceMultiDevice:
Collaboration diagram for TestSrcPWForceMultiDevice:

Protected Types

using delmem_complex_op = base_device::memory::delete_memory_op< std::complex< double >, base_device::DEVICE_GPU >
 
using resmem_complex_op = base_device::memory::resize_memory_op< std::complex< double >, base_device::DEVICE_GPU >
 
using syncmem_complex_h2d_op = base_device::memory::synchronize_memory_op< std::complex< double >, base_device::DEVICE_GPU, base_device::DEVICE_CPU >
 
using syncmem_complex_d2h_op = base_device::memory::synchronize_memory_op< std::complex< double >, base_device::DEVICE_CPU, base_device::DEVICE_GPU >
 
using delmem_var_op = base_device::memory::delete_memory_op< double, base_device::DEVICE_GPU >
 
using resmem_var_op = base_device::memory::resize_memory_op< double, base_device::DEVICE_GPU >
 
using syncmem_var_h2d_op = base_device::memory::synchronize_memory_op< double, base_device::DEVICE_GPU, base_device::DEVICE_CPU >
 
using syncmem_var_d2h_op = base_device::memory::synchronize_memory_op< double, base_device::DEVICE_CPU, base_device::DEVICE_GPU >
 
using delmem_int_op = base_device::memory::delete_memory_op< int, base_device::DEVICE_GPU >
 
using resmem_int_op = base_device::memory::resize_memory_op< int, base_device::DEVICE_GPU >
 
using syncmem_int_h2d_op = base_device::memory::synchronize_memory_op< int, base_device::DEVICE_GPU, base_device::DEVICE_CPU >
 

Protected Member Functions

void SetUp () override
 
void TearDown () override
 

Protected Attributes

const base_device::DEVICE_CPU * cpu_ctx = {}
 
const base_device::DEVICE_GPU * gpu_ctx = {}
 
int nkb = 36
 
int npwx = 64
 
int npwk_max = 64
 
int vkb_nc = 64
 
int nbasis = 59
 
int ik = 0
 
int ipol = 0
 
std::complex< double > NEG_IMAG_UNIT {0, -1}
 
bool multi_proj = false
 
int nbands_occ = 16
 
int wg_nc = 24
 
int ntype = 2
 
int spin = 0
 
int deeq_2 = 2
 
int deeq_3 = 18
 
int deeq_4 = 18
 
int forcenl_nc = 3
 
int nbands = 24
 
double tpiba = 6.2831853071795862
 
std::vector< std::complex< double > > vkb
 
std::vector< std::complex< double > > expected_vkb1
 
std::vector< std::complex< double > > vkb1
 
std::vector< double > gcar
 
std::vector< double > wg
 
std::vector< double > ekb
 
std::vector< double > qq_nt
 
std::vector< double > expected_force = {-4.007e-02, 7.418e-03, 1.044e-02, 4.502e-02, -3.032e-02, -3.193e-02}
 
std::vector< double > deeq
 
std::vector< std::complex< double > > becp
 
std::vector< std::complex< double > > dbecp
 
std::vector< int > atom_na {1, 1}
 
std::vector< int > atom_nh {18, 18}
 

Member Typedef Documentation

◆ delmem_complex_op

using TestSrcPWForceMultiDevice::delmem_complex_op = base_device::memory::delete_memory_op<std::complex<double>, base_device::DEVICE_GPU>
protected

◆ delmem_int_op

◆ delmem_var_op

using TestSrcPWForceMultiDevice::delmem_var_op = base_device::memory::delete_memory_op<double, base_device::DEVICE_GPU>
protected

◆ resmem_complex_op

using TestSrcPWForceMultiDevice::resmem_complex_op = base_device::memory::resize_memory_op<std::complex<double>, base_device::DEVICE_GPU>
protected

◆ resmem_int_op

◆ resmem_var_op

using TestSrcPWForceMultiDevice::resmem_var_op = base_device::memory::resize_memory_op<double, base_device::DEVICE_GPU>
protected

◆ syncmem_complex_d2h_op

using TestSrcPWForceMultiDevice::syncmem_complex_d2h_op = base_device::memory:: synchronize_memory_op<std::complex<double>, base_device::DEVICE_CPU, base_device::DEVICE_GPU>
protected

◆ syncmem_complex_h2d_op

using TestSrcPWForceMultiDevice::syncmem_complex_h2d_op = base_device::memory:: synchronize_memory_op<std::complex<double>, base_device::DEVICE_GPU, base_device::DEVICE_CPU>
protected

◆ syncmem_int_h2d_op

using TestSrcPWForceMultiDevice::syncmem_int_h2d_op = base_device::memory::synchronize_memory_op<int, base_device::DEVICE_GPU, base_device::DEVICE_CPU>
protected

◆ syncmem_var_d2h_op

using TestSrcPWForceMultiDevice::syncmem_var_d2h_op = base_device::memory::synchronize_memory_op<double, base_device::DEVICE_CPU, base_device::DEVICE_GPU>
protected

◆ syncmem_var_h2d_op

using TestSrcPWForceMultiDevice::syncmem_var_h2d_op = base_device::memory::synchronize_memory_op<double, base_device::DEVICE_GPU, base_device::DEVICE_CPU>
protected

Member Function Documentation

◆ SetUp()

void TestSrcPWForceMultiDevice::SetUp ( )
inlineoverrideprotected

◆ TearDown()

void TestSrcPWForceMultiDevice::TearDown ( )
inlineoverrideprotected

Member Data Documentation

◆ atom_na

std::vector<int> TestSrcPWForceMultiDevice::atom_na {1, 1}
protected

◆ atom_nh

std::vector<int> TestSrcPWForceMultiDevice::atom_nh {18, 18}
protected

◆ becp

std::vector<std::complex<double> > TestSrcPWForceMultiDevice::becp
protected

◆ cpu_ctx

const base_device::DEVICE_CPU* TestSrcPWForceMultiDevice::cpu_ctx = {}
protected

◆ dbecp

std::vector<std::complex<double> > TestSrcPWForceMultiDevice::dbecp
protected

◆ deeq

std::vector<double> TestSrcPWForceMultiDevice::deeq
protected

◆ deeq_2

int TestSrcPWForceMultiDevice::deeq_2 = 2
protected

◆ deeq_3

int TestSrcPWForceMultiDevice::deeq_3 = 18
protected

◆ deeq_4

int TestSrcPWForceMultiDevice::deeq_4 = 18
protected

◆ ekb

std::vector<double> TestSrcPWForceMultiDevice::ekb
protected
Initial value:
= {0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00,
0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00,
0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00,
0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00,
0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00,
0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00,
0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00,
0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00,
0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00,
0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00,
0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00,
0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00,
0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00,
0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00,
0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00,
0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00,
0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00,
0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00,
0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00,
0.000e+00, 0.000e+00}

◆ expected_force

std::vector<double> TestSrcPWForceMultiDevice::expected_force = {-4.007e-02, 7.418e-03, 1.044e-02, 4.502e-02, -3.032e-02, -3.193e-02}
protected

◆ expected_vkb1

std::vector<std::complex<double> > TestSrcPWForceMultiDevice::expected_vkb1
protected

◆ forcenl_nc

int TestSrcPWForceMultiDevice::forcenl_nc = 3
protected

◆ gcar

std::vector<double> TestSrcPWForceMultiDevice::gcar
protected
Initial value:
= {-1.876e-01, 1.876e-01, -1.876e-01, -9.381e-02, 9.381e-02, -9.381e-02, 0.000e+00, 0.000e+00, 0.000e+00,
9.381e-02, -9.381e-02, 9.381e-02, 1.876e-01, -1.876e-01, 1.876e-01, -1.876e-01, 1.876e-01, 0.000e+00,
-9.381e-02, 9.381e-02, 9.381e-02, 0.000e+00, 0.000e+00, 1.876e-01, 9.381e-02, -9.381e-02, 2.814e-01,
-1.876e-01, 1.876e-01, 1.876e-01, -9.381e-02, 9.381e-02, 2.814e-01, 9.381e-02, -9.381e-02, -2.814e-01,
1.876e-01, -1.876e-01, -1.876e-01, -9.381e-02, 9.381e-02, -2.814e-01, 0.000e+00, 0.000e+00, -1.876e-01,
9.381e-02, -9.381e-02, -9.381e-02, 1.876e-01, -1.876e-01, 0.000e+00, 0.000e+00, 1.876e-01, -1.876e-01,
9.381e-02, 9.381e-02, -9.381e-02, 1.876e-01, 0.000e+00, 0.000e+00, 2.814e-01, -9.381e-02, 9.381e-02,
-9.381e-02, 2.814e-01, -9.381e-02, 0.000e+00, 1.876e-01, 0.000e+00, 9.381e-02, 9.381e-02, 9.381e-02,
1.876e-01, 0.000e+00, 1.876e-01, -9.381e-02, 2.814e-01, 9.381e-02, 0.000e+00, 1.876e-01, 1.876e-01,
9.381e-02, 9.381e-02, 2.814e-01, 9.381e-02, 9.381e-02, -2.814e-01, 1.876e-01, 0.000e+00, -1.876e-01,
2.814e-01, -9.381e-02, -9.381e-02, 1.876e-01, 1.876e-01, -1.876e-01, 2.814e-01, 9.381e-02, -9.381e-02,
9.381e-02, 2.814e-01, -9.381e-02, 1.876e-01, 1.876e-01, 0.000e+00, 2.814e-01, 9.381e-02, 9.381e-02,
9.381e-02, 2.814e-01, 9.381e-02, 1.876e-01, 1.876e-01, 1.876e-01, -2.814e-01, -9.381e-02, 9.381e-02,
-1.876e-01, -1.876e-01, 1.876e-01, -1.876e-01, -1.876e-01, -1.876e-01, -9.381e-02, -2.814e-01, -9.381e-02,
-2.814e-01, -9.381e-02, -9.381e-02, -1.876e-01, -1.876e-01, 0.000e+00, -9.381e-02, -2.814e-01, 9.381e-02,
-2.814e-01, 9.381e-02, -9.381e-02, -1.876e-01, 0.000e+00, 0.000e+00, -9.381e-02, -9.381e-02, 9.381e-02,
0.000e+00, -1.876e-01, 1.876e-01, -2.814e-01, 9.381e-02, 9.381e-02, -1.876e-01, 0.000e+00, 1.876e-01,
-9.381e-02, -9.381e-02, 2.814e-01, -9.381e-02, -9.381e-02, -2.814e-01, 0.000e+00, -1.876e-01, -1.876e-01,
9.381e-02, -2.814e-01, -9.381e-02, -1.876e-01, 0.000e+00, -1.876e-01, -9.381e-02, -9.381e-02, -9.381e-02,
0.000e+00, -1.876e-01, 0.000e+00, 9.381e-02, -2.814e-01, 9.381e-02}

◆ gpu_ctx

const base_device::DEVICE_GPU* TestSrcPWForceMultiDevice::gpu_ctx = {}
protected

◆ ik

int TestSrcPWForceMultiDevice::ik = 0
protected

◆ ipol

int TestSrcPWForceMultiDevice::ipol = 0
protected

◆ multi_proj

bool TestSrcPWForceMultiDevice::multi_proj = false
protected

◆ nbands

int TestSrcPWForceMultiDevice::nbands = 24
protected

◆ nbands_occ

int TestSrcPWForceMultiDevice::nbands_occ = 16
protected

◆ nbasis

int TestSrcPWForceMultiDevice::nbasis = 59
protected

◆ NEG_IMAG_UNIT

std::complex<double> TestSrcPWForceMultiDevice::NEG_IMAG_UNIT {0, -1}
protected

◆ nkb

int TestSrcPWForceMultiDevice::nkb = 36
protected

◆ npwk_max

int TestSrcPWForceMultiDevice::npwk_max = 64
protected

◆ npwx

int TestSrcPWForceMultiDevice::npwx = 64
protected

◆ ntype

int TestSrcPWForceMultiDevice::ntype = 2
protected

◆ qq_nt

std::vector<double> TestSrcPWForceMultiDevice::qq_nt
protected

◆ spin

int TestSrcPWForceMultiDevice::spin = 0
protected

◆ tpiba

double TestSrcPWForceMultiDevice::tpiba = 6.2831853071795862
protected

◆ vkb

std::vector<std::complex<double> > TestSrcPWForceMultiDevice::vkb
protected

◆ vkb1

std::vector<std::complex<double> > TestSrcPWForceMultiDevice::vkb1
protected

◆ vkb_nc

int TestSrcPWForceMultiDevice::vkb_nc = 64
protected

◆ wg

std::vector<double> TestSrcPWForceMultiDevice::wg
protected
Initial value:
= {2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01,
2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 1.163e-01, 1.220e-03, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00,
0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01,
2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 7.384e-12, 0.000e+00,
0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 2.500e-01, 2.500e-01,
2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01,
2.500e-01, 2.500e-01, 1.506e-04, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00,
0.000e+00, 0.000e+00, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01,
2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 1.198e-14, 0.000e+00, 0.000e+00, 0.000e+00,
0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01,
2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01,
3.053e-16, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00,
2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01,
2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 4.620e-14, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00,
0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01,
2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 6.202e-13, 0.000e+00,
0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 2.500e-01, 2.500e-01,
2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01, 2.500e-01,
1.974e-01, 1.850e-01, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00, 0.000e+00,
0.000e+00, 0.000e+00}

◆ wg_nc

int TestSrcPWForceMultiDevice::wg_nc = 24
protected

The documentation for this class was generated from the following file: