ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
Loading...
Searching...
No Matches
element_basis_index.h
Go to the documentation of this file.
1//==========================================================
2// AUTHOR : Peize Lin
3// DATE : 2016-06-02
4//==========================================================
5
6#ifndef ELEMENT_BASIS_INDEX_H
7#define ELEMENT_BASIS_INDEX_H
8
9#include <cstddef>
10#include <vector>
11namespace ModuleBase
12{
13
15{
16private:
17
18 struct NM
19 {
20 public:
21 size_t N;
22 size_t M;
23 };
24
25 class Index_TL: public std::vector<std::vector<size_t>>
26 {
27 public:
28 size_t N;
29 size_t M;
30 };
31
32 class Index_T: public std::vector<Index_TL>
33 {
34 public:
35 size_t count_size;
36 };
37
38public:
39
40 typedef std::vector<std::vector<NM>> Range; // range[T][L]
41 typedef std::vector<Index_T> IndexLNM; // index[T][L][N][M]
42
43 static IndexLNM construct_index( const Range &range );
44};
45
46}
47
48#endif
Definition element_basis_index.h:26
size_t N
Definition element_basis_index.h:28
size_t M
Definition element_basis_index.h:29
Definition element_basis_index.h:33
size_t count_size
Definition element_basis_index.h:35
Definition element_basis_index.h:15
static IndexLNM construct_index(const Range &range)
Definition element_basis_index.cpp:10
std::vector< Index_T > IndexLNM
Definition element_basis_index.h:41
std::vector< std::vector< NM > > Range
Definition element_basis_index.h:40
Definition array_pool.h:6
Definition element_basis_index.h:19
size_t M
Definition element_basis_index.h:22
size_t N
Definition element_basis_index.h:21