def __init__(self, radius_mode=False, specsheet=None, **kwargs): self.ro_version = rayoptics.__version__ self.radius_mode = radius_mode self.specsheet = specsheet self.system_spec = SystemSpec() self.seq_model = SequentialModel(self, **kwargs) self.optical_spec = OpticalSpecs(self, **kwargs) self.parax_model = ParaxialModel(self, **kwargs) self.ele_model = ElementModel(self, **kwargs) if self.specsheet: self.set_from_specsheet()
def __init__(self, radius_mode=False, specsheet=None, **kwargs): self.ro_version = rayoptics.__version__ self.radius_mode = radius_mode self.specsheet = specsheet self.system_spec = SystemSpec() self.seq_model = SequentialModel(self, **kwargs) self.optical_spec = OpticalSpecs(self, **kwargs) self.parax_model = ParaxialModel(self, **kwargs) self.ele_model = ElementModel(self, **kwargs) if self.specsheet: self.set_from_specsheet() if kwargs.get('do_init', True): # need to do this after OpticalSpec is initialized self.seq_model.update_model()