pub struct OpticalModel<T = PhaseSensor> {
pub gmt: Gmt,
pub src: Rc<RefCell<Source>>,
pub atm: Option<Atmosphere>,
pub dome_seeing: Option<DomeSeeing>,
pub tau: f64,
pub piston: Option<Arc<Vec<f64>>>,
pub sensor: Option<T>,
}
Expand description
GMT optical model
use gmt_dos_clients_crseo::OpticalModel;
let optical_model_builder = OpticalModel::builder().build()?;
Fields§
§gmt: Gmt
§src: Rc<RefCell<Source>>
§atm: Option<Atmosphere>
§dome_seeing: Option<DomeSeeing>
§tau: f64
§piston: Option<Arc<Vec<f64>>>
§sensor: Option<T>
Implementations§
Source§impl<T> OpticalModel<T>
impl<T> OpticalModel<T>
Sourcepub fn builder() -> OpticalModelBuilder<T::ComponentBuilder>
pub fn builder() -> OpticalModelBuilder<T::ComponentBuilder>
Return the OpticalModelBuilder
Trait Implementations§
Source§impl Default for OpticalModel<PhaseSensor>
impl Default for OpticalModel<PhaseSensor>
Source§impl<T: SegmentWiseSensor, const ID: u8> Read<FaceSheetFigure<ID>> for OpticalModel<T>
impl<T: SegmentWiseSensor, const ID: u8> Read<FaceSheetFigure<ID>> for OpticalModel<T>
Source§fn read(&mut self, data: Data<FaceSheetFigure<ID>>)
fn read(&mut self, data: Data<FaceSheetFigure<ID>>)
Read data from an input
Source§impl<T: SegmentWiseSensor> Read<M1ModeShapes> for OpticalModel<T>
impl<T: SegmentWiseSensor> Read<M1ModeShapes> for OpticalModel<T>
Source§fn read(&mut self, data: Data<M1ModeShapes>)
fn read(&mut self, data: Data<M1ModeShapes>)
Read data from an input
Source§impl<T: SegmentWiseSensor> Read<M1RigidBodyMotions> for OpticalModel<T>
impl<T: SegmentWiseSensor> Read<M1RigidBodyMotions> for OpticalModel<T>
Source§fn read(&mut self, data: Data<M1RigidBodyMotions>)
fn read(&mut self, data: Data<M1RigidBodyMotions>)
Read data from an input
Source§impl<T: SegmentWiseSensor> Read<M2ASMFaceSheetFigure> for OpticalModel<T>
impl<T: SegmentWiseSensor> Read<M2ASMFaceSheetFigure> for OpticalModel<T>
Source§fn read(&mut self, data: Data<M2ASMFaceSheetFigure>)
fn read(&mut self, data: Data<M2ASMFaceSheetFigure>)
Read data from an input
Source§impl<T: SegmentWiseSensor> Read<M2ASMReferenceBodyNodes> for OpticalModel<T>
impl<T: SegmentWiseSensor> Read<M2ASMReferenceBodyNodes> for OpticalModel<T>
Source§fn read(&mut self, data: Data<M2ASMReferenceBodyNodes>)
fn read(&mut self, data: Data<M2ASMReferenceBodyNodes>)
Read data from an input
Source§impl<T: SegmentWiseSensor> Read<M2RigidBodyMotions> for OpticalModel<T>
impl<T: SegmentWiseSensor> Read<M2RigidBodyMotions> for OpticalModel<T>
Source§fn read(&mut self, data: Data<M2RigidBodyMotions>)
fn read(&mut self, data: Data<M2RigidBodyMotions>)
Read data from an input
Source§impl<T: SegmentWiseSensor> Read<M2modes> for OpticalModel<T>
impl<T: SegmentWiseSensor> Read<M2modes> for OpticalModel<T>
Source§impl<T: SegmentWiseSensor, const ID: u8> Read<RBM<ID>> for OpticalModel<T>
impl<T: SegmentWiseSensor, const ID: u8> Read<RBM<ID>> for OpticalModel<T>
Source§impl<T: SegmentWiseSensor> Read<ResidualM2modes> for OpticalModel<T>
impl<T: SegmentWiseSensor> Read<ResidualM2modes> for OpticalModel<T>
Source§fn read(&mut self, data: Data<ResidualM2modes>)
fn read(&mut self, data: Data<ResidualM2modes>)
Read data from an input
Source§impl<T: SegmentWiseSensor> Read<SegmentPiston> for OpticalModel<T>
impl<T: SegmentWiseSensor> Read<SegmentPiston> for OpticalModel<T>
Source§fn read(&mut self, data: Data<SegmentPiston>)
fn read(&mut self, data: Data<SegmentPiston>)
Read data from an input
Source§impl<T: SegmentWiseSensor> Size<M1ModeShapes> for OpticalModel<T>
impl<T: SegmentWiseSensor> Size<M1ModeShapes> for OpticalModel<T>
Source§impl<T: SegmentWiseSensor, const E: i32> Size<SegmentPiston<E>> for OpticalModel<T>
impl<T: SegmentWiseSensor, const E: i32> Size<SegmentPiston<E>> for OpticalModel<T>
Source§impl<T: SegmentWiseSensor> Size<SegmentTipTilt> for OpticalModel<T>
impl<T: SegmentWiseSensor> Size<SegmentTipTilt> for OpticalModel<T>
Source§impl<T: SegmentWiseSensor> Size<SegmentWfe> for OpticalModel<T>
impl<T: SegmentWiseSensor> Size<SegmentWfe> for OpticalModel<T>
Source§impl<T: SegmentWiseSensor, const E: i32> Size<SegmentWfeRms<E>> for OpticalModel<T>
impl<T: SegmentWiseSensor, const E: i32> Size<SegmentWfeRms<E>> for OpticalModel<T>
Source§impl<T: SegmentWiseSensor> Size<Wavefront> for OpticalModel<T>
impl<T: SegmentWiseSensor> Size<Wavefront> for OpticalModel<T>
Source§impl<T: SegmentWiseSensor, const E: i32> Size<WfeRms<E>> for OpticalModel<T>
impl<T: SegmentWiseSensor, const E: i32> Size<WfeRms<E>> for OpticalModel<T>
Source§impl<T> Update for OpticalModel<T>
impl<T> Update for OpticalModel<T>
Source§impl<T> Write<DetectorFrame> for OpticalModel<T>
impl<T> Write<DetectorFrame> for OpticalModel<T>
Source§impl<T: SegmentWiseSensor, const E: i32> Write<SegmentD7Piston<E>> for OpticalModel<T>
impl<T: SegmentWiseSensor, const E: i32> Write<SegmentD7Piston<E>> for OpticalModel<T>
Source§impl<T: SegmentWiseSensor, const E: i32> Write<SegmentPiston<E>> for OpticalModel<T>
impl<T: SegmentWiseSensor, const E: i32> Write<SegmentPiston<E>> for OpticalModel<T>
Source§impl<T: SegmentWiseSensor> Write<SegmentTipTilt> for OpticalModel<T>
impl<T: SegmentWiseSensor> Write<SegmentTipTilt> for OpticalModel<T>
Source§impl<T: SegmentWiseSensor> Write<SegmentWfe> for OpticalModel<T>
impl<T: SegmentWiseSensor> Write<SegmentWfe> for OpticalModel<T>
Source§impl<T: SegmentWiseSensor, const E: i32> Write<SegmentWfeRms<E>> for OpticalModel<T>
impl<T: SegmentWiseSensor, const E: i32> Write<SegmentWfeRms<E>> for OpticalModel<T>
Source§impl<T: SegmentWiseSensor> Write<Wavefront> for OpticalModel<T>
impl<T: SegmentWiseSensor> Write<Wavefront> for OpticalModel<T>
Source§impl<T: SegmentWiseSensor, const E: i32> Write<WfeRms<E>> for OpticalModel<T>
impl<T: SegmentWiseSensor, const E: i32> Write<WfeRms<E>> for OpticalModel<T>
impl<T> Selector for OpticalModel<T>
impl<T> Send for OpticalModel<T>
impl<T> Sync for OpticalModel<T>
impl<T> TimerMarker for OpticalModel<T>
impl<T> Units for OpticalModel<T>
Auto Trait Implementations§
impl<T> Freeze for OpticalModel<T>where
T: Freeze,
impl<T = PhaseSensor> !RefUnwindSafe for OpticalModel<T>
impl<T> Unpin for OpticalModel<T>where
T: Unpin,
impl<T = PhaseSensor> !UnwindSafe for OpticalModel<T>
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> 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.