Unitary Coupled Cluster Monte Carlo¶
uccmc {
sys = system,
qmc = { ... },
ccmc = { ... },
uccmc = { ... },
restart = { ... },
reference = { ... },
logging = { ... },
output = { ... },
blocking = { ... },
qmc_state = qmc_state,
}
- Returns:
- a qmc_state object.
uccmc
performs a coupled cluster Monte Carlo (CCMC) calculation [Filip20] on a system.
Options¶
sys
type: system object.
Required.
The system on which to perform the calculation. Must be created via a system function.
qmc
type: lua table.
Required.
Further options that are common to all implemented QMC algorithms. See qmc options.
ccmc
type: lua table.
Required.
Further options to control the CCMC algorithm. See ccmc options.
uccmc
type: lua table.
Required.
Further options to control the UCCMC algorithm. See uccmc options.
restart
type: lua table.
Optional.
Further options to control restarting the calculation from a previous calculation. See restart options.
reference
type: lua table.
Optional.
Further options to select the reference state used. See reference options.
logging
type: lua table.
Optional.
Further options to enable various logging outputs from a UCCMC simulation. Only available when compiled in debug mode. See logging options for information on current options.
output
type: lua_table.
Optional.
Further options to enable direction of calculation output to a different file. See output options for more information.
uccmc options¶
pow_trunc
type: integer.
Optional. Default: 12.
Polynomial order at which to truncate UCCMC Taylor expansion.
average_wfn
type: logical.
Optional. Default: false.
Whether to print out the average wavefunction sampled over the course of the UCCMC calculation.
trot
type: logical.
Optional. Default: false.
Whether to run a trotterized UCCMC calculation, rather than using the full exponential ansatz.
threshold
type: float.
Optional. Default: \(2^{31}-1\).
The threshold of \(A_C/p_C\), where \(A_C\) is the cluster amplitude and \(p_C\) is the probability of selecting the cluster (exactly like
cluster_multispawn_threshold
), beyond which a cluster is discarded. This should be bigger thancluster_multispawn_threshold
if both are specified.