Documentation for module force_field_types

Define all structures types related to force_fields

source: force_field_types.F
Loading...

public Types:

input_info_type
...
force_field_type
...
charmm_info_type
...
amber_info_type
...
gromos_info_type
...

public Subroutines/Functions:

1. Just DEALLOCATE all the stuff
Specific function to deallocate the inp_info
SUBROUTINE
init_ff_type (ff_type)
1. Just NULLIFY and zero all the stuff
SUBROUTINE
init_inp_info (inp_info)
Specific function to initialize the inp_info

public Types:

TYPE :: amber_info_type

...


POINTER :: bond_a ...
POINTER :: bond_b ...
REAL(dp),
POINTER :: bond_k ...
REAL(dp),
POINTER :: bond_r0 ...
POINTER :: bend_a ...
POINTER :: bend_b ...
POINTER :: bend_c ...
REAL(dp),
POINTER :: bend_k ...
REAL(dp),
POINTER :: bend_theta0 ...
POINTER :: torsion_a ...
POINTER :: torsion_b ...
POINTER :: torsion_c ...
POINTER :: torsion_d ...
REAL(dp),
POINTER :: torsion_k ...
INTEGER,
POINTER :: torsion_m ...
REAL(dp),
POINTER :: torsion_phi0 ...
POINTER :: nonbond_a ...
REAL(dp),
POINTER :: nonbond_eps ...
REAL(dp),
POINTER :: nonbond_rmin2 ...

TYPE :: charmm_info_type

...


POINTER :: bond_a ...
POINTER :: bond_b ...
REAL(dp),
POINTER :: bond_k ...
REAL(dp),
POINTER :: bond_r0 ...
POINTER :: bend_a ...
POINTER :: bend_b ...
POINTER :: bend_c ...
REAL(dp),
POINTER :: bend_k ...
REAL(dp),
POINTER :: bend_theta0 ...
POINTER :: ub_a ...
POINTER :: ub_b ...
POINTER :: ub_c ...
REAL(dp),
POINTER :: ub_k ...
REAL(dp),
POINTER :: ub_r0 ...
POINTER :: torsion_a ...
POINTER :: torsion_b ...
POINTER :: torsion_c ...
POINTER :: torsion_d ...
REAL(dp),
POINTER :: torsion_k ...
INTEGER,
POINTER :: torsion_m ...
REAL(dp),
POINTER :: torsion_phi0 ...
POINTER :: impr_a ...
POINTER :: impr_b ...
POINTER :: impr_c ...
POINTER :: impr_d ...
REAL(dp),
POINTER :: impr_k ...
REAL(dp),
POINTER :: impr_phi0 ...
POINTER :: nonbond_a ...
REAL(dp),
POINTER :: nonbond_eps ...
REAL(dp),
POINTER :: nonbond_rmin2 ...
POINTER :: nonbond_a_14 ...
REAL(dp),
POINTER :: nonbond_eps_14 ...
REAL(dp),
POINTER :: nonbond_rmin2_14 ...

TYPE :: force_field_type

...


LOGICAL
:: shift_cutoff ...
LOGICAL
:: do_nonbonded ...
LOGICAL
:: electrostatics ...
LOGICAL
:: multiple_potential ...
LOGICAL
:: ignore_missing_critical ...
INTEGER
:: ff_type ...
REAL(dp)
:: rcut_nb ...
REAL(dp)
:: ei_scale14 ...
REAL(dp)
:: vdw_scale14 ...
REAL(dp)
:: eps_spline ...
REAL(dp)
:: max_energy ...
REAL(dp)
:: emax_spline ...
REAL(dp)
:: rlow_nb ...
INTEGER
:: npoints ...
:: ff_file_name ...
POINTER :: inp_info ...
POINTER :: chm_info ...
POINTER :: gro_info ...
POINTER :: amb_info ...

TYPE :: gromos_info_type

...


INTEGER
:: ff_gromos_type ...
REAL(dp),
POINTER :: solvent_k ...
REAL(dp),
POINTER :: solvent_r0 ...
REAL(dp),
POINTER :: bond_k ...
REAL(dp),
POINTER :: bond_r0 ...
REAL(dp),
POINTER :: bend_k ...
REAL(dp),
POINTER :: bend_theta0 ...
REAL(dp),
POINTER :: torsion_k ...
INTEGER,
POINTER :: torsion_m ...
REAL(dp),
POINTER :: torsion_phi0 ...
REAL(dp),
POINTER :: impr_k ...
REAL(dp),
POINTER :: impr_phi0 ...
POINTER :: nonbond_a ...
REAL(dp),
POINTER :: nonbond_c6 ...
REAL(dp),
POINTER :: nonbond_c12 ...
POINTER :: nonbond_a_14 ...
REAL(dp),
POINTER :: nonbond_c6_14 ...
REAL(dp),
POINTER :: nonbond_c12_14 ...

TYPE :: input_info_type

...


POINTER :: charge_atm ...
REAL(dp),
POINTER :: charge ...
POINTER :: apol_atm ...
REAL(dp),
POINTER :: apol ...
POINTER :: cpol_atm ...
REAL(dp),
POINTER :: cpol ...
INTEGER,
POINTER :: bond_kind ...
POINTER :: bond_a ...
POINTER :: bond_b ...
REAL(dp),
POINTER :: bond_k ...
REAL(dp),
POINTER :: bond_r0 ...
REAL(dp),
POINTER :: bond_cs ...
INTEGER,
POINTER :: bend_kind ...
POINTER :: bend_a ...
POINTER :: bend_b ...
POINTER :: bend_c ...
REAL(dp),
POINTER :: bend_k ...
REAL(dp),
POINTER :: bend_theta0 ...
REAL(dp),
POINTER :: bend_cb ...
REAL(dp),
POINTER, DIMENSION(:) :: bend_r012 ...
REAL(dp),
POINTER, DIMENSION(:) :: bend_r032 ...
REAL(dp),
POINTER, DIMENSION(:) :: bend_kbs12 ...
REAL(dp),
POINTER, DIMENSION(:) :: bend_kbs32 ...
REAL(dp),
POINTER, DIMENSION(:) :: bend_kss ...
POINTER, DIMENSION(:) :: bend_legendre ...
INTEGER,
POINTER :: ub_kind ...
POINTER :: ub_a ...
POINTER :: ub_b ...
POINTER :: ub_c ...
REAL(dp),
POINTER :: ub_k ...
REAL(dp),
POINTER :: ub_r0 ...
INTEGER,
POINTER :: torsion_kind ...
POINTER :: torsion_a ...
POINTER :: torsion_b ...
POINTER :: torsion_c ...
POINTER :: torsion_d ...
REAL(dp),
POINTER :: torsion_k ...
INTEGER,
POINTER :: torsion_m ...
REAL(dp),
POINTER :: torsion_phi0 ...
INTEGER,
POINTER :: impr_kind ...
POINTER :: impr_a ...
POINTER :: impr_b ...
POINTER :: impr_c ...
POINTER :: impr_d ...
REAL(dp),
POINTER :: impr_k ...
REAL(dp),
POINTER :: impr_phi0 ...
INTEGER,
POINTER :: opbend_kind ...
POINTER :: opbend_a ...
POINTER :: opbend_b ...
POINTER :: opbend_c ...
POINTER :: opbend_d ...
REAL(dp),
POINTER :: opbend_k ...
REAL(dp),
POINTER :: opbend_phi0 ...
POINTER :: nonbonded ...
POINTER :: nonbonded14 ...
DIMENSION(:), POINTER :: shell_list ...
DIMENSION(:), POINTER :: damping_list ...

SUBROUTINEdeallocate_ff_type(ff_type)

1. Just DEALLOCATE all the stuff

Arguments:
INTENT(inout)
:: ff_type ...

SUBROUTINEdeallocate_inp_info(inp_info)

Specific function to deallocate the inp_info

Arguments:
POINTER
:: inp_info ...

SUBROUTINEinit_ff_type(ff_type)

1. Just NULLIFY and zero all the stuff

Arguments:
INTENT(inout)
:: ff_type ...

SUBROUTINEinit_inp_info(inp_info)

Specific function to initialize the inp_info

Arguments:
POINTER
:: inp_info ...