boltzhist_cur_dual_iter#
- autoplex.data.common.utils.boltzhist_cur_dual_iter(atoms, descriptor, isolated_atom_energies, bolt_frac=0.1, bolt_max_num=3000, cur_num=100, kernel_exp=4, kt=0.3, energy_label='energy', pressures=None, random_seed=None)[source]#
Execute sampling with two iterations.
Each iteration includes a Boltzmann flat histogram in enthalpy followed by a CUR process.
- Parameters:
atoms (list[ase.Atoms] or list[list[ase.Atoms]]) – The atoms from which to select. If this is a list of lists, it is flattened.
descriptor (str) – The quippy SOAP descriptor string for CUR.
isolated_atom_energies (dict) – Dictionary of isolated energy values for species. Required for ‘boltzhist_cur’ selection method. Default is None.
bolt_frac (float) – The fraction to control the flat Boltzmann selection number.
bolt_max_num (int) – The maximum number of atoms to select by Boltzmann-weighted flat histogram.
cur_num (int) – The number of atoms to select by CUR.
kernel_exp (float) – The exponent for the dot-product SOAP kernel.
kt (float) – The product of the Boltzmann constant and the temperature, in eV.
energy_label (str) – The label for the energy property in the atoms.
pressures (list[float] or list[list[float]]) – The pressures at which the atoms have been optimized, in GPa.
random_seed (int) – The seed for the random number generator.
- Returns:
The selected atoms. These are copies of the atoms in the input list.
- Return type:
list of ase.Atoms
Notes
This function selects the most diverse atoms based on the chosen algorithm. The algorithm uses a combination of CUR selection and Boltzmann weighting to select the atoms.