Documentation for module thermostat_utils

Utilities for thermostats

source: thermostat_utils.F
Loading...

public Subroutines/Functions:

Handles the communication for thermostats (2D array)
...
...
Calculates kinetic energy and potential energy of the csvr and gle thermostats
Calculates kinetic energy and potential energy of the nhc variables
Calculates energy associated with a thermostat
...
...
...
...
Prints status of all thermostats during an MD run
...
...
...
...
...

SUBROUTINEcommunication_thermo_low2(array, number1, number2, para_env)

Handles the communication for thermostats (2D array)

Arguments:
INTEGER,
INTENT(inout)
:: array(:,:) ...
INTEGER,
INTENT(in)
:: number1 ...
INTEGER,
INTENT(in)
:: number2 ...
POINTER
:: para_env ...

SUBROUTINEcompute_degrees_of_freedom(thermostats, cell, simpar, molecule_kind_set, local_molecules, molecules, particles, print_section, region_sections, gci, region, qmmm_env)

...

Arguments:
POINTER
:: thermostats ...
TYPE(cell_type),
POINTER
:: cell ...
POINTER
:: simpar ...
POINTER
:: molecule_kind_set(:) ...
POINTER
:: local_molecules ...
POINTER
:: molecules ...
POINTER
:: particles ...
POINTER
:: print_section ...
POINTER
:: region_sections ...
POINTER
:: gci ...
INTEGER,
INTENT(in)
:: region ...
POINTER
:: qmmm_env ...

SUBROUTINEcompute_nfree(cell, simpar, molecule_kind_set, print_section, particles, gci)

...

Arguments:
TYPE(cell_type),
POINTER
:: cell ...
POINTER
:: simpar ...
POINTER
:: molecule_kind_set(:) ...
POINTER
:: print_section ...
POINTER
:: particles ...
POINTER
:: gci ...

SUBROUTINEget_kin_energies(map_info, loc_num, glob_num, thermo_energy, thermostat_kin, para_env, array_pot, array_kin)

Calculates kinetic energy and potential energy of the csvr and gle thermostats

Arguments:
POINTER
:: map_info ...
INTEGER,
INTENT(in)
:: loc_num ...
INTEGER,
INTENT(in)
:: glob_num ...
REAL(dp),
INTENT(in)
:: thermo_energy(:) ...
REAL(dp),
INTENT(out)
:: thermostat_kin ...
POINTER
:: para_env ...
REAL(dp),
OPTIONAL, POINTER
:: array_pot(:) ...
REAL(dp),
OPTIONAL, POINTER
:: array_kin(:) ...

SUBROUTINEget_nhc_energies(nhc, nhc_pot, nhc_kin, para_env, array_kin, array_pot)

Calculates kinetic energy and potential energy of the nhc variables

Arguments:
POINTER
:: nhc ...
REAL(dp),
INTENT(out)
:: nhc_pot ...
REAL(dp),
INTENT(out)
:: nhc_kin ...
POINTER
:: para_env ...
REAL(dp),
OPTIONAL, POINTER
:: array_kin(:) ...
REAL(dp),
OPTIONAL, POINTER
:: array_pot(:) ...

SUBROUTINEget_thermostat_energies(thermostat, thermostat_pot, thermostat_kin, para_env, array_pot, array_kin)

Calculates energy associated with a thermostat

Arguments:
POINTER
:: thermostat ...
REAL(dp),
INTENT(out)
:: thermostat_pot ...
REAL(dp),
INTENT(out)
:: thermostat_kin ...
POINTER
:: para_env ...
REAL(dp),
OPTIONAL, POINTER
:: array_pot(:) ...
REAL(dp),
OPTIONAL, POINTER
:: array_kin(:) ...

SUBROUTINEke_region_baro(map_info, npt, group)

...

Arguments:
POINTER
:: map_info ...
INTENT(inout)
:: npt(:,:) ...
INTEGER,
INTENT(in)
:: group ...

SUBROUTINEke_region_particles(map_info, particle_set, molecule_kind_set, local_molecules, molecule_set, group, vel)

...

Arguments:
POINTER
:: map_info ...
POINTER
:: particle_set(:) ...
POINTER
:: molecule_kind_set(:) ...
POINTER
:: local_molecules ...
POINTER
:: molecule_set(:) ...
INTEGER,
INTENT(in)
:: group ...
REAL(dp),
INTENT(inout),
OPTIONAL
:: vel(:,:) ...

SUBROUTINEke_region_shells(map_info, particle_set, atomic_kind_set, local_particles, group, core_particle_set, shell_particle_set, core_vel, shell_vel)

...

Arguments:
POINTER
:: map_info ...
POINTER
:: particle_set(:) ...
POINTER
:: atomic_kind_set(:) ...
POINTER
:: local_particles ...
INTEGER,
INTENT(in)
:: group ...
OPTIONAL, POINTER
:: core_particle_set(:) ...
OPTIONAL, POINTER
:: shell_particle_set(:) ...
REAL(dp),
INTENT(inout),
OPTIONAL
:: core_vel(:,:) ...
REAL(dp),
INTENT(inout),
OPTIONAL
:: shell_vel(:,:) ...

SUBROUTINEmomentum_region_particles(map_info, particle_set, molecule_kind_set, local_molecules, molecule_set, group, vel)

...

Arguments:
POINTER
:: map_info ...
POINTER
:: particle_set(:) ...
POINTER
:: molecule_kind_set(:) ...
POINTER
:: local_molecules ...
POINTER
:: molecule_set(:) ...
INTEGER,
INTENT(in)
:: group ...
REAL(dp),
INTENT(inout),
OPTIONAL
:: vel(:,:) ...

SUBROUTINEsetup_adiabatic_thermostat_info(thermostat_info, molecule_kind_set, local_molecules, molecules, particles, region, ensemble, nfree, shell, region_sections, qmmm_env)

...

Arguments:
POINTER
:: thermostat_info ...
POINTER
:: molecule_kind_set(:) ...
POINTER
:: local_molecules ...
POINTER
:: molecules ...
POINTER
:: particles ...
INTEGER,
INTENT(in)
:: region ...
INTEGER,
INTENT(in)
:: ensemble ...
INTEGER,
INTENT(inout),
OPTIONAL
:: nfree ...
LOGICAL,
INTENT(in),
OPTIONAL
:: shell ...
POINTER
:: region_sections ...
POINTER
:: qmmm_env ...

SUBROUTINEsetup_thermostat_info(thermostat_info, molecule_kind_set, local_molecules, molecules, particles, region, ensemble, nfree, shell, region_sections, qmmm_env)

...

Arguments:
POINTER
:: thermostat_info ...
POINTER
:: molecule_kind_set(:) ...
POINTER
:: local_molecules ...
POINTER
:: molecules ...
POINTER
:: particles ...
INTEGER,
INTENT(in)
:: region ...
INTEGER,
INTENT(in)
:: ensemble ...
INTEGER,
INTENT(inout),
OPTIONAL
:: nfree ...
LOGICAL,
INTENT(in),
OPTIONAL
:: shell ...
POINTER
:: region_sections ...
POINTER
:: qmmm_env ...

SUBROUTINEvel_rescale_baro(map_info, npt)

...

Arguments:
POINTER
:: map_info ...
INTENT(inout)
:: npt(:,:) ...

SUBROUTINEvel_rescale_particles(map_info, molecule_kind_set, molecule_set, particle_set, local_molecules, shell_adiabatic, shell_particle_set, core_particle_set, vel, shell_vel, core_vel)

...

Arguments:
POINTER
:: map_info ...
POINTER
:: molecule_kind_set(:) ...
POINTER
:: molecule_set(:) ...
POINTER
:: particle_set(:) ...
POINTER
:: local_molecules ...
LOGICAL,
INTENT(in)
:: shell_adiabatic ...
OPTIONAL, POINTER
:: shell_particle_set(:) ...
OPTIONAL, POINTER
:: core_particle_set(:) ...
REAL(dp),
INTENT(inout),
OPTIONAL
:: vel(:,:) ...
REAL(dp),
INTENT(inout),
OPTIONAL
:: shell_vel(:,:) ...
REAL(dp),
INTENT(inout),
OPTIONAL
:: core_vel(:,:) ...

SUBROUTINEvel_rescale_shells(map_info, atomic_kind_set, particle_set, local_particles, shell_particle_set, core_particle_set, shell_vel, core_vel, vel)

...

Arguments:
POINTER
:: map_info ...
POINTER
:: atomic_kind_set(:) ...
POINTER
:: particle_set(:) ...
POINTER
:: local_particles ...
OPTIONAL, POINTER
:: shell_particle_set(:) ...
OPTIONAL, POINTER
:: core_particle_set(:) ...
REAL(dp),
INTENT(inout),
OPTIONAL
:: shell_vel(:,:) ...
REAL(dp),
INTENT(inout),
OPTIONAL
:: core_vel(:,:) ...
REAL(dp),
INTENT(inout),
OPTIONAL
:: vel(:,:) ...