Usage
Workflow
Step 1. Run the ADF program:
adf < adf.in > adf.out
This leaves a binary file TAPE21 in the working directory.
Step 2. Convert the binary file to ASCII format:
dmpkf TAPE21 > TAPE21.asc
The dmpkf utility is included with the ADF distribution.
Step 3. Run the converter in the same directory:
adf2stowf
This reads TAPE21.asc and writes stowfn.data.
Step 4. Use the output in CASINO by setting:
atom_basis_type : slater-type
in the CASINO input file.
Command-Line Options
- adf2stowf
Run with defaults (equivalent to
--cusp-method=project).
- --cusp-method=project
Project out cusp-violating components from each orbital. Default. See Nuclear cusp conditions in the adf2stowf — ADF to CASINO STO Wavefunction Converter module documentation.
- --cusp-method=enforce
Apply cusp correction to active orbitals. See Nuclear cusp conditions in the adf2stowf — ADF to CASINO STO Wavefunction Converter module documentation.
- --cusp-method=none
Disable cusp correction entirely. See Nuclear cusp conditions in the adf2stowf — ADF to CASINO STO Wavefunction Converter module documentation.
- --plot-cusps
Enable plotting of cusp constraints (requires Matplotlib).
- --all-orbitals
Include virtual orbitals in addition to occupied ones. Default: occupied orbitals only.
- --dump
Generate a text dump of
TAPE21.asc.
Notes
The Cartesian-to-spherical conversion is exact — no components are discarded (see Cartesian to spherical-harmonic transformation). In a molecule the per-nucleus cusp condition also picks up a smooth background from the tails of basis functions centred on neighbouring atoms, so the residual cusp deviation reported during conversion can stay large without affecting the variational energy: a single-determinant VMC run still reproduces the HF energy.
Unused basis functions are pruned. Any shell — of any angular momentum
(s, p, d, or f), including the appended companion shells — whose coefficients
are zero in every written orbital is omitted from stowfn.data. These are
typically the polarisation d/f functions and diffuse s/p functions that no
occupied orbital uses; dropping them leaves the wavefunction unchanged while
reducing the number of basis functions CASINO must evaluate. Use
--all-orbitals to keep them, since the virtual orbitals make use of them.