kliff.models.lennard_jones

class kliff.models.lennard_jones.LJComputeArguments(conf, supported_species, influence_distance, compute_energy=True, compute_forces=True, compute_stress=False)[source]

KLIFF built-in Lennard-Jones 6-12 potential computation functions.

implemented_property = ['energy', 'forces', 'stress']
compute(params)[source]

Compute the properties required by the compute flags, and store them in self.results.

Parameters:

params (Dict[str, Parameter]) – the parameters of the model.

Example

energy = a_func_to_compute_energy() forces = a_func_to_compute_forces() stress = a_func_to_compute_stress() self.results[‘energy’] = energy self.results[‘forces’] = forces self.results[‘stress’] = stress

static calc_phi(epsilon, sigma, r, rcut)[source]
static calc_phi_dphi(epsilon, sigma, r, rcut)[source]
class kliff.models.lennard_jones.LennardJones(model_name='LJ6-12', species=None)[source]

KLIFF built-in Lennard-Jones 6-12 potential model.

This model supports multiple species, where a different set of parameters is used for each species pair. For example if species A, B, and C are provided, then there will be 6 values for each of the epsilon and sigma parameters. The order of the parameters is as follows: A-A, A-B, A-C, B-B, B-C, and C-C.

Parameters:
  • model_name (str) – name of the model

  • species (Optional[List[str]]) – list of species. If None, there model will create a single value for each parameter, and all species pair will use the same parameters. If a list of species is provided, then the model will create a different set of parameters for each species pair.

  • params_transform – parameter transform object. If None, no transformation is performed.

init_model_params()[source]
init_influence_distance()[source]
init_supported_species()[source]
get_compute_argument_class()[source]