pub struct CrystalConfig {
pub kind: CrystalType,
pub pm_type: PMType,
pub phi_deg: f64,
pub theta_deg: AutoCalcParam<f64>,
pub length_um: f64,
pub temperature_c: f64,
pub counter_propagation: bool,
}Expand description
Flat configuration of crystal for ease of import/export
Fields§
§kind: CrystalTypeThe type of crystal
pm_type: PMTypeThe type of phase matching
phi_deg: f64The polar angle of the crystal in degrees
theta_deg: AutoCalcParam<f64>The azimuthal angle of the crystal in degrees
length_um: f64The length of the crystal in micrometers
temperature_c: f64The temperature of the crystal in degrees Celsius
counter_propagation: boolWhether the downconversion is counter-propagating
Trait Implementations§
Source§impl Clone for CrystalConfig
impl Clone for CrystalConfig
Source§fn clone(&self) -> CrystalConfig
fn clone(&self) -> CrystalConfig
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 CrystalConfig
impl Debug for CrystalConfig
Source§impl Default for CrystalConfig
impl Default for CrystalConfig
Source§impl<'de> Deserialize<'de> for CrystalConfig
impl<'de> Deserialize<'de> for CrystalConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl From<CrystalConfig> for CrystalSetup
Converts without autocalculating theta
impl From<CrystalConfig> for CrystalSetup
Converts without autocalculating theta
Source§fn from(cfg: CrystalConfig) -> Self
fn from(cfg: CrystalConfig) -> Self
Converts to this type from the input type.
Source§impl From<CrystalSetup> for CrystalConfig
impl From<CrystalSetup> for CrystalConfig
Source§fn from(setup: CrystalSetup) -> Self
fn from(setup: CrystalSetup) -> Self
Converts to this type from the input type.
Source§impl PartialEq for CrystalConfig
impl PartialEq for CrystalConfig
Source§impl Serialize for CrystalConfig
impl Serialize for CrystalConfig
impl StructuralPartialEq for CrystalConfig
Auto Trait Implementations§
impl Freeze for CrystalConfig
impl RefUnwindSafe for CrystalConfig
impl Send for CrystalConfig
impl Sync for CrystalConfig
impl Unpin for CrystalConfig
impl UnwindSafe for CrystalConfig
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.