|
double | MD_func::gaussrand () |
| generate a Gaussian random number
|
|
double | MD_func::kinetic_energy (const int &natom, const ModuleBase::Vector3< double > *vel, const double *allmass) |
| calculate the ionic kinetic energy
|
|
void | MD_func::compute_stress (const UnitCell &unit_in, const ModuleBase::Vector3< double > *vel, const double *allmass, const bool &cal_stress, const ModuleBase::matrix &virial, ModuleBase::matrix &stress) |
| calculate the total stress tensor
|
|
void | MD_func::read_vel (const UnitCell &unit_in, ModuleBase::Vector3< double > *vel) |
| read in atomic velocities from STRU
|
|
void | MD_func::rescale_vel (const int &natom, const double &temperature, const double *allmass, const int &frozen_freedom, ModuleBase::Vector3< double > *vel) |
| rescale the velocity to the target temperature
|
|
void | MD_func::rand_vel (const int &natom, const double &temperature, const double *allmass, const int &frozen_freedom, const ModuleBase::Vector3< int > frozen, const ModuleBase::Vector3< int > *ionmbl, const int &my_rank, ModuleBase::Vector3< double > *vel) |
| generate atomic velocities that satisfy the Boltzmann distribution
|
|
void | MD_func::init_vel (const UnitCell &unit_in, const int &my_rank, const bool &restart, double &temperature, double *allmass, int &frozen_freedom, ModuleBase::Vector3< int > *ionmbl, ModuleBase::Vector3< double > *vel) |
| initialize the atomic velocities
|
|
void | MD_func::force_virial (ModuleESolver::ESolver *p_esolver, const int &istep, UnitCell &unit_in, double &potential, ModuleBase::Vector3< double > *force, const bool &cal_stress, ModuleBase::matrix &virial) |
| calculate energy, forces and virial tensor
|
|
void | MD_func::print_stress (std::ofstream &ofs, const ModuleBase::matrix &virial, const ModuleBase::matrix &stress) |
| output the stress information
|
|
void | MD_func::dump_info (const int &step, const std::string &global_out_dir, const UnitCell &unit_in, const Parameter ¶m_in, const ModuleBase::matrix &virial, const ModuleBase::Vector3< double > *force, const ModuleBase::Vector3< double > *vel) |
| dump the md information
|
|
void | MD_func::get_mass_mbl (const UnitCell &unit_in, double *allmass, ModuleBase::Vector3< int > &frozen, ModuleBase::Vector3< int > *ionmbl) |
| obtain the atomic mass and whether the freedom is fixed
|
|
double | MD_func::target_temp (const int &istep, const int &nstep, const double &tfirst, const double &tlast) |
| get the target temperature of the current md step
|
|
double | MD_func::current_temp (double &kinetic, const int &natom, const int &frozen_freedom, const double *allmass, const ModuleBase::Vector3< double > *vel) |
| get the current temperature
|
|
void | MD_func::temp_vector (const int &natom, const ModuleBase::Vector3< double > *vel, const double *allmass, ModuleBase::matrix &t_vector) |
| get the temperature vectors
|
|
void | MD_func::current_md_info (const int &my_rank, const std::string &file_dir, int &md_step, double &temperature) |
| determine thr current md step and temperature
|
|