Sellmeier1

class dnois.mt.Sellmeier1(name: str, ks: list[float], ls: list[float], *args, **kwargs)

Materials described by Sellmeier1 formula:

\[n^2-1=\sum_{i=1}^3\frac{K_i\lambda^2}{\lambda^2-L_i}\]
Parameters:
  • ks (list[float]) – The coefficients \(K_i,i=1,\cdots,3\) in Sellmeier1 formula.

  • ls (list[float]) – The coefficients \(L_i,i=1,\cdots,3\) in Sellmeier1 formula.

See Material for descriptions for other parameters.

classmethod from_dict(d: dict) Self

Constructs an instance of cls from a dict.

Parameters:

d (dict) – A dict typically returned by to_dict().

Returns:

An instance of cls.

classmethod load_json(file, **kwargs) Self

Constructs an instance of cls through loading JSON from a file, converting it to a dict and then calling from_dict().

Parameters:
  • file (str or pathlib.Path or file-like object) – The JSON file to load. Either its path (str or pathlib.Path) or a file-like object.

  • kwargs – Keyword arguments passed to json.load().

Returns:

An instance of cls.

n(wl: Real | Tensor, t: float = None, p: float = None, relative: bool = True) Real | Tensor

Computes refractive index.

Note

The result is not dependent on t if temperature_affect_n is False, similarly for p and pressure_affect_n.

Parameters:
  • wl (float or Tensor) – Wavelength measured in air under given condition.

  • t (float) – Temperature in degree Celsius. Default: default_temperature.

  • p (float) – Pressure in atm. Default: default_pressure.

  • relative (bool) – Whether to return relative refractive index or the absolute one otherwise. Default: True.

Returns:

Refractive index.

n_abs(wl: Real | Tensor, t: float = None, p: float = None) Real | Tensor

Computes absolute refractive index.

See n() for description of parameters.

n_rel(wl: Real | Tensor, t: float = None, p: float = None) Real | Tensor

Computes refractive index relative to air.

See n() for description of parameters.

save_json(file, **kwargs)

Save self into a JSON file file.

Parameters:
  • file – The JSON file to save. Either its path (str or pathlib.Path) or a file-like object.

  • kwargs – Keyword arguments passed to json.dump().

to_dict(keep_tensor: bool = True) dict[str, Any]

Converts self into a dict which recursively contains only primitive Python objects.

Return type:

dict

to_json(**kwargs) str

Converts self into a JSON string.

Parameters:

kwargs – Keyword arguments passed to json.dumps().

Return type:

str

ks

The coefficients \(K_i\) s in Sellmeier{num} formula.

ls

The coefficients \(L_i\) s in Sellmeier{num} formula.

max_wl

Maximum wavelength valid for the material.

min_wl

Minimum wavelength valid for the material.

name

Name of the material.

ref_t

Reference temperature in degree Celsius.