Materials

Calling a material with a thickness, mat(d), gives a layer (a Term).

class camfr.Material

An isotropic material.

Material(n) has refractive index n; a negative imaginary part is loss. Material(n, etar) sets eps_r = n*etar and mu_r = n/etar (etar defaults to n, i.e. mu_r = 1). Calling a material with a thickness gives a Term, Si(0.22), from which Slabs and Stacks are built.

__init__(n: complex) -> None

__init__(n: complex, etar: complex) -> None

eps() → complex

Permittivity (F/m).

epsr() → complex

Relative permittivity.

eta() → complex

etar*sqrt(eps0/mu0).

etar() → complex

The etar parameter (eps_r/n).

gain() → float

Material gain at the current wavelength, in 1/cm.

mu() → complex

Permeability (H/m).

mur() → complex

Relative permeability.

n() → complex

Refractive index.

set_epsr(epsr: complex) → None

Set the relative permittivity, keeping the permeability.

set_epsr_mur(epsr: complex, mur: complex) → None

Set the relative permittivity and permeability.

set_etar(etar: complex) → None

Set etar (n unchanged).

set_mur(mur: complex) → None

Set the relative permeability, keeping the permittivity.

set_n(n: complex) → None

Set the refractive index (etar unchanged).

class camfr.BiaxialMaterial(epsr_1: complex, epsr_2: complex, epsr_z: complex, mur_1: complex, mur_2: complex, mur_z: complex)

A biaxial material, given by the diagonal elements of its relative permittivity and permeability tensors.

epsr(i: int) → complex

Relative permittivity along axis i (1, 2 or 3 = z).

mur(i: int) → complex

Relative permeability along axis i (1, 2 or 3 = z).

class camfr.BaseMaterial

Base class of Material and BiaxialMaterial.

Dispersive materials

class camfr.Dispersive_Material_Factory(filename)

Materials from a tabulated index. The file has lines of wavelength (nm), n and k; calling the factory returns a Material at the current wavelength (needs SciPy).

class camfr.ZnS_Factory

ZnS with the dispersion formula of DeVore, JOSA 41, 416 (1951); calling it returns a Material at the current wavelength.