Config Blocks

Each block in the config file is structured as:

begin BLOCK_LABEL
    ...
end

Tags placed outside their designated blocks are ignored. The following blocks are available:

Atom tags

Hamster.get_alphaMethod

alpha=0.7*Z

The alpha::Float value determines how rapid the orbital overlap for a specific ion type falls off with distance. Defaults to 70% of the core charge.

source
Hamster.get_nMethod

n=n_period

The n::Int value determines the order of the polynomial that is used to model the distance dependence the orbital overlap for a specific ion type. Defaults to the period the atom species belongs to.

source
Hamster.get_nnaxesMethod

nnaxes=false

If nnaxes::Bool=true, the orbital axes are rotated along the connecting vectors with the nearest neighbors of the respective orbitals. The number of nearest neighbors depends on the number of orbitals.

source
Hamster.get_qeffMethod

qeff=0

The qeff::Float determines the effective charge of the ion for Ewald summation.

source

Supercell

Hamster.get_config_indsMethod
config_inds=none

The config_inds tag sets a file from which configuration indices are read. By default, indices are not read from file. It is also possible to provide a list of integers directly.

source
Hamster.get_sc_poscarMethod

sc_poscar=SC_POSCAR

The sc_poscar tag sets the path to the POSCAR file used for the supercell. Only accepts VASP POSCAR format

source
Hamster.get_val_config_indsMethod
val_config_inds=none

The val_config_inds tag sets a file from which configuration indices are read. By default, indices are not read from file. It is also possible to provide a list of integers directly.

source
Hamster.get_xdatcarMethod

xdatcar = XDATCAR

Specify the path to the structural trajectory used in the calculation.

The xdatcar tag points to a file containing atomic positions and lattice information for a sequence of structures.

Accepted Formats

  • VASP XDATCAR file Parsed directly to obtain atomic positions and lattice vectors for each structure.

  • HDF5 (.h5) file Must contain the datasets:

    • positions — atomic positions with shape [3 × Natoms × Nstructures]
    • lattice — lattice vectors with shape [3 × 3 × N_structures] (optional for each structure)
source

ML

SOC

Hamster.get_socMethod
soc=false

A model to account for spin-orbit coupling (SOC) is constructed if a block SOC is present in the config file.

source

Ewald onsite corrections

Hamster.get_ewaldMethod
ewald=false

A model to account for long-term electrostatics (Ewald summation) is constructed if a block Ewald is present in the config file.

source

Optimizer

Hamster.get_band_weightsMethod

wE=ones

The wE tag sets the weight of each energy band for the calculation of the loss. Individual weights can also be set with, e.g., wE_3 = 2.

source
Hamster.get_eig_fitMethod
eig_fit=true (false if hr_fit)

The eig_fit tag switches on fitting the effective Hamiltonian to eigenvalue data. If both hr_fit and eig_fit are true, the model is first fit to Hamiltonian data and then to eigenvalue data.

source
Hamster.get_eig_valMethod
eig_val=eig_fit

The eig_val tag switches on validating the effective Hamiltonian model with eigenvalue data.

source
Hamster.get_kpoint_weightsMethod
wk=ones

The wk tag sets the weight of each kpoint for the calculation of the loss. Individual weights can also be set with, e.g., wk_3 = 2.

source
Hamster.get_train_dataMethod

train_data = EIGENVAL

Specify the path to the training data file.

This tag tells Hamster where to load the training dataset used during model evaluation and optimization.

Accepted Formats

  • VASP EIGENVAL file Supported only in pc training mode. The file is read directly and converted into the internal eigenvalue representation.

  • HDF5 (.h5) file Must contain the datasets:

    • eigenvalues with shape [Nbands × Nkpoints × Nstructures]
    • kpoints with shape [3 × Nkpoints × Nstructures]

The datasets must correspond structure-by-structure to the training set. The number of bands in the data does not need to match the Hamster basis size; only the subset starting at bandmin is used.

source
Hamster.get_train_modeMethod

train_mode=PC

The train_mode flag switches between different optimization modes (PC, MD, universal; not case sensitive).

Defaults:

  • "pc" — if no Supercell block is present.
  • "md" — if a Supercell block is present but only one system is found.
source
Hamster.get_update_tbMethod
update_tb=haskey(conf, "Optimizer")

The update_tb tag determines whether/which parameters of the TB model are updated during the optimization. Defaults to true if an Optimizer block is provided.

source
Hamster.get_val_dataMethod

val_data=EIGENVAL

Specify the path to the validation data file.

This tag tells Hamster where to load the validation dataset used during model evaluation and optimization.

Accepted Formats

  • VASP EIGENVAL file Supported only in pc validation mode. The file is read directly and converted into the internal eigenvalue representation.

  • HDF5 (.h5) file Must contain the datasets:

    • eigenvalues with shape [Nbands × Nkpoints × Nstructures]
    • kpoints with shape [3 × Nkpoints × Nstructures]

The datasets must correspond structure-by-structure to the validation set. The number of bands in the data does not need to match the Hamster basis size; only the subset starting at val_bandmin is used.

source
Hamster.get_val_modeMethod
val_mode=PC

The val_mode flag switches between different modes for model validation (PC, MD, mixed, multi; not case sensitive).

source
Hamster.get_validateMethod
validate=false (true if `val_mode` is set)

The validate tag switches on model validation (usually no need to set this manually).

source

HyperOpt