62 integer :: n_1, n_2, n_3, n_basis
68 logical :: static_seed=.false.
70 character(len=20) :: lattice
74 real(
real64),
dimension(3,3) :: lattice_vectors
76 real(
real64),
dimension(3) :: basis_vectors
78 character(len=2),
dimension(:),
allocatable :: species_names
80 real(
real64),
dimension(:),
allocatable :: species_concentrations
82 integer(int64),
dimension(:),
allocatable :: species_numbers
84 character(len=50) :: interaction_file
86 integer :: interaction_range
90 procedure(
hamiltonian),
pointer, pass :: full_energy => null()
92 procedure(
neighbour),
pointer, pass :: nbr_energy => null()
94 procedure(
rand_site),
pointer, pass :: rdm_site => null()
161 character(len=20) :: mode
163 integer :: n_mc_steps
165 logical :: burn_in_start
169 integer :: n_burn_in_steps
172 integer :: n_sample_steps
174 logical :: calculate_energies
176 logical :: write_trajectory_energy
178 logical :: calculate_asro
180 logical :: write_trajectory_asro
183 integer :: n_sample_steps_asro
185 logical :: calculate_alro
188 integer :: n_sample_steps_alro
191 logical :: write_trajectory_xyz
194 integer :: n_sample_steps_trajectory
197 logical :: write_initial_config_xyz
200 logical :: write_initial_config_nc
203 logical :: write_final_config_xyz
206 logical :: write_final_config_nc
209 logical :: read_start_config_nc
211 character(len=144) :: start_config_file
253 character(len=100) :: outfile_ener, outfile_traj
280 integer :: num_windows
284 integer :: weight_update
320 integer :: num_windows
322 integer :: bin_overlap
334 integer :: radial_samples
366 integer(array_int),
dimension(:,:,:,:),
intent(in) :: config
387 function neighbour(setup, config, site_b, site_i, site_j, site_k)
394 integer(array_int),
dimension(:,:,:,:),
intent(in) :: config
397 integer,
intent(in) :: site_b, site_i, site_j, site_k
441 integer,
dimension(4),
intent(in) :: site
467 integer(array_int),
dimension(:,:,:,:) :: config
470 real(
real64),
intent(in) :: beta
Function for evaluating the energy of the simulation.
Function performing a trial Monte Carlo move on a config.
Function for getting a random neighbour of a lattice site.
Function for getting a random neighbour of a lattice site.
Function for getting a random lattice site.
integer, parameter, public array_int
integer, parameter real64
Longer "double" (64 bit, approx -1.8e308 to 1.8e308 and covering values down to about 2e-308 magnitud...
Derived type for parameters defining a Metropolis-Hastings run.
Derived type for nested sampling parameters.
Derived type for parameters specifying general simulation parameters which are common to all sampling...
Derived type for TMMC parameters.
Derived type for Wang-Landau sampling parameters.