Quick start¶
This page shows how to run a complete VMC calculation for a helium atom, from input files to energy output.
Prerequisites¶
Install Pycasino and verify it works:
$ pipx install casino
$ casino --help
You will also need a wavefunction file (gwfn.data or stowfn.data) produced by a quantum
chemistry program such as ORCA or
ADF.
Example: VMC energy for helium¶
The examples/gwfn/He/HF/cc-pVQZ/CBCS/Jastrow/ directory in the repository contains a
ready-to-run example. Below is the minimal input file for a VMC energy calculation:
#-------------------#
# CASINO input file #
#-------------------#
# He atom (ground state)
# SYSTEM
neu : 1 # number of up electrons
ned : 1 # number of down electrons
atom_basis_type : gaussian # gaussian or slater-type
# RUN
runtype : vmc # vmc, vmc_dmc, or vmc_opt
testrun : F
# VMC
vmc_method : 3 # 3 = CBCS (recommended)
vmc_equil_nstep : 5000 # equilibration steps
vmc_nstep : 1000000 # production steps
vmc_nblock : 10 # blocks for error estimation
vmc_nconfig_write : 0
vmc_decorr_period : 1
The directory must also contain gwfn.data (the wavefunction) and optionally
correlation.data (Jastrow parameters).
Running the calculation¶
From the directory containing input and gwfn.data:
$ casino .
With MPI parallelisation across 4 processes:
$ mpirun -n 4 casino .
The program prints block-by-block energy estimates and a final mean ± standard error:
====================================
VMC energy (au)
------------------------------------
Mean = -2.903485
Standard error = 0.000031
====================================
Workflow: optimization then DMC¶
A typical production workflow has three stages:
Jastrow optimization (
runtype : vmc_opt) — minimise variance or energy to find optimal Jastrow parameters.VMC energy accumulation (
runtype : vmc) — collect a large sample with the optimised wavefunction.DMC (
runtype : vmc_dmc) — diffusion Monte Carlo for higher accuracy, starting from VMC configurations (requiresvmc_nconfig_write > 0in the VMC run).
See Supported configuration files and their contents for a full description of all input keywords and tocdepth for the underlying mathematics of each wavefunction component.