Documentation for module glbopt_mincrawl

Routines for the Minima Crawling global optimization scheme

source: glbopt_mincrawl.F
Loading...

public Types:

mincrawl_type
...

public Subroutines/Functions:

SUBROUTINE
mincrawl_finalize (this)
Finalizes master for Minima Crawling
Initializes master for Minima Crawling
SUBROUTINE
mincrawl_steer (this, report, cmd)
Central steering routine of Minima Crawling

public Types:

TYPE :: mincrawl_type

...


:: history ...
DIMENSION(:), ALLOCATABLE :: workers ...
DIMENSION(:), ALLOCATABLE :: minimas ...
REAL(dp)
:: tempstep_base = 0 ...
INTEGER
:: tempstep_max = 0 ...
REAL(dp)
:: tempdist_init_width = 0 ...
REAL(dp)
:: tempdist_update_width = 0 ...
REAL(dp)
:: tempdist_update_height = 0 ...
INTEGER
:: esc_hist_len = 0 ...
INTEGER
:: tempstep_init = 0 ...
REAL(dp),
DIMENSION(:), ALLOCATABLE :: tempdist_init ...
INTEGER
:: n_minima = 0 ...
INTEGER
:: n_workers = 0 ...
INTEGER
:: worker_per_min = 0 ...
INTEGER
:: iw = 0 ...
INTEGER
:: minima_traj_unit = 0 ...
POINTER :: mincrawl_section => NULL() ...
POINTER :: rng_stream => NULL() ...
DIMENSION(:), POINTER :: particle_set => NULL() ...

SUBROUTINEmincrawl_finalize(this)

Finalizes master for Minima Crawling

Arguments:
:: this ...

SUBROUTINEmincrawl_init(this, glbopt_section, n_workers, iw, particle_set)

Initializes master for Minima Crawling

Arguments:
:: this ...
POINTER
:: glbopt_section ...
INTEGER,
INTENT(in)
:: n_workers ...
INTEGER,
INTENT(in)
:: iw ...
POINTER
:: particle_set(:) ...

SUBROUTINEmincrawl_steer(this, report, cmd)

Central steering routine of Minima Crawling

Arguments:
:: this ...
:: report ...
:: cmd ...

private Parameters/Types:

private Types:

TYPE :: minima_p_type

...


POINTER :: p => NULL() ...

TYPE :: minima_type

...


INTEGER
:: id = -1 ...
REAL(dp),
DIMENSION(:), ALLOCATABLE :: pos ...
REAL(dp),
DIMENSION(:), ALLOCATABLE :: escape_hist ...
REAL(dp),
DIMENSION(:), ALLOCATABLE :: tempdist ...
REAL(dp)
:: epot = -1.0 ...
:: fp ...
LOGICAL
:: disabled = .FALSE. ...
INTEGER
:: n_active = 0 ...
INTEGER
:: n_sampled = 0 ...

TYPE :: worker_state_type

...


POINTER :: start_minima => NULL() ...
INTEGER
:: tempstep = 0 ...
INTEGER
:: iframe = 1 ...