pub struct RefractiveIndex {
pub n: f64,
pub k: f64,
}Expand description
Complex refractive index N = n + i·k.
The real part n represents phase velocity reduction; the imaginary part
k (extinction coefficient) describes optical absorption.
Fields§
§n: f64Real part — phase refractive index.
k: f64Imaginary part — extinction coefficient.
Implementations§
Source§impl RefractiveIndex
impl RefractiveIndex
Sourcepub fn cauchy(a: f64, b: f64, c: f64, lambda_um: f64) -> f64
pub fn cauchy(a: f64, b: f64, c: f64, lambda_um: f64) -> f64
Cauchy dispersion model: n(λ) = A + B/λ² + C/λ⁴.
lambda_um is the wavelength in micrometres.
Returns only the real part; combine with a separate k model as needed.
Sourcepub fn epsilon_real(&self) -> f64
pub fn epsilon_real(&self) -> f64
Dielectric function real part: ε₁ = n² - k².
Sourcepub fn epsilon_imag(&self) -> f64
pub fn epsilon_imag(&self) -> f64
Dielectric function imaginary part: ε₂ = 2nk.
Trait Implementations§
Source§impl Clone for RefractiveIndex
impl Clone for RefractiveIndex
Source§fn clone(&self) -> RefractiveIndex
fn clone(&self) -> RefractiveIndex
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for RefractiveIndex
impl Debug for RefractiveIndex
Source§impl PartialEq for RefractiveIndex
impl PartialEq for RefractiveIndex
impl Copy for RefractiveIndex
impl StructuralPartialEq for RefractiveIndex
Auto Trait Implementations§
impl Freeze for RefractiveIndex
impl RefUnwindSafe for RefractiveIndex
impl Send for RefractiveIndex
impl Sync for RefractiveIndex
impl Unpin for RefractiveIndex
impl UnsafeUnpin for RefractiveIndex
impl UnwindSafe for RefractiveIndex
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more