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:
  • mat_name (str) – Name of the material.

  • Bcoeff (list[float], optional) – Sellmeier B coefficinets. Defaults to None.

  • Ccoeff (list[float], optional) – Sellmeier C coefficients. Defaults to None.

  • color (str, optional) – Material color to display

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:

numpy.ndarray

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:

numpy.ndarray