| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| integer, | public, | parameter | :: | mxrdln | = | 1024 |
Maximum length of character string for input line buffer. |
| integer, | public, | parameter | :: | mx_mcmtyp | = | 5 |
Maximum number of MC move types. Type 1: backbone pivot, type 2: side chain crankshaft, type 3: side chain pivot, type 4: backbone restricted pivot, type 5: displacement |
| real(kind=rp), | public, | dimension(3) | :: | smbx_a |
Lattice vector of simulation box along x-axis. |
||
| real(kind=rp), | public, | dimension(3) | :: | smbx_b |
Lattice vector of simulation box along y-axis. |
||
| real(kind=rp), | public, | dimension(3) | :: | smbx_c |
Lattice vector of simulation box along z-axis. |
||
| integer, | public | :: | imcon | = | 0 |
Flag specifying boundary condition on the simulation box. |
|
| integer, | public | :: | num_atom_types | = | 0 |
Number of atom_types |
|
| type(atm_specs_t), | public, | dimension(:), allocatable | :: | atom_specs |
(num_atom_types,) array. |
||
| integer, | public, | dimension(:), allocatable | :: | atom_pop |
(num_atom_types,) array. Population of atoms of each type. |
||
| integer, | public | :: | num_atoms | = | 0 |
Number of atoms |
|
| integer, | public, | dimension(:), allocatable | :: | atoms |
(num_atoms,) array. For atom i, its type at = atoms(i), charge charge(i), position coordinates(:,i), orientation (if the style requires) orientations(:,i). |
||
| real(kind=rp), | public, | dimension(:), allocatable | :: | charge |
(num_atoms,) array. |
||
| real(kind=rp), | public, | dimension(:,:), allocatable | :: | coordinates |
(3, num_atoms) array |
||
| real(kind=rp), | public, | dimension(:,:), allocatable | :: | orientation |
(4, num_atoms) array |
||
| integer, | public | :: | num_bond_types | = | 0 |
Number of bond_types |
|
| type(ia_specs_t), | public, | dimension(:), allocatable | :: | bond_specs |
(num_bond_types,) array |
||
| integer, | public | :: | num_bonds | = | 0 |
Total number of bonds. |
|
| integer, | public, | dimension(:,:), allocatable | :: | bonds |
(3, num_bonds) array. Bond i is of type bt = bonds(1,i), directed from atom bonds(2,i) to bonds(3,i). |
||
| integer, | public | :: | num_angle_types | = | 0 |
Number of angle_types |
|
| type(ia_specs_t), | public, | dimension(:), allocatable | :: | angle_specs |
(num_angle_types,) array |
||
| integer, | public | :: | num_angles | = | 0 |
Number of angles |
|
| integer, | public, | dimension(:,:), allocatable | :: | angles |
(4, num_angles) array. Angle i is of type ant = angles(1,i), incident to atoms angles(2,i), angles(3,i), and angles(4,i). |
||
| integer, | public | :: | num_dihedral_types | = | 0 |
Number of dihedral_types |
|
| type(ia_specs_t), | public, | dimension(:), allocatable | :: | dihedral_specs |
(num_dihedral_types,) array |
||
| integer, | public | :: | num_dihedrals | = | 0 |
Number of dihedrals |
|
| integer, | public, | dimension(:,:), allocatable | :: | dihedrals |
(5, num_dihedrals) array. Dihedral i is of type dt = dihedrals(1,i), incident to atoms dihedrals(2,i), dihedrals(3,i), dihedrals(4,i), and dihedrals(5,i). |
||
| integer, | public | :: | num_branches | = | 0 |
Total number of branches (including the backbone) |
|
| integer, | public, | dimension(:,:), allocatable | :: | branches |
(3,num_branches) array. Branch i is tethered to atom branches(1,i), contains branches(2,i) atoms, with the beginning atom index branches(3,i). |
||
| integer, | public | :: | num_molecule_types | = | 0 |
Number of molecule_types |
|
| character(len=8), | public, | dimension(:), allocatable | :: | molecule_names |
(num_molecule_types,) array |
||
| integer, | public, | dimension(:), allocatable | :: | molecule_pop |
(num_molecule_types,) array |
||
| integer, | public | :: | num_molecules | = | 0 |
Number of molecules |
|
| integer, | public, | dimension(:,:), allocatable | :: | molecules |
(9,num_molecules) array. For molecule i, its type mt = molecules(1,i), containing molecules(2,i) atoms with beginning index molecules(3,i), molecules(4,i) bonds with beginning index molecules(5,i), molecules(6,i) angles with beginning index molecules(7,i), and molecules(8,i) dihedrals with beginning index molecules(9,i). |
||
| integer, | public | :: | num_tethers | = | 0 |
Number of tethers |
|
| type(tether_t), | public, | dimension(:), allocatable | :: | tethers |
(num_tethers,) array |
||
| integer, | public | :: | num_vdw_types | = | 0 |
Number of vdw_types |
|
| integer, | public, | dimension(:,:), allocatable | :: | vdw_pairs |
(2, num_vdw_types) array. Stores atom type of interacting pairs, such that at_i >= at_j. |
||
| type(ia_specs_t), | public, | dimension(:), allocatable | :: | vdw_specs |
(num_vdw_types,) array. |
||
| integer, | public | :: | num_externals | = | 0 |
Number of external fields |
|
| type(extrn_field_t), | public, | dimension(:), allocatable | :: | extrn_fields |
(num_externals,) array |
||
| logical, | public | :: | leql | = | .true. |
Is the system equilibrating? {T, F} |
|
| logical, | public | :: | lrevive | = | .false. |
Is this a restart run? {T, F}. |
|
| integer, | public | :: | nts |
Counter for MC cycles |
|||
| integer, | public | :: | nblks |
Counter for MC blocks |
|||
| integer, | public | :: | nts_log | = | 1 |
Interval for logging (in MC cycles) |
|
| integer, | public | :: | nts_dump | = | 1 |
Interval for dumping to revive file (in MC cycles) |
|
| integer, | public | :: | nts_eql | = | 0 |
Number of MC cycles for equilibration |
|
| integer, | public | :: | nts_eql_samp | = | 1 |
Sampling interval during equilibration (in MC cycles) |
|
| integer, | public | :: | block_size | = | 100 |
Number of MC cycles in each block |
|
| integer, | public | :: | nblks_sim | = | 0 |
Total number of blocks in production run |
|
| logical, | public | :: | use_mc_pvt | = | .false. |
Use MC pivot moves? {T, F} |
|
| logical, | public | :: | use_mc_res_pvt | = | .false. |
Use MC restricted pivot moves? {T, F} |
|
| logical, | public | :: | use_mc_dspl | = | .false. |
Use MC displacement moves? {T, F}. |
|
| logical, | public | :: | use_mc_crnk | = | .false. |
Use MC crankshaft moves? {T, F}. If side chains are present, crankshaft moves will operate only on side chain atoms. Otherwise, they will be performed on the backbone atoms. |
|
| logical, | public | :: | use_mc_sc_pvt | = | .false. |
Use MC pivot (only side chains) moves? {T, F} |
|
| logical, | public | :: | use_verlet_tab | = | .false. |
Use Verlet neighbor table? {T, F} |
|
| real(kind=rp), | public | :: | mcm_mxdspl | = | 0.0_rp |
Maximum displacement for MC displacement move. |
|
| real(kind=rp), | public | :: | rcutoff | = | 0.0_rp |
Maximum cutoff for short-ranged forces |
|
| real(kind=rp), | public | :: | tskin | = | 0.0_rp |
Thickness of the skin sphere (same for all) |
|
| character(len=:), | public, | allocatable | :: | fn_cfg |
Name of the file containing the initial configuration |
||
| character(len=:), | public, | allocatable | :: | fn_revive |
Name of the revive file |
||
| character(len=:), | public, | allocatable | :: | fn_traj |
Name of the trajectory file |
||
| character(len=:), | public, | allocatable | :: | fn_stats |
Name of the statistics file |
||
| type(trajectory_t), | public | :: | traj |
Trajectory object |
|||
| character(len=8), | public | :: | job_tag | = | '' |
A tag useful for array jobs, available only as a command line argument |
|
| logical, | public | :: | read_seed | = | .false. |
{T, F} Whether to initialize the random number generator by reading a seed from
a file. If |
|
| logical, | public | :: | write_seed | = | .false. |
{T, F} Whether to write the random number generator seed. If
|
|
| logical, | public | :: | write_eql_stats | = | .false. |
During equilibration, should the statistics file be written? {T, F} |
|
| logical, | public | :: | write_traj | = | .false. |
Should the trajectory be written to file? {T, F} |
|
| real(kind=rp), | public | :: | energy_bond | = | 0.0_rp |
Bond energy |
|
| real(kind=rp), | public | :: | energy_angle | = | 0.0_rp |
Angle energy |
|
| real(kind=rp), | public | :: | energy_dihedral | = | 0.0_rp |
Dihedral energy |
|
| real(kind=rp), | public | :: | energy_vdw | = | 0.0_rp |
vdw interaction energy |
|
| real(kind=rp), | public | :: | energy_tether | = | 0.0_rp |
Energetic contribution from tethers |
|
| real(kind=rp), | public | :: | energy_external | = | 0.0_rp |
Energetic contribution from external fields |
|
| integer, | public, | dimension(mx_mcmtyp) | :: | num_mc_moves | = | 0 |
Number of MC moves of each type in an MC cycle. |
| integer(kind=ip_long), | public, | dimension(2,mx_mcmtyp) | :: | mc_rec | = | 0 |
Number of attempts (first element) & accepts (second element) of MC moves. See above for type details. |
| integer, | public | :: | excluded_atoms | = | 0 |
Control for excluded atoms in vdw calculation. No exclusion: 0, exclude 1-ring bonded neighbors: 1, exclude 2-ring bonded neighbors: 2, exclude 3-ring bonded neighbors: 3. |
|
| logical, | public | :: | lvdw | = | .false. |
Whether to calculate VDW interactions |
|
| logical, | public | :: | lelectrostatics | = | .false. |
Whether to calculate electrostatic interactions |