ase_uhal.bias_calculators.BaseBiasCalculator#

class ase_uhal.bias_calculators.BaseBiasCalculator(mean_calc, committee_calc: BaseCommitteeCalculator, adaptive_tau=False, tau_rel=0.1, tau_hist=10, tau_delay=None, eps=0.2)[source]#

ASE-compatible Bias calculator with adaptive biasing

Derived from a combination of ACEHAL.bias_calc.BiasCalculator and ACEHAL.bias_calc.TauRelController from ACEHAL ACEsuit/ACEHAL

__init__(mean_calc, committee_calc: BaseCommitteeCalculator, adaptive_tau=False, tau_rel=0.1, tau_hist=10, tau_delay=None, eps=0.2)[source]#
calculate(atoms, properties, system_changes)[source]#

Overload of the BaseCalculator.calculate() abstract method Calculate props combining the results from the mean_calc with the results from the committee

update_tau(atoms=None)[source]#

Exponential mixing of mean force magnitude and mean biasing force magnitude (without the tau biasing constant)

Updates self.Fmean and self.Fbias based on self.mixing to mix between old values and the new values provided as arguments Modifies self.tau if self.tau_delay < 0, otherwise decreases self.tau_delay by 1

abstractmethod get_score(atoms=None)[source]#

Methods

__init__(mean_calc, committee_calc[, ...])

band_structure()

Create band-structure object for plotting.

calculate(atoms, properties, system_changes)

Overload of the BaseCalculator.calculate() abstract method Calculate props combining the results from the mean_calc with the results from the committee

calculate_numerical_forces(atoms[, d])

Calculate numerical forces using finite difference.

calculate_numerical_stress(atoms[, d, voigt])

Calculate numerical stress using finite difference.

calculate_properties(atoms, properties)

This method is experimental; currently for internal use.

calculation_required(atoms, properties)

check_state(atoms[, tol])

Check for any system changes since last calculation.

export_properties()

get_atoms()

get_charges([atoms])

get_default_parameters()

get_dipole_moment([atoms])

get_forces([atoms])

get_magnetic_moment([atoms])

get_magnetic_moments([atoms])

Calculate magnetic moments projected onto atoms.

get_potential_energies([atoms])

get_potential_energy([atoms, force_consistent])

get_property(name[, atoms, allow_calculation])

Get the named property.

get_score([atoms])

get_stress([atoms])

get_stresses([atoms])

the calculator should return intensive stresses, i.e., such that stresses.sum(axis=0) == stress

read(label)

Read atoms, parameters and calculated properties from output file.

read_atoms(restart, **kwargs)

resample_committee([committee_size])

Alias for self.committee_calc.resample_committee

reset()

Clear all information from old calculation.

select_structure(ats)

Alias for self.committee_calc.select_structure

set(**kwargs)

Set parameters like set(key1=value1, key2=value2, ...).

set_label(label)

Set label and convert label to directory and prefix.

sync()

Alias of self.committee_calc.sync()

todict([skip_default])

Obtain a dictionary of parameter information

update_tau([atoms])

Exponential mixing of mean force magnitude and mean biasing force magnitude (without the tau biasing constant)

Attributes

default_parameters

Default parameters

directory

discard_results_on_any_change

Whether we purge the results following any change in the set() method.

ignored_changes

Properties of Atoms which we ignore for the purposes of cache

implemented_properties

Properties calculator can handle (energy, forces, ...)

label

mixing

name