JDFTx  1.7.0
Symmetries Class Reference

Symmetry detection and symmetrization of various quantities. More...

#include <Symmetries.h>

Public Member Functions

void setup (const Everything &everything)
 Phase 1 of setup which computes/checks lattice+basis symmetries.
 
void setupMesh ()
 Phase 2 of setup which computes / checks FFTbox and k-mesh dependent symmetries.
 
std::vector< QuantumNumberreduceKmesh (const std::vector< QuantumNumber > &qnums) const
 Reduce a k-point mesh (and remember its inversion symmetry property in kpointInvertList)
 
void symmetrize (ScalarField &) const
 symmetrize a scalar field in real space
 
void symmetrize (complexScalarField &) const
 symmetrize a complex scalar field in real space
 
void symmetrize (ScalarFieldTilde &) const
 symmetrize a scalar field in reciprocal space
 
void symmetrize (complexScalarFieldTilde &) const
 symmetrize a complex scalar field in reciprocal space
 
void symmetrize (ScalarFieldArray &) const
 symmetrize an array of scalar fields in real space representing spin density / potentials
 
void symmetrize (complexScalarFieldArray &) const
 symmetrize an array of complex scalar fields in real space representing spin density / potentials
 
void symmetrize (ScalarFieldTildeArray &) const
 symmetrize an array of scalar fields in reciprocal space representing spin density / potentials
 
void symmetrize (std::vector< complexScalarFieldTilde > &) const
 symmetrize an array of complex scalar fields in reciprocal space representing spin density / potentials
 
void symmetrize (struct IonicGradient &) const
 symmetrize forces
 
void symmetrize (matrix3<> &) const
 symmetrize a tensor in Cartesian coordinates
 
void symmetrizeSpherical (matrix &, const class SpeciesInfo *specie) const
 symmetrize matrices in Ylm basis per atom of species sp (accounting for atom maps)
 
const std::vector< SpaceGroupOp > & getMatrices () const
 directly access the symmetry matrices (in lattice coords)
 
const std::vector< matrix > & getSphericalMatrices (int l, bool relativistic) const
 directly access the symmetry matrices (in Ylm or spin-angle basis at specified l, depending on relativistic)
 
const std::vector< int > & getKpointInvertList () const
 direct access to inversion property of symmetry group (see kpointInvertList)
 
const std::vector< std::vector< std::vector< int > > > & getAtomMap () const
 direct access to mapping of each atom under each symmetry matrix (index order species, atom, symmetry)
 
void printKmap (FILE *fp) const
 print the k-point map (cached in kmap)
 

Static Public Member Functions

static matrix getSpinorRotation (const matrix3<> &rot)
 

Public Attributes

SymmetryMode mode
 Symmetry mode (none, automatic or manual)
 

Friends

struct CommandSymmetries
 
struct CommandSymmetryMatrix
 
struct CommandDebug
 
struct CommandKpointReduceInversion
 
class Phonon
 

Detailed Description

Symmetry detection and symmetrization of various quantities.


The documentation for this class was generated from the following file: