ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
Loading...
Searching...
No Matches
batch_biggrid.h
Go to the documentation of this file.
1#pragma once
2#include <memory>
3#include <vector>
4#include "big_grid.h"
5
6namespace ModuleGint
7{
8
10{
11 public:
12 BatchBigGrid(std::vector<std::shared_ptr<BigGrid>> biggrids);
13
14 const std::vector<std::shared_ptr<BigGrid>>& get_bgrids() { return biggrids_; }
15
16 int get_batch_size() const { return biggrids_.size(); }
17 int get_atoms_num() const { return atoms_num_; }
18 int get_phi_len() const { return phi_len_;}
20 bool empty() {return atoms_num_ == 0; }
21 static int get_max_batch_size() { return max_batch_size_; }
22 static int get_max_atoms_num() { return max_atoms_num_; }
23 static int get_max_phi_len() { return max_phi_len_; }
25 static std::shared_ptr<const BigGridInfo> get_bgrid_info() { return BigGrid::get_bgrid_info(); }
26
27 private:
28 std::vector<std::shared_ptr<BigGrid>> biggrids_;
29
30 // the max nw of an atom
31 int max_nw_ = 0;
32
33 int phi_len_ = 0;
34 // number of atoms in the batch
35 int atoms_num_ = 0;
36
37 // the max number of atoms of a single biggrid
39
40 // the max number of biggrids of a biggrids batch
41 static int max_batch_size_;
42 // the max number of total atoms of a biggrids batch
43 static int max_atoms_num_;
44 // the max number of total wavefunctions of a biggrids batch
45 static int max_phi_len_;
46 // the max number of atom pairs of a biggrids batch
48};
49
50}
Definition batch_biggrid.h:10
static int max_atoms_num_
Definition batch_biggrid.h:43
static int max_batch_size_
Definition batch_biggrid.h:41
int get_atoms_num() const
Definition batch_biggrid.h:17
static int max_atom_pairs_num_
Definition batch_biggrid.h:47
bool empty()
Definition batch_biggrid.h:20
int phi_len_
Definition batch_biggrid.h:33
int atoms_num_
Definition batch_biggrid.h:35
std::vector< std::shared_ptr< BigGrid > > biggrids_
Definition batch_biggrid.h:28
int max_nw_
Definition batch_biggrid.h:31
const std::vector< std::shared_ptr< BigGrid > > & get_bgrids()
Definition batch_biggrid.h:14
int get_max_atoms_num_per_bgrid() const
Definition batch_biggrid.h:19
static int get_max_atoms_num()
Definition batch_biggrid.h:22
static int get_max_atom_pairs_num()
Definition batch_biggrid.h:24
int get_batch_size() const
Definition batch_biggrid.h:16
int get_phi_len() const
Definition batch_biggrid.h:18
int max_atoms_num_per_bgrid_
Definition batch_biggrid.h:38
static int get_max_phi_len()
Definition batch_biggrid.h:23
static int get_max_batch_size()
Definition batch_biggrid.h:21
static int max_phi_len_
Definition batch_biggrid.h:45
static std::shared_ptr< const BigGridInfo > get_bgrid_info()
Definition batch_biggrid.h:25
static std::shared_ptr< const BigGridInfo > get_bgrid_info()
Definition big_grid.h:28
Definition batch_biggrid.cpp:4