differt.em.Material#

class Material(name, properties, thickness=None, aliases=())[source]#

Bases: Module

A class representing a material and it electrical properties.

Attributes

aliases

A tuple of name aliases for the material.

thickness

The thickness of the material.

name

The name of the material.

properties

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

aliases: tuple[str, ...] = ()#

A tuple of name aliases for the material.

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:

Float[Array, '*batch']

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-3 [14] defines the electrical properties of a material using 4 real-valued coefficients: a, b, c, and c. The materials mapping is already populated with values from [14, Tab. 3].

Parameters:
Return type:

Self

Returns:

A new material.

Raises:

ValueError – If you passed more than one frequency range and at least one was None.

name: str#

The name of the material.

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:

Float[Array, '*batch']

Returns:

The relative permittivity of the material.

thickness: Float[ArrayLike, ''] | None = None#

The thickness of the material.