grandThermodynamicPotential¶
- grandThermodynamicPotential(defects_list, temperature=None, absolute_error=None, max_steps=None, relative_error=None, root_mean_square_error=None, discard_faulty=None)¶
Implement a way to compute GTP.
- Parameters:
defects_list (list of (
VacancyList
|SubstitutionalList
|InterstitialList
|SplitInterstitialList
|DefectPairList
|DefectClusterList
) – List of calculated defects. Usually one vacancy per element, one antisite per element and one interstitial per element is needed.temperature (PhysicalQuantity of type temperature.) – Temperature Default: 300 Kelvin
absolute_error (PhysicalQuantity of type energy) – Defines the convergence criterion to stop the iteration when the absolute errors of the chemical potential solutions are smaller than the given number. Default: 1e-5 eV
max_steps (int) – Defines the maximum number of iterations in which to solve the equations using the Newton method. Default: 50
relative_error (float) – Defines the convergence criterion to stop the iteration when the relative errors of the chemical potential solutions are smaller than the given number. Default: 1e-4
root_mean_square_error (float) – Defines the convergence criterion to stop the iteration when the root-mean-square (RMS) error is smaller than the given number. Default: 1e-12
discard_faulty (bool) – Whether faulty (non converged) defect simulations are discarded Default: True
- Returns:
A list of filled AtomicChemicalPotential
- Return type:
list of
AtomicChemicalPotential
Notes¶
For a comprehensive description on the use of this class to compute chemical potentials see Chemical Potentials in Compound Materials
Example¶
The following few lines show how to compute the chemical potential of a TiN compound system when the native defects (vacancies, interstitials and antisites) are present. Then, the potentials are used to update the material specifications:
# update and run all defects
defect_lists=[vacancy, Ti_N, N_Ti, Ti_interstitial, N_interstitial]
updateAllDefectsAndTransitions(defect_lists=defect_lists, processes_per_defect=14)
# calculate atomic chemical potentials using GTP
GTP_potentials=grandThermodynamicPotential(defect_lists)
# Update GTP potentials in reference system
TiN_GTP_specifications = TiN(atomic_chemical_potentials=GTP_potentials)