irradiapy.materials.component module
This module contains the Component class.
- class irradiapy.materials.component.Component(elements, stoichs, name, phase, density, x0=None, y0=None, z0=None, width=None, height=None, length=None, ax=None, ay=None, az=None, c=None, structure=None, ed_min=None, ed_avr=None, b_arc=None, c_arc=None, calculate_energies=False, srim_el=None, srim_es=None, srim_bragg=1)[source]
Bases:
objectClass for storing parameters of a component.
- Parameters:
elements (
tuple[Element,...]) – Tuple of elements in the component.stoichs (
tuple[float,...]) – Tuple of stoichiometric coefficients for each element.name (
str) – Name of the component.phase (
Phases) – Phase of the component (solid, liquid, gas).density (
float) – Density of the component in g/cm3.x0 (
float|None) – Initial x position of the component in angstroms.y0 (
float|None) – Initial y position of the component in angstroms.z0 (
float|None) – Initial z position of the component in angstroms.height (
float|None) – Height of the component in angstroms.length (
float|None) – Length of the component in angstroms.ax (
float|None) – Lattice parameter in x-axis in angstroms.ay (
float|None) – Lattice parameter in y-axis in angstroms.az (
float|None) – Lattice parameter in z-axis in angstroms.c (
float|None) – c parameter for hcp structure in angstroms.structure (
str|None) – Crystal structure (bcc, fcc, hcp, amorphous).calculate_energies (
bool) – Whether to calculate missing energy parameters from elements.
- damage_energy_to_displacements(damage_energy, mode)[source]
Convert damage energy to displaced atoms.
Tries to use the component parameters first; if not available, uses the element parameters (weighted average).
- recoil_energy_to_damage_energy(recoil_energy, recoil, mode)[source]
Convert PKA energy to damage energy.
- Parameters:
recoil_energy (
float) – Recoil energy, in eV.recoil (
Element) – Element of the recoil atom.mode (
DamageEnergyMode) – Damage energy calculation mode.
- Returns:
Damage energy (eV).
- Return type: