Skip to content

Optical material library

GSIM_MATERIAL_CARDS contains the built-in fallback optical models. Project and PDK cards take precedence.

Built-in cards

Silicon

Lookups Supported values Defaults Paper
Si (default), Si-Salzberg λ = 1.357–11.04 µm
T fixed
T = 299.15 K Salzberg and Villa 1957
Si-Li-293K λ = 1.2–14.0 µm
T = 100–750 K
T = 293 K Li 1980

Silicon nitride

Lookups Supported values Defaults Paper
SiN (default), SiN-Luke λ = 0.310–5.504 µm — Luke et al. 2015

Fused silica

Lookups Supported values Defaults Paper
SiO2 (default), SiO2-Malitson λ = 0.21–6.7 µm
T fixed
T = 293 K Malitson 1965

Lithium niobate

Lookups Supported values Defaults Paper
LN (default), LiNbO3-Zelmon λ = 0.4–5.0 µm
axis = o or e
T fixed
T = 21 °C Zelmon et al. 1997
LiNbO3-MgO5-Gayer λ = 0.5–1.62 µm
axis = o or e
T = 20–100 °C
T = 24.5 °C Gayer et al. 2008

Refractive index

Curves span each model's full wavelength validity and use its default temperature.

from gsim.common.materials import resolve_material_snapshot

snapshot = resolve_material_snapshot("Si", wavelength_um=1.55)
print(snapshot.refractive_index)

Lookup is case-sensitive. A project card with the same name replaces that fallback.

Analytic PDK cards

Project cards can use pdk_schema.AnalyticDispersion with scalar n or n_squared output, including AN800's modified Sellmeier equations. The resolver converts the simulation wavelength to each declared input unit (um, nm, or m), evaluates the stored equation and parameters, and enforces the card's wavelength validity. These models produce a lossless snapshot with zero extinction coefficient.

Analytic inputs other than wavelength and eps_real output are not supported by the scalar index resolver. Invalid or non-real equation results raise MaterialModelError; out-of-range wavelengths raise WavelengthOutOfRangeError.