ase_uhal.committee_calculators.ACEHALCalculator#
- class ase_uhal.committee_calculators.ACEHALCalculator(ace_params, committee_size, prior_weight, **kwargs)[source]#
- __init__(ace_params, committee_size, prior_weight, **kwargs)#
- Parameters:
ace_params (string or dict) – If ace_params is a string: Use ACEpotentials.load_model to load the model json file given by ace_params If ace_params is a dict: interpret ace_params as the hyperparameters dict for ACEpotentials.ace1_model e.g.
ace_params = {"elements" : ["Si"], # Expects list of str "order" : 3, # Expects an int "totaldegree" : 10, # Expects an int "rcut" : 5.0 # Expects a float }
- committee_size: int
Number of members in the linear committee
- prior_weight: float
Weight corresponding to the prior matrix in the linear system
- **kwargs: Keyword Args
Extra keywork arguments fed to
BaseCommitteeCalculator
- resample_committee(committee_size=None)#
Resample the committee, based on the states of self.likelihood and self.sqrt_prior Populates self.committee_weights based on the newly sampled committee
- Parameters:
committee_size (int, optional) – New size of the committee, if supplied. By default, a committee of size self.n_comm is drawn
- select_structure(atoms)#
- sync()#
- get_descriptor_energy(atoms=None)#
Get “descriptor energy”, which is the average of descriptor vectors in the structure
Returns an array of length self.n_desc
- get_descriptor_forces(atoms=None)#
Get “descriptor forces”, which are the derivatives w.r.t atomic positions of the total descriptor energy
Returns an array of shape (self.n_desc, Nats, 3)
- get_descriptor_stress(atoms=None)#
Get “descriptor stresses”, which are the stress analogues to the total descriptor energy
Returns an array of shape (self.n_desc, 3, 3)
- get_committee_energies(atoms=None)#
Get energy predictions by each member of the committee
Returns an array of length self.n_comm
- get_committee_forces(atoms=None)#
Get force predictions by each member of the committee
Returns an array of shape (self.n_comm, Nats, 3)
- get_committee_stresses(atoms=None)#
Get stress predictions by each member of the committee
Returns an array of shape (self.n_comm, 3, 3)
- get_bias_energy(atoms=None)#
- get_bias_forces(atoms=None)#
- get_bias_stress(atoms=None)#
Methods
__init__(ace_params, committee_size, ...)band_structure()Create band-structure object for plotting.
calculate(atoms, properties, system_changes)Calculation for descriptor properties, committee properties, normal properties, and HAL properties
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_bias_energy([atoms])get_bias_forces([atoms])get_bias_stress([atoms])get_charges([atoms])get_committee_energies([atoms])Get energy predictions by each member of the committee
get_committee_forces([atoms])Get force predictions by each member of the committee
get_committee_stresses([atoms])Get stress predictions by each member of the committee
get_default_parameters()get_descriptor_energy([atoms])Get "descriptor energy", which is the average of descriptor vectors in the structure
get_descriptor_forces([atoms])Get "descriptor forces", which are the derivatives w.r.t atomic positions of the total descriptor energy
get_descriptor_stress([atoms])Get "descriptor stresses", which are the stress analogues to the total descriptor energy
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_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])Resample the committee, based on the states of self.likelihood and self.sqrt_prior Populates self.committee_weights based on the newly sampled committee
reset()Clear all information from old calculation.
select_structure(atoms)set(**kwargs)Set parameters like set(key1=value1, key2=value2, ...).
set_label(label)Set label and convert label to directory and prefix.
sync()todict([skip_default])Obtain a dictionary of parameter information
Attributes
default_parametersDefault parameters
directorydiscard_results_on_any_changeWhether we purge the results following any change in the set() method.
energy_weightforces_weightignored_changesProperties of Atoms which we ignore for the purposes of cache
implemented_propertiesProperties calculator can handle (energy, forces, ...)
labelnamestress_weight