DislocationMonopole

Calculation class

class DislocationMonopole(model: str | Path | IOBase | DataModelDict | None = None, name: str | None = None, database=None, params: str | Path | IOBase | dict = None, **kwargs: any)

Bases: Calculation

Class for managing dislocation monopole constructions and relaxation

property K_tensor: ndarray

The dislocation’s elastic K tensor

Type:

numpy.ndarray

property annealsteps: int

Number of time steps to use for annealing the system

Type:

int

property annealtemperature: float

Temperature to use for annealing the system

Type:

float

property boundaryscale: bool

Flag indicating if boundarywidth is scaled versus the system or absolute

Type:

bool

property boundaryshape: str

The shape of the boundary region

Type:

str

property boundarywidth: float

The minimum width of the boundary region

Type:

float

build_model() DataModelDict

Generates and returns model content based on the values set to object.

calc_inputs() dict

Builds calculation inputs from the class’s attributes

property commands: LammpsCommands

LammpsCommands subset

property compare_fterms: dict

The terms to compare metadata values using a tolerance.

Type:

dict

property compare_terms: list

The terms to compare metadata values absolutely.

Type:

list

property defect: Dislocation

Dislocation subset

property dislocation: Dislocation

Volterra dislocation solution

Type:

atomman.defect.Dislocation

property dumpfile_base: str

Name of the LAMMPS dump file of the 0 shift reference system

Type:

str

property dumpfile_defect: str

Name of the LAMMPS dump file of the defect system

Type:

str

property elastic: AtommanElasticConstants

AtommanElasticConstants subset

property filenames: list

the names of each file used by the calculation.

Type:

list

isvalid() bool

Looks at the set attributes to determine if the associated calculation would be a valid one to run.

Returns:

True if element combinations are valid, False if not.

Return type:

bool

load_model(model: str | DataModelDict, name: str | None = None)

Loads record contents from a given model.

Parameters:
  • model (str or DataModelDict) – The model contents of the record to load.

  • name (str, optional) – The name to assign to the record. Often inferred from other attributes if not given.

load_parameters(params: dict | str | IOBase, key: str | None = None)

Reads in and sets calculation parameters.

Parameters:
  • params (dict, str or file-like object) – The parameters or parameter file to read in.

  • key (str, optional) – A new key value to assign to the object. If not given, will use calc_key field in params if it exists, or leave the key value unchanged.

master_prepare_inputs(branch: str = 'main', **kwargs: any) dict

Utility method that build input parameters for prepare according to the workflows used by the NIST Interatomic Potentials Repository. In other words, transforms inputs from master_prepare into inputs for prepare.

Parameters:
  • branch (str, optional) – Indicates the workflow branch to prepare calculations for. Default value is ‘main’.

  • **kwargs (any) – Any parameter modifications to make to the standard workflow prepare scripts.

Returns:

params – The full set of prepare parameters based on the workflow branch

Return type:

dict

metadata() dict

Generates a dict of simple metadata values associated with the record. Useful for quickly comparing records and for building pandas.DataFrames for multiple records of the same style.

property minimize: LammpsMinimize

LammpsMinimize subset

property modelroot: str

The root element of the content

Type:

str

property multikeys: list

Calculation key sets that can have multiple values during prepare.

Type:

list

property potential: LammpsPotential

LammpsPotential subset

property potential_energy_defect: float

Potential energy of the defect system

Type:

float

property preln: float

The dislocation’s elastic pre-ln energy factor

Type:

float

process_results(results_dict: dict)

Processes calculation results and saves them to the object’s results attributes.

Parameters:

results_dict (dict) – The dictionary returned by the calc() method.

property randomseed: int

random number generator seed to use

Type:

int

set_values(name: str | None = None, **kwargs: any)

Set calculation values directly. Any terms not given will be set or reset to the calculation’s default values.

Parameters:
  • name (str, optional) – The name to assign to the calculation. By default, this is set as the calculation’s key.

  • annealtemperature (float, optional) – The temperature to use for MD annealing steps.

  • annealsteps (int, optional) – The number of MD annealing steps to perform.

  • randomseed (int, optional) – A random number seed to use for generating the initial velocities for the MD anneal.

  • boundaryshape (str, optional) – The shape of the boundary region.

  • boundarywidth (float, optional) – The minimum width of the boundary region.

  • boundaryscale (bool, optional) – Indicates if boundarywidth is absolute (False) or relative to the unit cell’s a lattice parameter (True).

  • **kwargs (any, optional) – Any keyword parameters supported by the set_values() methods of the parent Calculation class and the subset classes.

property singularkeys: list

Calculation keys that can have single values during prepare.

Type:

list

property symbols_base: list

Model symbols for the base system

Type:

list

property symbols_defect: list

Model symbols for the defect system

Type:

list

property system: AtommanSystemLoad

AtommanSystemLoad subset

property templatekeys: dict

The calculation-specific input keys and their descriptions.

Type:

dict

property units: Units

Units subset