Skip to content

General

Geometry

description: Geometrical shape attributes of a system. Sections derived from Geometry represent concrete geometrical shapes.

inherits from: nomad.datamodel.data.ArchiveSection

properties:

name type
volume float The measure of the amount of space occupied in 3D space.
unit=meter ** 3

Parallelepiped

description: Six-faced polyhedron with each pair of opposite faces parallel and equal in size, characterized by rectangular sides and parallelogram faces.

inherits from: Geometry

properties:

name type
height float The z dimension of the parallelepiped.
unit=meter
width float The x dimension of the parallelepiped.
unit=meter
length float The y dimension of the parallelepiped.
unit=meter
alpha float The angle between y and z sides.
unit=degree
beta float The angle between x and z sides.
unit=degree
gamma float The angle between x and y sides.
unit=degree
surface_area float The product of length and width, representing the total exposed area of the primary surface.
unit=meter ** 2

SquareCuboid

description: A cuboid with all sides equal in length.

inherits from: Parallelepiped

properties:

name type
height float The z dimension of the parallelepiped.
unit=meter
width float The x dimension of the parallelepiped.
unit=meter
alpha float The angle between y and z sides.
unit=degree, default=90.0
beta float The angle between x and z sides.
unit=degree, default=90.0
gamma float The angle between x and y sides.
unit=degree, default=90.0
surface_area float The product of length and width, representing the total exposed area of the primary surface.
unit=meter ** 2

RectangleCuboid

description: A rectangular cuboid is a specific type of parallelepiped where all angles between adjacent faces are right angles, and all faces are rectangles.

inherits from: Parallelepiped

properties:

name type
height float The z dimension of the parallelepiped.
unit=meter
width float The x dimension of the parallelepiped.
unit=meter
length float The y dimension of the parallelepiped.
unit=meter
alpha float The angle between y and z sides.
unit=degree, default=90.0
beta float The angle between x and z sides.
unit=degree, default=90.0
gamma float The angle between x and y sides.
unit=degree, default=90.0
surface_area float The product of length and width, representing the total exposed area of the primary surface.
unit=meter ** 2

TruncatedCone

description: A cone with the top cut off parallel to the cone bottom.

inherits from: Geometry

properties:

name type
height float The z dimension of the parallelepiped.
unit=meter
lower_cap_radius float Radius of the lower cap.
unit=meter
upper_cap_radius float Radius of the upper cap.
unit=meter
lower_cap_surface_area float Area of the lower cap.
unit=meter ** 2
upper_cap_surface_area float Area of the upper cap.
unit=meter ** 2
lateral_surface_area float Area of the lateral surface.
unit=meter ** 2

Cylinder

description: A cylinder, i.e. a prism with a circular base.

inherits from: Geometry

properties:

name type
height float The z dimension of the parallelepiped.
unit=meter
radius float Radius of the cylinder.
unit=meter
lower_cap_surface_area float Area of the lower cap.
unit=meter ** 2
cap_surface_area float Area of the cap.
unit=meter ** 2
lateral_surface_area float Area of the lateral surface.
unit=meter ** 2

CylinderSector

inherits from: Cylinder

properties:

name type
central_angle float The angle that defines the portion of the cylinder. This angle is taken at the center of the base circle and extends to the arc that defines the cylindrical sector.
unit=degree

IrregularParallelSurfaces

description: A shape that does not fit into any of the other geometry classes.

inherits from: Geometry

properties:

name type
height float The z dimension of the irregular shape.
unit=meter

MillerIndices

description: The Miller indices are a notation system in crystallography for planes in crystal (Bravais) lattices. In particular, a family of lattice planes is determined by three integers h, k, and l, the Miller indices.

inherits from: nomad.datamodel.data.ArchiveSection

properties:

name type
h_index float The Miller index h.
k_index float The Miller index k.
l_index float The Miller index l.

BravaisMillerIndices

description: A component added to the solution.

inherits from: MillerIndices

properties:

name type
i float The Miller index i.

CrystallographicDirection

description: A specific crystallographic plane or direction within a crystal structure. The same property can be described in the direct (or real) space or in the reciprocal space.

The (hkl) indices in direct space and [hkl] indices in reciprocal space describe the same set of crystallographic planes, but their interpretation differs between the two spaces. In direct space, (hkl) indices describe the orientation of a plane within the crystal. In reciprocal space, [hkl] indices describe a point in the reciprocal lattice that is perpendicular to the corresponding (hkl) plane in direct space.

inherits from: nomad.datamodel.data.ArchiveSection

properties:

name type
hkl_reciprocal MillerIndices The reciprocal lattice vector associated with the family of lattice planes is OH = h a* + k b* + l c, where a, b, c are the reciprocal lattice basis vectors. OH is perpendicular to the family of lattice planes and OH = 1/d where d is the lattice spacing of the family. Ref. https://dictionary.iucr.org/Miller_indices
sub-section
hkl_direct MillerIndices In three-dimensional space, the direction passing through the origin and the lattice nodes nh,nk,nl, where n is an integer, has direction indices [hkl]. This corresponds to taking the coordinates of the first lattice node on that direction after the origin as direction indices. When a primitive unit cell is used, the direction indices are all integer; they may instead be rational when a centred unit cell is adopted. Ref. https://dictionary.iucr.org/Direction_indices
sub-section

ProjectedMiscutOrientation

description: The overall miscut angle is the total angular deviation from the primary plane of the substrate. However, this overall miscut can be described as having components projected onto two perpendicular crystallographic directions that lie in the primary surface plane. The angular miscut is defined as a tilt (in degree) along these two directions.

The projected miscut orientation specifies the tilt angle along one crystallographic direction.

inherits from: CrystallographicDirection

properties:

name type
angle float The miscut angle (or offcut angle, or angular displacement offset) toward the specified crystallographic direction.
unit=degree
angle_deviation float The ± deviation of the angular displacement offset.
unit=degree

CartesianMiscut

description: The miscut might be directed in a non-pure crystallographic direction. In this case two components must be specified, in Cartesian coordinates.

If the miscut is directed in a pure crystallographic direction, only one component can be filled in.

inherits from: nomad.datamodel.data.ArchiveSection

properties:

name type
reference_orientation ProjectedMiscutOrientation The reference direction of the miscut.
sub-section
perpendicular_orientation ProjectedMiscutOrientation A direction perpendicular to the reference direction.
sub-section

PolarMiscut

description: This direction can be described by a crystallographic direction [hkl], which indicates the direction of the tilt relative to the crystal axes.

The miscut might be directed in a non-pure crystallographic direction. In this case two components must be specified, either in Cartesian or polar coordinates.

inherits from: nomad.datamodel.data.ArchiveSection

properties:

name type
rho float Out-of-plane tilt angle, defined in polar coordinates as a module in the out-of-plane axis.
unit=degree
theta float In-plane angle of the miscut toward the reference orientation.
unit=degree
reference_orientation CrystallographicDirection The reference direction of the miscut.
sub-section

Miscut

description: The miscut in a crystalline substrate refers to the intentional deviation from a specific crystallographic orientation, commonly expressed as the angular displacement of a crystal plane.

The overall miscut angle is the total angular deviation from the primary plane of the substrate. However, this overall miscut can be described as having components projected onto two perpendicular crystallographic directions that lie in the primary surface plane. The angular miscut is defined as a tilt (in degree) along these two directions.

inherits from: nomad.datamodel.data.ArchiveSection

properties:

name type
directions_image str A schematic representation of the miscut directions.
cartesian_miscut CartesianMiscut The orientation of the miscut (or offcut) in Cartesian coordinates.
sub-section
polar_miscut PolarMiscut The orientation of the miscut (or offcut) in polar coordinates.
sub-section

Dopant

description: A dopant element in a crystalline structure is a foreign atom intentionally introduced into the crystal lattice.

inherits from: nomad.datamodel.metainfo.basesections.v1.ElementalComposition

properties:

name type
doping_level float The chemical doping level.
unit=1 / meter ** 3
doping_deviation float The ± deviation in the doping level.
unit=1 / meter ** 3

normalization:

Will add a results.material subsection if none exists. Will append the element to the elements property of that subsection and a nomad.datamodel.results.ElementalComposition instances to the elemental_composition property using the element and atomic fraction from this section.

CrystalProperties

description: Characteristics arising from the ordered arrangement of atoms in a crystalline structure. These properties are defined by factors such as crystal symmetry, lattice parameters, and the specific arrangement of atoms within the crystal lattice.

inherits from: nomad.datamodel.data.ArchiveSection

SubstrateCrystalProperties

description: Crystallographic parameters such as orientation, miscut, and surface structure.

inherits from: CrystalProperties

properties:

name type
bravais_lattices ['Cubic Body Centered', 'Cubic Face Centered', 'Cubic Simple', 'Hexagonal', 'Monoclinic Base Centered', 'Monoclinic Simple', 'Orthorhombic Base Centered', 'Orthorhombic Body Centered', 'Orthorhombic Face Centered', 'Orthorhombic Simple', 'Tetragonal Body Centered', 'Tetragonal Simple', 'Triclinic', 'Trigonal'] The crystal system of the substrate.
surface_orientation CrystallographicDirection The orientation of the substrate surface.
sub-section
miscut Miscut Miscut of the substrate.
sub-section

ElectronicProperties

description: The electronic properties of a material.

inherits from: nomad.datamodel.data.ArchiveSection

properties:

name type
conductivity_type ['Insulating', 'N-type', 'P-type', 'Semi-insulating'] The type of semiconductor, N-type being electrons the majority carriers and P-type being holes the majority carriers.
carrier_density float Concentration of free charge carriers, electrons in the conduction band and holes in the valence band.
unit=1 / centimeter ** 3
carrier_density_deviation float Deviation in the concentration of free charge carriers, electrons in the conduction band and holes in the valence band.
unit=1 / meter ** 3
electrical_resistivity float Resistance of the charges to move in the presence of an electric current.
unit=meter * ohm

Substrate

description: A thin free standing sheet of material. Not to be confused with the substrate role during a deposition, which can be a Substrate with ThinFilm(s) on it.

inherits from: nomad.datamodel.metainfo.basesections.v1.CompositeSystem

properties:

name type
supplier str The supplier of the current substrate specimen.
supplier_id str An ID string that is unique from the supplier.
lab_id str An ID string that is unique at least for the lab that produced this data.
image str A photograph or image of the substrate.
information_sheet str Pdf files containing certificate and other documentation.

normalization:

If the elemental composition list is empty, the normalizer will iterate over the components and extract all the elements for populating the elemental composition list. If masses are provided for all components and the elemental composition of all components contain atomic fractions the normalizer will also calculate the atomic fractions for the composite system. The populated elemental composition list is added to the results by the normalizer in the System super class.

CrystallineSubstrate

description: The substrate defined in this class is composed of periodic arrangement of atoms and shows typical features of a crystal structure.

inherits from: Substrate

properties:

name type
geometry Geometry Section containing the geometry of the substrate.
sub-section
crystal_properties SubstrateCrystalProperties Section containing the crystal properties of the substrate.
sub-section
electronic_properties ElectronicProperties Section containing the electronic properties of the substrate.
sub-section
dopants Dopant Repeating section containing information on any dopants in the substrate.
sub-section, repeats

normalization:

If the elemental composition list is empty, the normalizer will iterate over the components and extract all the elements for populating the elemental composition list. If masses are provided for all components and the elemental composition of all components contain atomic fractions the normalizer will also calculate the atomic fractions for the composite system. The populated elemental composition list is added to the results by the normalizer in the System super class.

ThinFilm

description: A thin film of material which exists as part of a stack.

inherits from: nomad.datamodel.metainfo.basesections.v1.CompositeSystem

properties:

name type
geometry Geometry Section containing the geometry of the thin film.
sub-section

normalization:

If the elemental composition list is empty, the normalizer will iterate over the components and extract all the elements for populating the elemental composition list. If masses are provided for all components and the elemental composition of all components contain atomic fractions the normalizer will also calculate the atomic fractions for the composite system. The populated elemental composition list is added to the results by the normalizer in the System super class.

ThinFilmReference

description: Class autogenerated from yaml schema.

inherits from: nomad.datamodel.metainfo.basesections.v1.CompositeSystemReference

properties:

name type
lab_id str The readable identifier for the entity.
reference ThinFilm A reference to a NOMAD CompositeSystem entry.

normalization:

Will attempt to fill the reference from the lab_id or vice versa.

SubstrateReference

description: A section for describing a system component and its role in a composite system.

inherits from: nomad.datamodel.metainfo.basesections.v1.CompositeSystemReference

properties:

name type
lab_id str The readable identifier for the entity.
reference Substrate A reference to a NOMAD CompositeSystem entry.

normalization:

Will attempt to fill the reference from the lab_id or vice versa.

ThinFilmStack

description: A stack of ThinFilm(s). Typically deposited on a Substrate.

inherits from: nomad.datamodel.metainfo.basesections.v1.CompositeSystem

properties:

name type
layers ThinFilmReference An ordered list (starting at the substrate) of the thin films making up the thin film stacks.
sub-section, repeats
substrate SubstrateReference The substrate which the thin film layers of the thin film stack are deposited on.
sub-section

normalization:

The normalizer for the ThinFilmStack class.

Args: archive (EntryArchive): The archive containing the section that is being normalized. logger (BoundLogger): A structlog logger.

ThinFilmStackReference

description: Class autogenerated from yaml schema.

inherits from: nomad.datamodel.metainfo.basesections.v1.CompositeSystemReference

properties:

name type
lab_id str The readable identifier for the entity.
reference ThinFilmStack A reference to a NOMAD CompositeSystem entry.

normalization:

Will attempt to fill the reference from the lab_id or vice versa.

SampleDeposition

description: The process of the settling of particles (atoms or molecules) from a solution, suspension or vapour onto a pre-existing surface, resulting in the growth of a new phase. [database_cross_reference: https://orcid.org/0000-0002-0640-0422]

Synonyms: - deposition

inherits from: nomad.datamodel.metainfo.basesections.v1.SynthesisMethod

links: http://purl.obolibrary.org/obo/CHMO_0001310

normalization:

The normalizer for the SampleDeposition class.

Args: archive (EntryArchive): The archive containing the section that is being normalized. logger (BoundLogger): A structlog logger.

TimeSeries

description: A time series of data during a process step. This is an abstract class and should not be used directly. Instead, it should be derived and the the units of the value and set_value should be specified.

For example, a derived class could be Temperature with value in Kelvin:

class Temperature(TimeSeries):
    value = TimeSeries.value.m_copy()
    value.unit = "kelvin"
    set_value = TimeSeries.set_value.m_copy()
    set_value.unit = "kelvin"
    set_value.a_eln.defaultDisplayUnit = "celsius"

inherits from: nomad.datamodel.data.ArchiveSection

properties:

name type
set_value float The set value(s) (i.e. the intended values) set.
shape=['*']
set_time float The process time when each of the set values were set. If this is empty and only one set value is present, it is assumed that the value was set at the start of the process step. If two set values are present, it is assumed that a linear ramp between the two values was set.
shape=['*'], unit=second
value float The observed value as a function of time.
shape=['*']
time float The process time when each of the values were recorded.
shape=['*'], unit=second

Recipe

description: A Recipe for a material processing experiment. This class will be subclassed for each process that needs a recipe.

The subclass will inherit Recipe and a specific Process class.

The only difference between the Recipe and the actual Process is that the datetime and the input samples Entities are hidden in the Recipe.

inherits from: nomad.datamodel.data.ArchiveSection

EtchingStep

description: A step of etching process.

inherits from: nomad.datamodel.metainfo.basesections.v1.ProcessStep

properties:

name type
duration float The elapsed time since the annealing process started.
unit=second
temperature float The temperature of the etching process.
unit=degree_Celsius
agitation ['Magnetic Stirring', 'Sonication'] The agitation method used during the etching process.
etching_reagents nomad.datamodel.metainfo.basesections.v1.CompositeSystem sub-section, repeats

Etching

description: Selectively remove material from a surface using chemical or physical processes to create specific patterns or structures.

inherits from: nomad.datamodel.metainfo.basesections.v1.Process, nomad.datamodel.data.EntryData

links: http://purl.obolibrary.org/obo/CHMO_0001558

properties:

name type
tags str Searchable tags for this entry. Use Explore tab for searching.
shape=['*']
recipe EtchingRecipe The recipe used for the process. If a recipe is found, all the data is copied from the Recipe within the Process.
steps EtchingStep The steps of the etching process.
sub-section, repeats

normalization:

  • Sets the start time for each step in self.steps if not already set, based on the datetime and duration fields.
  • Sets the end_time field to the calculated end time if it is not already set.
  • Updates the archive.workflow2.outputs list with links to the samples processed.

EtchingRecipe

description: A Recipe for an etching process.

inherits from: Etching, Recipe, nomad.datamodel.data.EntryData

properties:

name type
lab_id str A unique human readable ID for the recipe.

normalization:

  • Sets the start time for each step in self.steps if not already set, based on the datetime and duration fields.
  • Sets the end_time field to the calculated end time if it is not already set.
  • Updates the archive.workflow2.outputs list with links to the samples processed.

AnnealingStep

description: A step of annealing process.

inherits from: nomad.datamodel.metainfo.basesections.v1.ProcessStep

properties:

name type
duration float The elapsed time since the annealing process started.
unit=second
starting_temperature float The starting T in the annealing ramp.
unit=degree_Celsius
ending_temperature float The starting T in the annealing ramp.
unit=degree_Celsius

Annealing

description: Heat treatment process used to alter the material's properties, such as reducing defects, improving crystallinity, or relieving internal stresses.

inherits from: nomad.datamodel.metainfo.basesections.v1.Process, nomad.datamodel.data.EntryData

links: http://purl.obolibrary.org/obo/CHMO_0001465

properties:

name type
tags str Searchable tags for this entry. Use Explore tab for searching.
shape=['*']
recipe AnnealingRecipe The recipe used for the process. If a recipe is found, all the data is copied from the Recipe within the Process.
duration float The elapsed time since the annealing process started.
unit=second
steps AnnealingStep The steps of the annealing process.
sub-section, repeats

normalization:

  • Sets the start time for each step in self.steps if not already set, based on the datetime and duration fields.
  • Sets the end_time field to the calculated end time if it is not already set.
  • Updates the archive.workflow2.outputs list with links to the samples processed.

AnnealingRecipe

description: A Recipe for an annealing process.

inherits from: Annealing, Recipe, nomad.datamodel.data.EntryData

properties:

name type
lab_id str A unique human readable ID for the recipe.

normalization:

  • Sets the start time for each step in self.steps if not already set, based on the datetime and duration fields.
  • Sets the end_time field to the calculated end time if it is not already set.
  • Updates the archive.workflow2.outputs list with links to the samples processed.

CleaningStep

description: A step of cleaning process.

inherits from: nomad.datamodel.metainfo.basesections.v1.ProcessStep

properties:

name type
duration float The elapsed time since the cleaning process started.
unit=second
temperature float The temperature of the cleaning process.
unit=degree_Celsius
agitation ['Magnetic Stirring', 'Sonication'] The agitation method used during the cleaning process.
cleaning_reagents nomad.datamodel.metainfo.basesections.v1.CompositeSystemReference sub-section

Cleaning

description: Surface cleaning in thin film material science involves removing contaminants and residues from a substrate's surface to ensure proper adhesion and uniformity of the thin film deposition.

inherits from: nomad.datamodel.metainfo.basesections.v1.Process, nomad.datamodel.data.EntryData

properties:

name type
tags str Searchable tags for this entry. Use Explore tab for searching.
shape=['*']
recipe CleaningRecipe The recipe used for the process. If a recipe is found, all the data is copied from the Recipe within the Process.
duration float The elapsed time since the annealing process started.
unit=second
steps CleaningStep The steps of the cleaning process.
sub-section, repeats

normalization:

  • Sets the start time for each step in self.steps if not already set, based on the datetime and duration fields.
  • Sets the end_time field to the calculated end time if it is not already set.
  • Updates the archive.workflow2.outputs list with links to the samples processed.

CleaningRecipe

description: A Recipe for an cleaning process.

inherits from: Cleaning, Recipe, nomad.datamodel.data.EntryData

properties:

name type
lab_id str A unique human readable ID for the recipe.

normalization:

  • Sets the start time for each step in self.steps if not already set, based on the datetime and duration fields.
  • Sets the end_time field to the calculated end time if it is not already set.
  • Updates the archive.workflow2.outputs list with links to the samples processed.