materials.ideal

Ideal Material

This module contains the IdealMaterial class, which represents an ideal material with a fixed refractive index and extinction coefficient for all wavelengths.

Kramer Harrison, 2024

Classes

IdealMaterial(n[, k, propagation_model])

Represents an ideal material with a fixed refractive index and extinction coefficient for all wavelengths.

class IdealMaterial(n: float, k: float = 0, propagation_model: BasePropagationModel | None = None)[source]

Represents an ideal material with a fixed refractive index and extinction coefficient for all wavelengths.

index

The refractive index of the material.

Type:

float

absorp

The extinction coefficient of the material.

Type:

float

abbe() float

Calculate the Abbe number (Vd) of the material.

The Abbe number is a measure of the material’s dispersion, defined as Vd = (n_d - 1) / (n_F - n_C), where n_d, n_F, and n_C are the refractive indices at the Fraunhofer d (587.5618 nm), F (486.1327 nm), and C (656.2725 nm) spectral lines, respectively.

Returns:

The Abbe number of the material.

Return type:

float

classmethod from_dict(data)[source]

Creates a material from a dictionary representation.

Parameters:

data (dict) – The dictionary representation of the material.

Returns:

The material.

Return type:

IdealMaterial

k(wavelength: float | be.ndarray, **kwargs) float | be.ndarray

Calculates the extinction coefficient at a given wavelength with caching.

Parameters:
  • wavelength (float | be.ndarray) – The wavelength(s) of light in microns. Can be a float, numpy array, or torch tensor.

  • **kwargs – Additional keyword arguments for calculation.

Returns:

The extinction coefficient at the given wavelength(s).

Return type:

float | be.ndarray

n(wavelength: float | be.ndarray, **kwargs) float | be.ndarray

Calculates the refractive index at a given wavelength with caching.

Parameters:
  • wavelength (float | be.ndarray) – The wavelength(s) of light in microns. Can be a float, numpy array, or torch tensor.

  • **kwargs – Additional keyword arguments for calculation (e.g., temperature).

Returns:

The refractive index at the given wavelength(s).

Return type:

float | be.ndarray

to_dict()[source]

Returns a dictionary representation of the material.

Returns:

A dictionary representation of the material.

Return type:

dict