pyOptiShared.Material.SellmeierMaterial
- class pyOptiShared.Material.SellmeierMaterial(mat_name: str, b_coeff: list[float] = None, c_coeff: list[float] = None, color: str = None)
Bases:
Material
A class to represent an optical material with its refractive index as a function of wavelength.
The refractive index \(n(\lambda)\) of the material is described by the Sellmeier equation:
\[n^2(\lambda) = 1 + \sum_{i=1}^{N} \frac{B_i \lambda^2}{\lambda^2 - C_i}\]- where:
\(( B_i )\), \(( C_i )\) are the Sellmeier coefficients.
\(( \lambda )\) is the wavelength, typically in micrometers (\(\mu\) m).
\(( n )\) is the refractive index.
- Parameters:
- Raises:
ValueError – If B an C coefficients list don’t have the same length.
Methods
eps
(wavelength)This method returns the permittivity at particular wavelengths.
eps_imag
(wavelength)Returns the real part of the permmittivity values.
eps_real
(wavelength)Returns the real part of the permmittivity values.
index
(wavelength)This method returns the refractive index at particular wavelengths.
index_imag
(wavelength)Return the imaginary part of the index of refraction at a given wavelengths.
index_real
(wavelength)Return the real part of the index of refraction at a given wavelengths.
Attributes
color
The color of the material for eventual visualization purposes.
name
Material name.
- eps(wavelength: float | list | ndarray) → ndarray
This method returns the permittivity at particular wavelengths.
- Parameters:
wavelength (float | list[float] | numpy.ndarray) – A set of wavelength values to calculate the permittivity.
- Returns:
Permittivity array for requested wavelength values.
- Return type:
- index(wavelength: float | list[float] | ndarray) → ndarray
This method returns the refractive index at particular wavelengths.
- Parameters:
wavelength (float | list[float] | numpy.ndarray) – A set of wavelength values to calculate the refractive index.
- Returns:
Refractive index array for requested wavelength values.
- Return type: