Materials¶
Base Materials¶
fdtdx.objects.material.UniformMaterial
¶
Bases: SimulationObject
Object with uniform permittivity and permeability throughout its volume.
A material object that applies constant permittivity and permeability values to its entire volume in the simulation grid. Used as base class for specific material implementations.
Attributes:
Name | Type | Description |
---|---|---|
permittivity |
float
|
Relative permittivity (εᵣ) of the material |
permeability |
float
|
Relative permeability (μᵣ) of the material, defaults to 1.0 |
color |
tuple[float, float, float]
|
RGB tuple for visualization, defaults to light grey |
Source code in src/fdtdx/objects/material.py
get_inv_permeability(prev_inv_permeability, params)
¶
Calculate inverse permeability for this material's volume.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
prev_inv_permeability
|
Array
|
Previous inverse permeability values |
required |
params
|
dict[str, Array] | None
|
Optional parameters for permeability calculation |
required |
Returns:
Type | Description |
---|---|
tuple[Array, dict]
|
tuple containing: - Array of inverse permeability values (1/μᵣ) - Dictionary with additional information |
Source code in src/fdtdx/objects/material.py
get_inv_permittivity(prev_inv_permittivity, params)
¶
Calculate inverse permittivity for this material's volume.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
prev_inv_permittivity
|
Array
|
Previous inverse permittivity values |
required |
params
|
dict[str, Array] | None
|
Optional parameters for permittivity calculation |
required |
Returns:
Type | Description |
---|---|
tuple[Array, dict]
|
tuple containing: - Array of inverse permittivity values (1/εᵣ) - Dictionary with additional information |
Source code in src/fdtdx/objects/material.py
Base class for materials with uniform electromagnetic properties.
fdtdx.objects.material.NoMaterial
¶
Bases: SimulationObject
Object that does not modify the permittivity nor permeability
Source code in src/fdtdx/objects/material.py
Non-interacting material that preserves existing properties.
fdtdx.objects.material.SimulationVolume
¶
Bases: UniformMaterial
Background material for the entire simulation volume.
Defines the default material properties for the simulation background. Usually represents air/vacuum with εᵣ=1.0 and μᵣ=1.0.
Source code in src/fdtdx/objects/material.py
Background material defining simulation environment properties.
fdtdx.objects.material.Substrate
¶
Bases: UniformMaterial
Material representing a substrate layer.
Used to model substrate materials like silicon dioxide. Visualized in light brown color by default.
Source code in src/fdtdx/objects/material.py
Material for modeling substrate layers.
fdtdx.objects.material.WaveGuide
¶
Bases: UniformMaterial
Material for optical waveguides.
Used to model waveguide structures that can guide electromagnetic waves. Visualized in light blue color by default.
Attributes:
Name | Type | Description |
---|---|---|
permittivity |
float
|
Required relative permittivity of the waveguide material |
color |
tuple[float, float, float]
|
RGB tuple for visualization, defaults to light blue |
Source code in src/fdtdx/objects/material.py
Material for optical waveguide structures.