ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
Loading...
Searching...
No Matches
Namespaces | Classes | Typedefs | Functions | Variables
ModuleSymmetry Namespace Reference

Namespaces

namespace  Symm_Other
 

Classes

class  Irreducible_Sector
 
class  Symmetry
 
class  Symmetry_Basic
 
class  Symmetry_rotation
 

Typedefs

using Tap = std::pair< int, int >
 
using TC = std::array< int, 3 >
 
using TapR = std::pair< Tap, TC >
 
using TCdouble = Abfs::Vector3_Order< double >
 

Functions

void output_return_lattice (const std::vector< std::vector< TCdouble > > &return_lattice)
 
std::vector< int > get_isymbvk_to_isym_map (const std::vector< ModuleBase::Matrix3 > &bvkgmat, const ModuleSymmetry::Symmetry &symm)
 
int gcd (const int a, const int b)
 
int m2im (int m)
 
template<typename T >
std::string vec3_fmt (const T &x, const T &y, const T &z)
 
template<typename T >
std::string vec3_fmt (const ModuleBase::Vector3< T > &v)
 
void print_symrot_info_k (const ModuleSymmetry::Symmetry_rotation &symrot, const K_Vectors &kv, const UnitCell &ucell)
 
void print_symrot_info_R (const Symmetry_rotation &symrot, const Symmetry &symm, const int lmax_ao, const std::vector< TC > &Rs)
 
std::string mat3_fmt (const ModuleBase::Matrix3 &m)
 
template<typename Tdata >
void print_tensor (const RI::Tensor< Tdata > &t, const std::string &name, const double &threshold=0.0)
 
template<typename Tdata >
void print_tensor3 (const RI::Tensor< Tdata > &t, const std::string &name, const double &threshold=0.0)
 
template<typename Tdata >
void set_block (const int starti, const int startj, const RI::Tensor< std::complex< double > > &block, RI::Tensor< Tdata > &obj_tensor)
 
template<typename TR >
void print_global (const TR *tlocal, const int nr, const int nc, const std::string name)
 
template<typename TR >
void print_local (const Parallel_Orbitals &pv, const TR *tlocal, const std::string name)
 
template<typename TR >
void print_atompair_local (const Parallel_Orbitals &pv, const int iat1, const int iat2, const TR *tlocal, const std::string name)
 
void set_block (const int starti, const int startj, const int nr, const ModuleBase::ComplexMatrix &block, double *obj)
 
void set_block (const int starti, const int startj, const int nr, const ModuleBase::ComplexMatrix &block, std::complex< double > *obj)
 

Variables

bool test_brav = 0
 

Typedef Documentation

◆ Tap

typedef std::pair< int, int > ModuleSymmetry::Tap

◆ TapR

typedef std::pair< Tap, TC > ModuleSymmetry::TapR

◆ TC

typedef std::array< int, 3 > ModuleSymmetry::TC

◆ TCdouble

Function Documentation

◆ gcd()

int ModuleSymmetry::gcd ( const int  a,
const int  b 
)
inline
Here is the call graph for this function:
Here is the caller graph for this function:

◆ get_isymbvk_to_isym_map()

std::vector< int > ModuleSymmetry::get_isymbvk_to_isym_map ( const std::vector< ModuleBase::Matrix3 > &  bvkgmat,
const ModuleSymmetry::Symmetry symm 
)
inline
Here is the call graph for this function:
Here is the caller graph for this function:

◆ m2im()

int ModuleSymmetry::m2im ( int  m)
inline
Here is the caller graph for this function:

◆ mat3_fmt()

std::string ModuleSymmetry::mat3_fmt ( const ModuleBase::Matrix3 m)
Here is the caller graph for this function:

◆ output_return_lattice()

void ModuleSymmetry::output_return_lattice ( const std::vector< std::vector< TCdouble > > &  return_lattice)
inline

◆ print_atompair_local()

template<typename TR >
void ModuleSymmetry::print_atompair_local ( const Parallel_Orbitals pv,
const int  iat1,
const int  iat2,
const TR *  tlocal,
const std::string  name 
)
inline
Here is the call graph for this function:
Here is the caller graph for this function:

◆ print_global()

template<typename TR >
void ModuleSymmetry::print_global ( const TR *  tlocal,
const int  nr,
const int  nc,
const std::string  name 
)
inline
Here is the caller graph for this function:

◆ print_local()

template<typename TR >
void ModuleSymmetry::print_local ( const Parallel_Orbitals pv,
const TR *  tlocal,
const std::string  name 
)
inline
Here is the call graph for this function:

◆ print_symrot_info_k()

void ModuleSymmetry::print_symrot_info_k ( const ModuleSymmetry::Symmetry_rotation symrot,
const K_Vectors kv,
const UnitCell ucell 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ print_symrot_info_R()

void ModuleSymmetry::print_symrot_info_R ( const Symmetry_rotation symrot,
const Symmetry symm,
const int  lmax_ao,
const std::vector< TC > &  Rs 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ print_tensor()

template<typename Tdata >
void ModuleSymmetry::print_tensor ( const RI::Tensor< Tdata > &  t,
const std::string &  name,
const double &  threshold = 0.0 
)
inline
Here is the caller graph for this function:

◆ print_tensor3()

template<typename Tdata >
void ModuleSymmetry::print_tensor3 ( const RI::Tensor< Tdata > &  t,
const std::string &  name,
const double &  threshold = 0.0 
)
inline
Here is the caller graph for this function:

◆ set_block() [1/3]

void ModuleSymmetry::set_block ( const int  starti,
const int  startj,
const int  nr,
const ModuleBase::ComplexMatrix block,
double *  obj 
)
inline
Here is the call graph for this function:

◆ set_block() [2/3]

void ModuleSymmetry::set_block ( const int  starti,
const int  startj,
const int  nr,
const ModuleBase::ComplexMatrix block,
std::complex< double > *  obj 
)
inline

◆ set_block() [3/3]

template<typename Tdata >
void ModuleSymmetry::set_block ( const int  starti,
const int  startj,
const RI::Tensor< std::complex< double > > &  block,
RI::Tensor< Tdata > &  obj_tensor 
)
inline
Here is the caller graph for this function:

◆ vec3_fmt() [1/2]

template<typename T >
std::string ModuleSymmetry::vec3_fmt ( const ModuleBase::Vector3< T > &  v)
Here is the call graph for this function:

◆ vec3_fmt() [2/2]

template<typename T >
std::string ModuleSymmetry::vec3_fmt ( const T x,
const T y,
const T z 
)
Here is the caller graph for this function:

Variable Documentation

◆ test_brav

bool ModuleSymmetry::test_brav = 0
extern