- Tested Functions:
- Constructor:
- Setup:
- setup(): to set latname, ntype, lmaxmax, init_vel, and lc
- if_cell_can_change(): judge if any lattice vector can change
- SetupWarningQuit1:
- setup(): deliver warning: "there are bugs in the old implementation;
set relax_new to be 1 for fixed_volume relaxation"
- SetupWarningQuit2:
- setup(): deliver warning: "set relax_new to be 1 for fixed_shape relaxation"
- RemakeCell
- remake_cell(): rebuild cell according to its latName
- RemakeCellWarnings
- remake_cell(): deliver warnings when find wrong latname or cos12
- JudgeParallel
- judge_parallel: judge if two vectors a[3] and Vector3<double> b are parallel
- Index
- set_iat2iait(): set index relations in two arrays of Unitcell: iat2it[nat], iat2ia[nat]
- iat2iait(): depends on the above function, but can find both ia & it from iat
- ijat2iaitjajt(): find ia, it, ja, jt from ijat (ijat_max = nat*nat) which collapses it, ia, jt, ja loop into a single loop
- step_ia(): periodically set ia to 0 when ia reaches atom[it].na - 1
- step_it(): periodically set it to 0 when it reaches ntype -1
- step_iait(): return true only the above two conditions are true
- step_jajtiait(): return ture only two of the above function (for i and j) are true
- GetAtomCounts
- get_atomCounts(): get atomCounts, which is a map from atom type to atom number
- GetOrbitalCounts
- get_orbitalCounts(): get orbitalCounts, which is a map from atom type to orbital number
- CheckDTau
- check_dtau(): move all atomic coordinates into the first unitcell, i.e. in between [0,1)
- CheckTau
- check_tau(): check if any "two atoms are too close"
- SelectiveDynamics
- if_atoms_can_move():it is true if any coordinates of any atom can move, i.e. mbl = 1
- PeriodicBoundaryAdjustment
- periodic_boundary_adjustment(): move atoms inside the unitcell after relaxation
- PrintCell
- print_cell(ofs): print basic cell info into ofs
- PrintSTRU
- print_stru_file(): print STRU file of ABACUS
- PrintTauDirect
- PrintTauCartesian
- print_tau(): print atomic coordinates, magmom and initial velocities
- PrintUnitcellPseudo
- UpdateVel
- update_vel(const ModuleBase::Vector3<double>* vel_in)
- CalUx
- cal_ux(UnitCell& ucell): calculate magnetic moments of cell
- ReadOrbFile
- read_orb_file(): read header part of orbital file
- ReadOrbFileWarning
- read_orb_file(): ABACUS Cannot find the ORBITAL file
- ReadAtomSpecies
- read_atom_species(): a successful case
- ReadAtomSpeciesWarning1
- read_atom_species(): unrecognized pseudopotential type.
- ReadAtomSpeciesWarning2
- read_atom_species(): lat0<=0.0
- ReadAtomSpeciesWarning3
- read_atom_species(): do not use LATTICE_PARAMETERS without explicit specification of lattice type
- ReadAtomSpeciesWarning4
- read_atom_species():do not use LATTICE_VECTORS along with explicit specification of lattice type
- ReadAtomSpeciesWarning5
- read_atom_species():latname not supported
- ReadAtomSpeciesLatName
- read_atom_species(): various latname
- ReadAtomPositionsS1
- read_atom_positions(): spin 1 case
- ReadAtomPositionsS2
- read_atom_positions(): spin 2 case
- ReadAtomPositionsS4Noncolin
- read_atom_positions(): spin 4 noncolinear case
- ReadAtomPositionsS4Colin
- read_atom_positions(): spin 4 colinear case
- ReadAtomPositionsC
- read_atom_positions(): Cartesian coordinates
- ReadAtomPositionsCA
- read_atom_positions(): Cartesian_angstrom coordinates
- ReadAtomPositionsCACXY
- read_atom_positions(): Cartesian_angstrom_center_xy coordinates
- ReadAtomPositionsCACXZ
- read_atom_positions(): Cartesian_angstrom_center_xz coordinates
- ReadAtomPositionsCACXYZ
- read_atom_positions(): Cartesian_angstrom_center_xyz coordinates
- ReadAtomPositionsCAU
- read_atom_positions(): Cartesian_au coordinates
- ReadAtomPositionsWarning1
- read_atom_positions(): unknown type of coordinates
- ReadAtomPositionsWarning2
- read_atom_positions(): atomic label inconsistency between ATOM_POSITIONS and ATOM_SPECIES
- ReadAtomPositionsWarning3
- read_atom_positions(): warning : atom number < 0
- ReadAtomPositionsWarning4
- read_atom_positions(): mismatch in atom number for atom type
- ReadAtomPositionsWarning5
- read_atom_positions(): no atoms can move in MD simulations!
- Tested Functions:
- UpdatePosTaud
- update_pos_tau(double* pos)
- update_pos_taud(const double* pos)
- bcast_atoms_tau() is also called in the above function, which calls Atom::bcast_atom with many atomic info in addition to tau
- BcastUnitcell
- bcast basic info of unitcell and basic info of atoms
- BcastUnitcell2
- calls bcast_atoms2() to bcast atomic pseudo info
- ReadPseudo
- Tested Functions:
- ReadCellPPWarning1
- read_cell_pseudopots(): error when average the pseudopotential: error_ap
- ReadCellPPWarning2
- read_cell_pseudopots(): Couldn't find pseudopotential file:: error == 1
- ReadCellPPWarning3
- read_cell_pseudopots(): Pseudopotential data do not match: error ==2
- error==3 is currently difficult to reach in read_pseudo_vwr
- ReadCellPPWarning4
- read_cell_pseudopots(): dft_functional from INPUT does not match that in pseudopot file
- ReadCellPPWarning5
- read_cell_pseudopots(): Unknown pseudopotential type
- ReadCellPP
- read_cell_pseudopots(): read pp files with flag_empty_element set
- CalMeshx
- cal_meshx(): calculate max mesh info from atomic pseudo potential file
- CalNatomwfc1
- cal_natomwfc(): calculate total number of atomic orbitals in pseudo potential file
- NSPIN != 4
- this corresponds to number_of_wfc, PP_CHI in pp file, and atoms[it].ncpp.lchi[ncpp.nchi]
- setup the total number of PAOs: pseudopotential atomic orbitals
- CalNatomwfc2
- cal_natomwfc(): calculate total number of atomic orbitals in pseudo potential file
- NSPIN ==4, has_so = false
- CalNatomwfc3
- cal_natomwfc(): calculate total number of atomic orbitals in pseudo potential file
- NSPIN ==4, has_so = true
- CalNwfc1
- cal_nwfc(): calcuate the total number of local basis: NSPIN != 4
- this corresponds to number_of_proj, PP_BETA in pp file, and atoms[it].l_nchi[nw], nw from orb file
- setup PARAM.sys.nlocal
- interfaces initialed in this function:
- itia2iat
- iat2iwt
- itiaiw2iwt
- iwt2iat
- iwt2iw
- CalNwfc2
- cal_nwfc(): calcuate the total number of local basis: NSPIN == 4
- CheckStructure
- check_atomic_stru(): check if too atoms are two close
- ReadPseudoWarning1
- read_pseudo(): All DFT functional must consistent.
- ReadPseudoWarning2
- read_pseudo(): number valence electrons > corresponding minimum possible of an element
- CalNelec: UnitCell::cal_nelec
- calculate the total number of valence electrons from psp files
- CalNbands: elecstate::cal_nbands()
- calculate the number of bands
- Tested Functions:
- ReadAtomSpecies
- read_atom_species(): read header part of orbital file
- ReadAtomPositions
- read_atom_positions(): read atomic coordinates, velocities, magmoms
- SetupCell
- setup_cell(): the pw version
◆ SetUp() [1/3]
void UcellTest::SetUp |
( |
| ) |
|
|
inlineprotected |
◆ SetUp() [2/3]
void UcellTest::SetUp |
( |
| ) |
|
|
inlineprotected |
◆ SetUp() [3/3]
void UcellTest::SetUp |
( |
| ) |
|
|
inlineprotected |
◆ TearDown() [1/2]
void UcellTest::TearDown |
( |
| ) |
|
|
inlineprotected |
◆ TearDown() [2/2]
void UcellTest::TearDown |
( |
| ) |
|
|
inlineprotected |
◆ ofs
std::ofstream UcellTest::ofs |
|
protected |
◆ output
std::string UcellTest::output |
|
protected |
◆ pp_dir
std::string UcellTest::pp_dir |
|
protected |
◆ ucell
◆ utp
The documentation for this class was generated from the following files: