ABACUS
develop
Atomic-orbital Based Ab-initio Computation at UStc
Loading...
Searching...
No Matches
source
source_lcao
module_gint
temp_gint
gint_vl_metagga_gpu.h
Go to the documentation of this file.
1
#pragma once
2
3
#include <memory>
4
#include <vector>
5
#include "
source_lcao/module_hcontainer/hcontainer.h
"
6
#include "
gint.h
"
7
#include "
gint_info.h
"
8
#include "
source_lcao/module_gint/temp_gint/kernel/cuda_mem_wrapper.h
"
9
10
namespace
ModuleGint
11
{
12
13
class
Gint_vl_metagga_gpu
:
public
Gint
14
{
15
public
:
16
Gint_vl_metagga_gpu
(
17
const
double
* vr_eff,
18
const
double
* vofk,
19
HContainer<double>
* hR)
20
:
vr_eff_
(vr_eff),
vofk_
(vofk),
hR_
(hR),
dr3_
(
gint_info_
->get_mgrid_volume()) {}
21
22
void
cal_gint
();
23
24
private
:
25
26
void
init_hr_gint_
();
27
28
void
transfer_cpu_to_gpu_
();
29
30
void
transfer_gpu_to_cpu_
();
31
32
// note that only the upper triangle matrix of hR is calculated
33
// that's why we need compose_hr_gint() to fill the lower triangle matrix.
34
void
cal_hr_gint_
();
35
36
// input
37
const
double
*
vr_eff_
;
38
const
double
*
vofk_
;
39
40
// output
41
HContainer<double>
*
hR_
;
42
43
// Intermediate variables
44
double
dr3_
;
45
46
HContainer<double>
hr_gint_
;
47
48
CudaMemWrapper<double>
hr_gint_d_
;
49
CudaMemWrapper<double>
vr_eff_d_
;
50
CudaMemWrapper<double>
vofk_d_
;
51
};
52
53
}
CudaMemWrapper
Definition
cuda_mem_wrapper.h:8
ModuleGint::Gint_vl_metagga_gpu
Definition
gint_vl_metagga_gpu.h:14
ModuleGint::Gint_vl_metagga_gpu::dr3_
double dr3_
Definition
gint_vl_metagga_gpu.h:44
ModuleGint::Gint_vl_metagga_gpu::hR_
HContainer< double > * hR_
Definition
gint_vl_metagga_gpu.h:41
ModuleGint::Gint_vl_metagga_gpu::Gint_vl_metagga_gpu
Gint_vl_metagga_gpu(const double *vr_eff, const double *vofk, HContainer< double > *hR)
Definition
gint_vl_metagga_gpu.h:16
ModuleGint::Gint_vl_metagga_gpu::transfer_cpu_to_gpu_
void transfer_cpu_to_gpu_()
Definition
gint_vl_metagga_gpu.cpp:30
ModuleGint::Gint_vl_metagga_gpu::init_hr_gint_
void init_hr_gint_()
Definition
gint_vl_metagga_gpu.cpp:25
ModuleGint::Gint_vl_metagga_gpu::cal_hr_gint_
void cal_hr_gint_()
Definition
gint_vl_metagga_gpu.cpp:47
ModuleGint::Gint_vl_metagga_gpu::cal_gint
void cal_gint()
Definition
gint_vl_metagga_gpu.cpp:10
ModuleGint::Gint_vl_metagga_gpu::vofk_d_
CudaMemWrapper< double > vofk_d_
Definition
gint_vl_metagga_gpu.h:50
ModuleGint::Gint_vl_metagga_gpu::vr_eff_
const double * vr_eff_
Definition
gint_vl_metagga_gpu.h:37
ModuleGint::Gint_vl_metagga_gpu::vofk_
const double * vofk_
Definition
gint_vl_metagga_gpu.h:38
ModuleGint::Gint_vl_metagga_gpu::hr_gint_
HContainer< double > hr_gint_
Definition
gint_vl_metagga_gpu.h:46
ModuleGint::Gint_vl_metagga_gpu::vr_eff_d_
CudaMemWrapper< double > vr_eff_d_
Definition
gint_vl_metagga_gpu.h:49
ModuleGint::Gint_vl_metagga_gpu::hr_gint_d_
CudaMemWrapper< double > hr_gint_d_
Definition
gint_vl_metagga_gpu.h:48
ModuleGint::Gint_vl_metagga_gpu::transfer_gpu_to_cpu_
void transfer_gpu_to_cpu_()
Definition
gint_vl_metagga_gpu.cpp:41
ModuleGint::Gint
Definition
gint.h:10
ModuleGint::Gint::gint_info_
static GintInfo * gint_info_
Definition
gint.h:23
hamilt::HContainer
Definition
hcontainer.h:144
cuda_mem_wrapper.h
gint_info.h
hcontainer.h
ModuleGint
Definition
batch_biggrid.cpp:4
gint.h
Generated by
1.9.8