pub struct SellmeierModel {
pub b: Vec<f64>,
pub c: Vec<f64>,
}Expand description
Sellmeier dispersion model for the refractive index of optical glass.
n²(λ) = 1 + Σ_i B_i λ² / (λ² − C_i)
where λ is in micrometres and C_i are resonance wavelengths squared [μm²].
Fields§
§b: Vec<f64>Sellmeier B coefficients (dimensionless oscillator strengths).
c: Vec<f64>Sellmeier C coefficients [μm²].
Implementations§
Source§impl SellmeierModel
impl SellmeierModel
Sourcepub fn fused_silica() -> Self
pub fn fused_silica() -> Self
Standard Sellmeier coefficients for fused silica (SiO₂).
Sourcepub fn refractive_index(&self, lambda_um: f64) -> f64
pub fn refractive_index(&self, lambda_um: f64) -> f64
Refractive index n(λ) for wavelength lambda_um in micrometres.
Sourcepub fn group_index(&self, lambda_um: f64) -> f64
pub fn group_index(&self, lambda_um: f64) -> f64
Group refractive index n_g = n − λ dn/dλ, estimated by finite difference.
Trait Implementations§
Source§impl Clone for SellmeierModel
impl Clone for SellmeierModel
Source§fn clone(&self) -> SellmeierModel
fn clone(&self) -> SellmeierModel
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for SellmeierModel
impl RefUnwindSafe for SellmeierModel
impl Send for SellmeierModel
impl Sync for SellmeierModel
impl Unpin for SellmeierModel
impl UnsafeUnpin for SellmeierModel
impl UnwindSafe for SellmeierModel
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