ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
Loading...
Searching...
No Matches
gint_vl_nspin4.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"
8
9namespace ModuleGint
10{
11
12class Gint_vl_nspin4 : public Gint
13{
14 public:
16 std::vector<const double*> vr_eff,
17 HContainer<std::complex<double>>* hR)
18 : vr_eff_(vr_eff), hR_(hR), dr3_(gint_info_->get_mgrid_volume()) {}
19
20 void cal_gint();
21
22 private:
23
24 void init_hr_gint_();
25
26 // note that only the upper triangle matrix of hR is calculated
27 // that's why we need compose_hr_gint() to fill the lower triangle matrix.
28 void cal_hr_gint_();
29
30 // input
31 std::vector<const double*> vr_eff_;
32
33 // output
35
36 // Intermediate variables
37 const double dr3_;
38
39 const int nspin_ = 4;
40
41 std::vector<HContainer<double>> hr_gint_part_;
43};
44
45} // namespace ModuleGint
Definition gint_vl_nspin4.h:13
Gint_vl_nspin4(std::vector< const double * > vr_eff, HContainer< std::complex< double > > *hR)
Definition gint_vl_nspin4.h:15
std::vector< const double * > vr_eff_
Definition gint_vl_nspin4.h:31
void cal_gint()
Definition gint_vl_nspin4.cpp:10
const int nspin_
Definition gint_vl_nspin4.h:39
std::vector< HContainer< double > > hr_gint_part_
Definition gint_vl_nspin4.h:41
HContainer< std::complex< double > > * hR_
Definition gint_vl_nspin4.h:34
const double dr3_
Definition gint_vl_nspin4.h:37
void cal_hr_gint_()
Definition gint_vl_nspin4.cpp:32
HContainer< std::complex< double > > hr_gint_full_
Definition gint_vl_nspin4.h:42
void init_hr_gint_()
Definition gint_vl_nspin4.cpp:21
Definition gint.h:10
static GintInfo * gint_info_
Definition gint.h:23
Definition hcontainer.h:144
Definition batch_biggrid.cpp:4