|
CP2K 2.4 (Revision 12889)
|
Util force_env module. More...
Functions | |
| subroutine, public | force_env_shake (force_env, dt, shake_tol, log_unit, lagrange_mult, dump_lm, pos, vel, compold, reset, error) |
| perform shake (enforcing of constraints) | |
| subroutine, public | force_env_rattle (force_env, dt, shake_tol, log_unit, lagrange_mult, dump_lm, vel, reset, error) |
| perform rattle (enforcing of constraints on velocities) This routine can be easily adapted to performe rattle on whatever other vector different from forces.. | |
| subroutine, public | rescale_forces (force_env, error) |
| Rescale forces if requested. | |
| subroutine, public | write_stress_tensor (pv_virial, output_unit, cell, ndigits, numerical, error) |
| Variable precision output of the stress tensor. | |
| subroutine, public | write_forces (particles, output_unit, label, ndigits, total_force, grand_total_force, error) |
| Write forces. | |
Variables | |
| CHARACTER(len=*), parameter, private | moduleN = 'force_env_utils' |
Util force_env module.
| subroutine,public force_env_utils::force_env_rattle | ( | TYPE(force_env_type),pointer | force_env, |
| REAL(kind=dp),intent(in),optional | dt, | ||
| REAL(kind=dp),intent(in) | shake_tol, | ||
| INTEGER,intent(in),optional | log_unit, | ||
| INTEGER,intent(in),optional | lagrange_mult, | ||
| LOGICAL,intent(in),optional | dump_lm, | ||
| REAL(KIND=dp),dimension(:, :),intent(inout),optional,target | vel, | ||
| LOGICAL,intent(in),optional | reset, | ||
| TYPE(cp_error_type),intent(inout) | error | ||
| ) |
perform rattle (enforcing of constraints on velocities) This routine can be easily adapted to performe rattle on whatever other vector different from forces..
| force_env | the force env to shake |
| dt | the dt for shake (if you are not interested in the velocities it can be any positive number) |
| shake_tol | the tolerance for shake |
| log_unit | if >0 then some information on the shake is printed, defaults to -1 |
| error | variable to control error logging, stopping,... see module cp_error_handling |
Definition at line 246 of file force_env_utils.f90.
References cp_subsys_types::cp_subsys_get(), CPPostcondition, error, force_env_types::force_env_get(), particle_set, constraint::rattle_control(), timings::timeset(), and particle_types::update_particle_set().
Referenced by md_vel_utils::setup_velocities().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine,public force_env_utils::force_env_shake | ( | TYPE(force_env_type),pointer | force_env, |
| REAL(kind=dp),intent(in),optional | dt, | ||
| REAL(kind=dp),intent(in) | shake_tol, | ||
| INTEGER,intent(in),optional | log_unit, | ||
| INTEGER,intent(in),optional | lagrange_mult, | ||
| LOGICAL,intent(in),optional | dump_lm, | ||
| REAL(KIND=dp),dimension(:, :),intent(inout),optional,target | pos, | ||
| REAL(KIND=dp),dimension(:, :),intent(inout),optional,target | vel, | ||
| LOGICAL,intent(in),optional | compold, | ||
| LOGICAL,intent(in),optional | reset, | ||
| TYPE(cp_error_type),intent(inout) | error | ||
| ) |
perform shake (enforcing of constraints)
| force_env | the force env to shake |
| dt | the dt for shake (if you are not interested in the velocities it can be any positive number) |
| shake_tol | the tolerance for shake |
| log_unit | if >0 then some information on the shake is printed, defaults to -1 |
| error | variable to control error logging, stopping,... see module cp_error_handling |
Definition at line 66 of file force_env_utils.f90.
References cp_subsys_types::cp_subsys_get(), CPPostcondition, error, force_env_types::force_env_get(), constraint_util::getold(), particle_set, timings::timeset(), and particle_types::update_particle_set().
Referenced by f77_interface::do_shake().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine,public force_env_utils::rescale_forces | ( | TYPE(force_env_type),pointer | force_env, |
| TYPE(cp_error_type),intent(inout) | error | ||
| ) |
Rescale forces if requested.
| force_env | the force env to shake |
| error | variable to control error logging, stopping,... see module cp_error_handling |
Definition at line 392 of file force_env_utils.f90.
References cp_subsys_types::cp_subsys_get(), force_env_types::force_env_get(), input_section_types::section_vals_get(), and timings::timeset().
Referenced by force_env_methods::force_env_calc_energy_force().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine,public force_env_utils::write_forces | ( | TYPE(particle_list_type),pointer | particles, |
| INTEGER,intent(in) | output_unit, | ||
| CHARACTER(LEN=*),intent(in) | label, | ||
| INTEGER,intent(in) | ndigits, | ||
| REAL(KIND=dp),dimension(3),intent(out) | total_force, | ||
| REAL(KIND=dp),dimension(3),intent(inout),optional | grand_total_force, | ||
| TYPE(cp_error_type),intent(inout) | error | ||
| ) |
| subroutine,public force_env_utils::write_stress_tensor | ( | REAL(KIND=dp),dimension(3, 3),intent(in) | pv_virial, |
| INTEGER,intent(in) | output_unit, | ||
| TYPE(cell_type),pointer | cell, | ||
| INTEGER,intent(in) | ndigits, | ||
| LOGICAL,intent(in) | numerical, | ||
| TYPE(cp_error_type),intent(inout) | error | ||
| ) |
Variable precision output of the stress tensor.
Definition at line 433 of file force_env_utils.f90.
References error, and physcon::pascal.
| CHARACTER(len=*),parameter,private force_env_utils::moduleN = 'force_env_utils' |
Definition at line 44 of file force_env_utils.f90.
1.7.3