irradiapy.srim.srimdb module

This module contains the SRIMDB class.

class irradiapy.srim.srimdb.SRIMDB(path, *, target=None, calculation=None, seed=0, srim_dir=<factory>, plot_type=5, xmin=0.0, xmax=0.0, do_ranges=1, do_backscatt=1, do_transmit=1, do_sputtered=1, do_collisions=1, exyz=0.0, autosave=0)[source]

Bases: Database

Base class for storing SRIM output data in a SQLite database.

Variables:
  • path (Path) – Output database path.

  • target (list[Component] | None, optional (default=None)) – SRIM target. Do not provide this argument for read only.

  • calculation (str | None, optional (default=None)) – SRIM calculation. Do not provide this argument for read only. Accepted values are: “quick”, “full” and “mono”.

  • seed (int (default=0)) – Seed for SRIM randomness.

  • srim_dir (Path (default=config.get_srim_dir())) – Directory where SRIM is installed.

  • backscat (Backscat) – Class storing BACKSCAT.txt data.

  • e2recoil (E2Recoil) – Class storing E2RECOIL.txt data.

  • ioniz (Ioniz) – Class storing IONIZ.txt data.

  • lateral (Lateral) – Class storing LATERAL.txt data.

  • phonon (Phonon) – Class storing PHONON.txt data.

  • range (Range) – Class storing RANGE.txt data.

  • range3d (Range3D) – Class storing RANGE_3D.txt data.

  • sputter (Sputter) – Class storing SPUTTER.txt data.

  • transmit (Transmit) – Class storing TRANSMIT.txt data.

  • trimdat (Trimdat) – Class storing TRIM.DAT data.

  • vacancy (Vacancy) – Class storing VACANCY.txt data.

append_output()[source]

Appends SRIM output files into the database.

Return type:

None

autosave: int = 0
backscat: Backscat
bragg: int = 1
calculation: str | None = None
collision: Collision
do_backscatt: int = 1
do_collisions: int = 1
do_ranges: int = 1
do_sputtered: int = 1
do_transmit: int = 1
e2recoil: E2Recoil
exyz: float = 0.0
get_nions()[source]

Gets the number of ions in the simulation based on trimdat table.

Return type:

int

ioniz: Ioniz
lateral: Lateral
load_target_calculation()[source]

Loads the target and calculation parameters from the database.

Return type:

list[Component]

nions: int = 0
phonon: Phonon
plot_type: int = 5
range: Range
range3d: Range3D
reminders: int = 0
seed: int = 0
sputter: Sputter
srim_dir: Path
target: list[Component] | None = None
transmit: Transmit
trimdat: Trimdat
vacancy: Vacancy
xmax: float = 0.0
xmin: float = 0.0