ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
Loading...
Searching...
No Matches
gint_vl_metagga_gpu.h
Go to the documentation of this file.
1#pragma once
2
3#include <memory>
4#include <vector>
6#include "gint.h"
7#include "gint_info.h"
9
10namespace ModuleGint
11{
12
14{
15 public:
17 const double* vr_eff,
18 const double* vofk,
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
29
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
42
43 // Intermediate variables
44 double dr3_;
45
47
51};
52
53}
Definition cuda_mem_wrapper.h:8
Definition gint_vl_metagga_gpu.h:14
double dr3_
Definition gint_vl_metagga_gpu.h:44
HContainer< double > * hR_
Definition gint_vl_metagga_gpu.h:41
Gint_vl_metagga_gpu(const double *vr_eff, const double *vofk, HContainer< double > *hR)
Definition gint_vl_metagga_gpu.h:16
void transfer_cpu_to_gpu_()
Definition gint_vl_metagga_gpu.cpp:30
void init_hr_gint_()
Definition gint_vl_metagga_gpu.cpp:25
void cal_hr_gint_()
Definition gint_vl_metagga_gpu.cpp:47
void cal_gint()
Definition gint_vl_metagga_gpu.cpp:10
CudaMemWrapper< double > vofk_d_
Definition gint_vl_metagga_gpu.h:50
const double * vr_eff_
Definition gint_vl_metagga_gpu.h:37
const double * vofk_
Definition gint_vl_metagga_gpu.h:38
HContainer< double > hr_gint_
Definition gint_vl_metagga_gpu.h:46
CudaMemWrapper< double > vr_eff_d_
Definition gint_vl_metagga_gpu.h:49
CudaMemWrapper< double > hr_gint_d_
Definition gint_vl_metagga_gpu.h:48
void transfer_gpu_to_cpu_()
Definition gint_vl_metagga_gpu.cpp:41
Definition gint.h:10
static GintInfo * gint_info_
Definition gint.h:23
Definition hcontainer.h:144
Definition batch_biggrid.cpp:4