def apply_local_refraction(self, beam): surface_shape = self.get_optical_element().get_surface_shape() ccc = S4Conic.initialize_from_coefficients( surface_shape.get_conic_coefficients()) oe = self.get_optical_element() refraction_index_object, refraction_index_image = oe.get_refraction_indices( ) beam_mirr, normal = ccc.apply_refraction_on_beam( beam, refraction_index_object, refraction_index_image) return beam_mirr, normal
def testsInitializers(self): # # initializers # a = S4Conic() print(a.info()) a = S4Conic.initialize_from_coefficients([1.0,1,1,1,1,1,1,1,1,1]) assert_equal(a.get_coefficients(),numpy.array([1.0,1,1,1,1,1,1,1,1,1])) print(a.info()) a = S4Conic.initialize_as_plane() assert_equal(a.get_coefficients(),numpy.array([0,0,0,0,0,0,0,0,-1.,0])) print(a.info())
def get_optical_surface_instance(self): surface_shape = self.get_surface_shape() print(">>>>> Conic optical element") return S4Conic.initialize_from_coefficients(surface_shape.get_conic_coefficients())