# TMC

References: Schonherr2014

A parallelized MC algorithm, presampling the configurations, espacially the Markov chain elements [Edit on GitHub]

Subsections

- MOVE_TYPE
- NMC_MOVES
- TMC_ANALYSIS
- TMC_ANALYSIS_FILES

## Keywords

- ALL_CONF_FILE_NAME

- DOT_TREE

- ENERGY_FILE_NAME

- ESIMATE_ACC_PROB

- GROUP_ANALYSIS_NR

- GROUP_CC_SIZE

- GROUP_ENERGY_NR

- GROUP_ENERGY_SIZE

- INFO_OUT_STEP_SIZE

- MOVE_CENTER_OF_MASS

- NR_TEMPERATURE

- NUM_MC_ELEM

- NUM_MV_ELEM_IN_CELL

- PRESSURE

- PRINT_CELL

- PRINT_COORDS

- PRINT_DIPOLE

- PRINT_ENERGIES

- PRINT_FORCES

- PRINT_ONLY_ACC

- PRINT_TEST_OUTPUT

- RESTART_IN

- RESTART_OUT

- RESULT_LIST_IN_MEMORY

- RND_DETERMINISTIC

- SPECULATIVE_CANCELING

- SUB_BOX

- TASK_TYPE

- TEMPERATURE

- USE_SCF_ENERGY_INFO

- VOLUME_ISOTROPIC

## Keyword descriptions

ALL_CONF_FILE_NAME: string

  Usage: ALL_CONF_FILE_NAME {filename}

  file name for printing every single calculated configuration (e.g. for fitting). [Edit on GitHub]

DOT_TREE: string

  Lone keyword: `tmc_tree.dot`

  Usage: DOT_TREE {filename}

  file name for GrapgViz dot file [Edit on GitHub]

ENERGY_FILE_NAME: string

  Usage: ENERGY_FILE_NAME {filename}

  input file name for the exact potential energy calculation. [Edit on GitHub]

ESIMATE_ACC_PROB: logical = T

  Usage: ESIMATE_ACC_PROB {LOGICAL}

  set the estimation of the acceptance probability using run time information of the energy [Edit on GitHub]

GROUP_ANALYSIS_NR: integer = 1

  Lone keyword: `1`

  Usage: GROUP_ANALYSIS_NR {INTEGER}

  amount of groups (cores) for analysing the configurations [Edit on GitHub]

GROUP_CC_SIZE: integer = 0

  Usage: GROUP_CC_SIZE {INTEGER}

  amount of of CPUs per group for configurational change [Edit on GitHub]

GROUP_ENERGY_NR: integer = 1

  Usage: GROUP_ENERGY_NR {INTEGER}

  amount of groups for exact energy calculation [Edit on GitHub]

GROUP_ENERGY_SIZE: integer = 1

  Usage: GROUP_ENERGY_SIZE {INTEGER}

  amount of CPUs per group for energy calculation [Edit on GitHub]

INFO_OUT_STEP_SIZE: integer = 1

  Usage: INFO_OUT_STEP_SIZE {INTEGER}

  the number the amount of calculated configurations between to output printings. [Edit on GitHub]

MOVE_CENTER_OF_MASS: logical = F

  Lone keyword: `T`

  Usage: MOVE_CENTER_OF_MASS {LOGICAL}

  Moves the center of mass of defined molecules (in volume moves) [Edit on GitHub]

NR_TEMPERATURE: integer = 1

  Usage: NR_TEMPERATURE {INTEGER}

  the number of different temperature for parallel tempering [Edit on GitHub]

NUM_MC_ELEM: integer = -1

  Usage: NUM_MC_ELEM {INTEGER}

  the minimum Markov Chain elements, to be sampled [Edit on GitHub]

NUM_MV_ELEM_IN_CELL: integer = 0

  Usage: NUM_MV_ELEM_IN_CELL {INTEGER}

  the number of elements (atoms or molecules) moves in cell or sub box. if 0 all elements are moved once in a MC move [Edit on GitHub]

PRESSURE: real = -1.00000000E+000

  Usage: PRESSURE {REAL}

  enables NPT calculation with specified constant pressure [bar] [Edit on GitHub]

PRINT_CELL: logical = F

  Lone keyword: `T`

  Usage: PRINT_CELL {LOGICAL}

  printing the cell vectors of the Markov Chain elements [Edit on GitHub]

PRINT_COORDS: logical = T

  Lone keyword: `T`

  Usage: PRINT_COORDS {LOGICAL}

  printing coordinates of the Markov Chain elements [Edit on GitHub]

PRINT_DIPOLE: logical = F

  Lone keyword: `T`

  Usage: PRINT_DIPOLE {LOGICAL}

  enables the calculation and printing the exact cell dipoles (only for QS methods) [Edit on GitHub]

PRINT_ENERGIES: logical = F

  Lone keyword: `T`

  Usage: PRINT_ENERGIES {LOGICAL}

  printing the different calculated energies (approximated, scf and exact) [Edit on GitHub]

PRINT_FORCES: logical = F

  Lone keyword: `T`

  Usage: PRINT_FORCES {LOGICAL}

  printing forces of the Markov Chain elements [Edit on GitHub]

PRINT_ONLY_ACC: logical = T

  Lone keyword: `T`

  Usage: PRINT_ONLY_ACC {LOGICAL}

  printing only accepted elements of the Markov Chain. [Edit on GitHub]

PRINT_TEST_OUTPUT: logical = F

  Lone keyword: `T`

  Usage: PRINT_TEST_OUTPUT {LOGICAL}

  printing different values for regtest comparison [Edit on GitHub]

RESTART_IN: string

  Lone keyword: `xxx_unspecified_xxx`

  Usage: RESTART_IN {FILENAME}

  if existing use the last restart file [Edit on GitHub]

RESTART_OUT: integer = -1

  Lone keyword: `-9`

  Usage: RESTART_OUT {INTEGER}

  Defines the frequency to write restart files. If no frequency is specified (lone keyword) the restart file is written at the end (only). If the value is 0, no restart file is written at all. The frequency specifies is related to the calculated Markov chain elements [Edit on GitHub]

RESULT_LIST_IN_MEMORY: logical = F

  Usage: RESULT_LIST_IN_MEMORY {LOGICAL}

  enables the storing of the whole Markov Chain [Edit on GitHub]

RND_DETERMINISTIC: integer = -1

  Usage: RND_DETERMINISTIC {INTEGER}

  the initialisation number for the random number generator [Edit on GitHub]

SPECULATIVE_CANCELING: logical = T

  Usage: SPECULATIVE_CANCELING {LOGICAL}

  enables or disables the speculative canceling. If we have further knowledge of acceptance probabilities using parent acceptance or the estimated energy. [Edit on GitHub]

SUB_BOX: real[ ] = -1.00000000E+000

  Usage: SUB_BOX {REAL} {REAL} {REAL} OR SUB_BOX {REAL} for cubic

  specifies the size ot the sub box. Standard moves only within subbox of random position, to compensate the potential difference of the approximate potential. [Edit on GitHub]

TASK_TYPE: string

  Lone keyword: `xxx_unspecified_xxx`

  Usage: TASK_TYPE {OPTION}

  Select specialized types. Selectable: IDEAL_GAS (constant configuration energy E=0.0) [Edit on GitHub]

TEMPERATURE: real[ ] = 3.30000000E+002

  Usage: TEMPERATURE {REAL} |OR| TEMPERATURE {REAL} {REAL} …

  one temperature OR for parallel tempering: Tmin Tmax or each temperature T1 T2 T3 … If every single temperature is specified, do NOT use keyword NR_TEMPERATURE [Edit on GitHub]

USE_SCF_ENERGY_INFO: logical = F

  Lone keyword: `T`

  Usage: USE_SCF_ENERGY_INFO {LOGICAL}

  enables or disables the usage of SCF energy information for estimating the acceptance probability. [Edit on GitHub]

VOLUME_ISOTROPIC: logical = T

  Lone keyword: `T`

  Usage: VOLUME_ISOTROPIC {LOGICAL}

  volume move is equal in each direction [Edit on GitHub]