Properties#

Property classes#

class h_transport_materials.Property(material: str = '', source: str = '', range: tuple = None, year: int = None, isotope: str = None, author: str = '', note: str = None)[source]#

Bases: object

Base Property class

Parameters:
  • material (str, optional) – name of the material. Defaults to “”.

  • source (str, optional) – bibliographic reference. Defaults to “”.

  • range (tuple, optional) – temperature validity range in K. Defaults to None.

  • year (int, optional) – year of publication. Defaults to None.

  • isotope (str, optional) – isotope of the property (“H”, “D” or “T”). Defaults to None.

  • author (str, optional) – name of the author. Defaults to “”.

  • note (str, optional) – additional information. Defaults to None.

export_bib(filename: str)[source]#

Exports the property reference to bib

Parameters:

filename (str) – the filename

Raises:

ValueError – if the property bibsource attribute is None

to_json()[source]#

Returns a dictionary with the relevant attributes of the property

Returns:

a dict reprensation of the property

Return type:

dict

class h_transport_materials.ArrheniusProperty(pre_exp: float = None, act_energy: float = None, data_T: list = None, data_y: list = None, **kwargs)[source]#

Bases: Property

Arrhenius type Property value = pre_exp * exp( - act_energy/(k_B T) )

Parameters:
  • pre_exp (float or pint.Quantity, optional) – the pre-exponential factor. Defaults to None.

  • act_energy (float or pint.Quantity, optional) – the activation energy. Defaults to None.

  • data_T (list, optional) – list of temperatures in K. Used to automatically fit experimental points. Defaults to None.

  • data_y (list, optional) – list of y data. Used to automatically fit experimental points. Defaults to None.

  • kwargs – other Property arguments

to_json()[source]#

Returns a dictionary with the relevant attributes of the property

Returns:

a dict reprensation of the property

Return type:

dict

class h_transport_materials.property.Diffusivity(D_0: float = None, E_D: float = None, **kwargs)[source]#

Bases: ArrheniusProperty

Diffusivity class

Parameters:
  • D_0 (float or pint.Quantity, optional) – pre-exponential factor. Defaults to None.

  • E_D (float or pint.Quantity, optional) – activation energy. Defaults to None.

class h_transport_materials.property.DissociationCoeff(**kwargs)[source]#

Bases: ArrheniusProperty

DissociationCoeff class

class h_transport_materials.property.Permeability(pre_exp=None, act_energy=None, data_T: list = None, data_y: list = None, law: str = None, **kwargs)[source]#

Bases: ArrheniusProperty

Permeability class

Parameters:
  • pre_exp (float or pint.Quantity, optional) – the pre-exponential factor. Defaults to None.

  • act_energy (float or pint.Quantity, optional) – the activation energy. Defaults to None.

  • data_T (list, optional) – list of temperatures in K. Used to automatically fit experimental points. Defaults to None.

  • data_y (list, optional) – list of y data. Used to automatically fit experimental points. Defaults to None.

  • law (str, optional) – “sievert” or “henry”, the solubility law. Defaults to None.

class h_transport_materials.property.RecombinationCoeff(**kwargs)[source]#

Bases: ArrheniusProperty

RecombinationCoeff class

class h_transport_materials.property.Solubility(S_0: float = None, E_S: float = None, law: str = None, **kwargs)[source]#

Bases: ArrheniusProperty

Solubility class

Parameters:
  • S_0 (float or pint.Quantity, optional) – pre-exponential factor. Defaults to None.

  • E_S (float or pint.Quantity, optional) – activation energy. Defaults to None.

  • law (str, optional) – “sievert” or “henry”, the solubility law

h_transport_materials.property.get_nb_citations(doi: str)[source]#

Returns the number of citations of a given doi in the crossref database

Parameters:

doi (str) – the DOI of the source

Returns:

the number of citations according to crossref

Return type:

int

Groups of properties#

class h_transport_materials.properties_group.PropertiesGroup(iterable=(), /)[source]#

Bases: list

export_bib(filename: str)[source]#

Exports the bibliography data

Parameters:

filename (str) – the path of the exported file

filter(exclude=False, **kwargs)[source]#

Returns properties that match the specified arguments. Usage:

group = htm.diffusivities

# filter tungsten and authors esteban or heinola
filtered_props = group.filter(material="tungsten").filter(author=["esteban", "heinola"])

# exclude isotope T
filtered_props = filtered_props.filter(exclude=True, isotope="T")

my_prop = filtered_props[0]
Parameters:
  • exclude (bool, optional) – if True, the searched keys will be excluded. Defaults to False.

  • kwargs – attributes of properties (ex: material=”tungsten”). String values must be lowercase to ensure good comparison.

Returns:

the resulting properties

Return type:

PropertiesGroup

mean()[source]#

Returns the mean Arrhenius property.

Raises:

ValueError – When called on a mixed units group

Returns:

the mean arrhenius property

Return type:

ArrheniusProperty

to_latex_table()[source]#

Exports to simple latex table