Documentation for module glbopt_history

History of minima, calulates, stores and compares fingerprints of minima. Used by Minima Hopping and Minima Crawling.

source: glbopt_history.F
Loading...

public Types:

history_type
...
history_fingerprint_type
...

public Subroutines/Functions:

Addes a new fingerprints to the history. Optionally, an abitrary id can be stored alongside the fingerprint.
Finalizes a history.
Calculates a fingerprint for a given configuration.
Checks if two given fingerprints match.
Initializes a history.
Checks if a given fingerprints is contained in the history.

public Types:

TYPE :: history_fingerprint_type

...


REAL(dp)
:: epot = 0.0 ...
REAL(dp),
DIMENSION(:), ALLOCATABLE :: goedecker ...

TYPE :: history_type

...


DIMENSION(:), POINTER :: entries => NULL() ...
INTEGER
:: length = 0 ...
INTEGER
:: iw = -1 ...
REAL(dp)
:: e_precision = 0.0 ...
REAL(dp)
:: fp_precision = 0.0 ...

SUBROUTINEhistory_add(history, fingerprint, id)

Addes a new fingerprints to the history. Optionally, an abitrary id can be stored alongside the fingerprint.

Arguments:
INTENT(inout)
:: history ...
INTENT(in)
:: fingerprint ...
INTEGER,
INTENT(in),
OPTIONAL
:: id ...

SUBROUTINEhistory_finalize(history)

Finalizes a history.

Arguments:
:: history ...

FUNCTIONhistory_fingerprint(epot, pos)

Calculates a fingerprint for a given configuration.

Return Value ::
Arguments:
REAL(dp),
INTENT(in)
:: epot ...
REAL(dp),
INTENT(in)
:: pos(:) ...

FUNCTIONhistory_fingerprint_match(history, fp1, fp2)

Checks if two given fingerprints match.

Return Value ::
LOGICAL
Arguments:
INTENT(in)
:: history ...
INTENT(in)
:: fp1 ...
INTENT(in)
:: fp2 ...

SUBROUTINEhistory_init(history, history_section, iw)

Initializes a history.

Arguments:
INTENT(inout)
:: history ...
POINTER
:: history_section ...
INTEGER
:: iw ...

SUBROUTINEhistory_lookup(history, fingerprint, found, id)

Checks if a given fingerprints is contained in the history.

Arguments:
INTENT(in)
:: history ...
INTENT(in)
:: fingerprint ...
LOGICAL,
INTENT(out)
:: found ...
INTEGER,
INTENT(out),
OPTIONAL
:: id ...

private Parameters/Types:

private Types:

TYPE :: history_entry_type

...


POINTER :: p => NULL() ...
INTEGER
:: id = -1 ...