differt.em.Material#
- class Material(name, properties, thickness=None, aliases=())[source]#
Bases:
ModuleA class representing a material and it electrical properties.
Attributes
A tuple of name aliases for the material.
The thickness of the material.
The name of the material.
The callable that computes the electrical properties of the material at the given frequency.
Methods
conductivity(frequency)Compute the conductivity of the material at the given frequency.
from_itu_properties(name, *itu_properties)Create a material from ITU properties.
relative_permittivity(frequency)Compute the relative permittivity of the material at the given frequency.
Detailed documentation
- conductivity(frequency)[source]#
Compute the conductivity of the material at the given frequency.
- Parameters:
frequency (
Float[ArrayLike, "*batch"]) – The frequency at which to compute the conductivity.- Return type:
- Returns:
The conductivity of the material.
- classmethod from_itu_properties(name, *itu_properties)[source]#
Create a material from ITU properties.
The ITU-R Recommendation P.2040-4 [14] defines the electrical properties of a material using 4 real-valued coefficients: a, b, c, and c. The
materialsmapping is already populated with values from [14, Tab. 3].- Parameters:
name (
str) – The name of the material.itu_properties (
tuple[Float[ArrayLike, ""],Float[ArrayLike, ""],Float[ArrayLike, ""],Float[ArrayLike, ""],tuple[Float[ArrayLike, ""],Float[ArrayLike, ""]] |None]) –Material properties and corresponding frequency range.
Each tuple must contain:
a (
Float[ArrayLike, '']): The first coefficient for the real part of the relative permittivity.b (
Float[ArrayLike, '']): The second coefficient for the real part of the relative permittivity.c (
Float[ArrayLike, '']): The first coefficient for the conductivity.d (
Float[ArrayLike, '']): The second coefficient for the conductivity.frequency_range (
tuple[Float[ArrayLike, ''],Float[ArrayLike, '']]): The frequency range (in GHz) for which the electrical properties are assumed to be correct.
- Return type:
Self- Returns:
The material with the given ITU properties.
- Raises:
ValueError – If more than one frequency range is specified and one of them is
None.
-
properties:
Callable[[Float[ArrayLike, "*batch"]],tuple[Float[Array, "*batch"],Float[Array, "*batch"]]]# The callable that computes the electrical properties of the material at the given frequency.
The signature of the callable must be as follows.
- Parameters:
frequency – The frequency at which to compute the electrical properties.
- Returns:
A tuple containing the relative permittivity and conductivity of the material.
- relative_permittivity(frequency)[source]#
Compute the relative permittivity of the material at the given frequency.
- Parameters:
frequency (
Float[ArrayLike, "*batch"]) – The frequency at which to compute the relative permittivity.- Return type:
- Returns:
The relative permittivity of the material.
-
thickness:
Float[ArrayLike, ""]|None= None# The thickness of the material.