tidy3d.CustomLorentz#

class CustomLorentz[source]#

Bases: CustomDispersiveMedium, Lorentz

A spatially varying dispersive medium described by the Lorentz model.

Parameters:

Notes

The frequency-dependence of the complex-valued permittivity is described by:

\[\epsilon(f) = \epsilon_\infty + \sum_i \frac{\Delta\epsilon_i f_i^2}{f_i^2 - 2jf\delta_i - f^2}\]

Example

>>> x = np.linspace(-1, 1, 5)
>>> y = np.linspace(-1, 1, 6)
>>> z = np.linspace(-1, 1, 7)
>>> coords = dict(x=x, y=y, z=z)
>>> eps_inf = SpatialDataArray(np.ones((5, 6, 7)), coords=coords)
>>> d_epsilon = SpatialDataArray(np.random.random((5, 6, 7)), coords=coords)
>>> f = SpatialDataArray(1+np.random.random((5, 6, 7)), coords=coords)
>>> delta = SpatialDataArray(np.random.random((5, 6, 7)), coords=coords)
>>> lorentz_medium = CustomLorentz(eps_inf=eps_inf, coeffs=[(d_epsilon,f,delta),])
>>> eps = lorentz_medium.eps_model(200e12)

See also

CustomPoleResidue:

A spatially varying dispersive medium described by the pole-residue pair model.

Notebooks
Lectures

Attributes

is_spatially_uniform

Whether the medium is spatially uniform.

attrs

Methods

eps_dataarray_freq(frequency)

Permittivity array at frequency.

Inherited Common Usage

eps_inf#
coeffs#
property is_spatially_uniform#

Whether the medium is spatially uniform.

eps_dataarray_freq(frequency)[source]#

Permittivity array at frequency.

Parameters:

frequency (float) – Frequency to evaluate permittivity at (Hz).

Returns:

__hash__()#

Hash method.