28 #include "./base/base_uses.f90"
35 CHARACTER(len=*),
PARAMETER,
PRIVATE :: moduleN =
'fist_main'
65 qmmm, qmmm_env, force_env_section, subsys_section, use_motion_section, prev_subsys)
66 TYPE(force_env_type),
POINTER :: force_env
67 TYPE(section_vals_type),
POINTER :: root_section
68 TYPE(mp_para_env_type),
POINTER :: para_env
69 TYPE(global_environment_type),
POINTER :: globenv
70 LOGICAL,
OPTIONAL :: qmmm
71 TYPE(qmmm_env_mm_type),
OPTIONAL,
POINTER :: qmmm_env
72 TYPE(section_vals_type),
POINTER :: force_env_section, subsys_section
73 LOGICAL,
INTENT(IN) :: use_motion_section
74 TYPE(cp_subsys_type),
OPTIONAL,
POINTER :: prev_subsys
76 CHARACTER(LEN=*),
PARAMETER :: routinen =
'fist_create_force_env'
80 TYPE(fist_environment_type),
POINTER :: fist_env
82 CALL timeset(routinen, handle)
84 IF (
PRESENT(qmmm))
THEN
90 IF (
PRESENT(qmmm_env))
THEN
91 CALL fist_env_set(fist_env, qmmm=myqmmm, qmmm_env=qmmm_env)
97 CALL fist_init(fist_env, root_section, para_env, force_env_section, &
98 subsys_section, use_motion_section, prev_subsys=prev_subsys)
101 para_env=para_env, globenv=globenv, &
102 force_env_section=force_env_section)
104 CALL timestop(handle)
types that represent a subsys, i.e. a part of the system
subroutine, public fist_env_create(fist_env, para_env)
allocates and intitializes a fist_env
subroutine, public fist_env_set(fist_env, atomic_kind_set, particle_set, ewald_pw, local_particles, local_molecules, molecule_kind_set, molecule_set, cell_ref, ewald_env, fist_nonbond_env, thermo, subsys, qmmm, qmmm_env, input, shell_model, shell_model_ad, exclusions, efield)
Set the FIST environment.
initialize fist environment
subroutine, public fist_init(fist_env, root_section, para_env, force_env_section, subsys_section, use_motion_section, prev_subsys)
reads the input and database file for fist
perform classical molecular dynamics and path integral simulations
subroutine, public fist_create_force_env(force_env, root_section, para_env, globenv, qmmm, qmmm_env, force_env_section, subsys_section, use_motion_section, prev_subsys)
Controls program flow for classical MD and path-integrals.
Interface for the force calculations.
subroutine, public force_env_create(force_env, root_section, para_env, globenv, fist_env, qs_env, meta_env, sub_force_env, qmmm_env, qmmmx_env, eip_env, pwdft_env, force_env_section, mixed_env, embed_env, nnp_env)
creates and initializes a force environment
Interface for the force calculations.
Define type storing the global information of a run. Keep the amount of stored data small....
Interface to the message passing library MPI.