Documentation for module tmc_tree_acceptance

tree nodes acceptance code is seperated in 3 parts, first the acceptance criteria, second the tree node acceptance handling, searching etc. and than the acceptance probability handling

source: tmc_tree_acceptance.F
Loading...

public Subroutines/Functions:

standard Monte Carlo and 2 potential acceptance check acceptance check of move from old(last accepted) to new configuration the sum of kinetic and potential energy is used acc(o->n)=min(1,exp( -beta*(H(n)-H(o)) ))
check acceptance of energy calculated element and related childs, when ready
updates the subtree acceptance probability the swap probabilities are handled within the certain checks of the global tree elements (pt references)
searching tree nodes to check for Markov Chain, elements are marked and stored in lists ... (main entry point)

SUBROUTINEacceptance_check(tree_element, parent_element, tmc_params, temperature, diff_pot_check, accept, rnd_nr, approx_ener)

standard Monte Carlo and 2 potential acceptance check acceptance check of move from old(last accepted) to new configuration the sum of kinetic and potential energy is used acc(o->n)=min(1,exp( -beta*(H(n)-H(o)) ))

Arguments:
TYPE(tree_type),
POINTER
:: tree_element new/actual configuration
TYPE(tree_type),
POINTER
:: parent_element last accepted configuration
POINTER
:: tmc_params TMC global parameters
REAL(dp)
:: temperature actual temperature configuration should be checked with
LOGICAL
:: diff_pot_check 2potential check or not?
LOGICAL
:: accept result (configuration accepted of rejected)
REAL(dp)
:: rnd_nr random number for acceptance check
LOGICAL,
OPTIONAL
:: approx_ener for NMC the approximated energies schould be used

SUBROUTINEcheck_acceptance_of_depending_subtree_nodes(tree_elem, tmc_env)

check acceptance of energy calculated element and related childs, when ready

Arguments:
TYPE(tree_type),
POINTER
:: tree_elem actual tree element with calculated energy
POINTER
:: tmc_env TMC environment parameters

SUBROUTINEcheck_elements_for_acc_prob_update(tree_elem, tmc_env)

updates the subtree acceptance probability the swap probabilities are handled within the certain checks of the global tree elements (pt references)

Arguments:
TYPE(tree_type),
POINTER
:: tree_elem sub tree element to update
POINTER
:: tmc_env TMC environment

SUBROUTINEtree_update(tmc_env, result_acc, something_updated)

searching tree nodes to check for Markov Chain, elements are marked and stored in lists ... (main entry point)

Arguments:
POINTER
:: tmc_env TMC environment
LOGICAL
:: result_acc checked configuration accepted? (result)
LOGICAL
:: something_updated ...