rayoptics.seq package
Package for sequential modeling of optical systems
The seq
subpackage provides core classes and functions for
sequential optical modeling. A sequential optical model is a sequence of
surfaces and gaps.
The sequential model has this structure
IfcObj Ifc1 Ifc2 Ifc3 ... Ifci-1 IfcImg
\ / \ / \ / \ /
GObj G1 G2 Gi-1
where
There are N interfaces and N-1 gaps. The initial configuration has an object and image Surface and an object gap.
The Interface API supports implementation of an optical action, such as refraction, reflection, scatter, diffraction, etc. The Interface may be realized as a physical profile separating the adjacent gaps or an idealized object, such as a thin lens or 2 point HOE.
The Gap class maintains a simple separation (z translation) and the medium filling the gap. More complex coordinate transformations are handled through the Interface API.
Modules comprising the sequential optical modeling capability include:
Sequential optical model:
sequential
Modules for specialized optical behavior:
twoconicmirrors
Submodules
- rayoptics.seq.gap module
- rayoptics.seq.interface module
InteractionMode
Interface
Interface.interact_mode
Interface.delta_n
Interface.decenter
Interface.max_aperture
Interface.listobj_str()
Interface.update()
Interface.interface_type()
Interface.sync_to_restore()
Interface.profile_cv
Interface.set_optical_power()
Interface.surface_od()
Interface.point_inside()
Interface.set_max_aperture()
Interface.intersect()
Interface.normal()
Interface.phase()
Interface.apply_scale_factor()
- rayoptics.seq.medium module
- rayoptics.seq.sequential module
SequentialModel
SequentialModel.opt_model
SequentialModel.ifcs
SequentialModel.gaps
SequentialModel.lcl_tfrms
SequentialModel.rndx
SequentialModel.z_dir
SequentialModel.gbl_tfrms
SequentialModel.stop_surface
SequentialModel.cur_surface
SequentialModel.reset()
SequentialModel.get_num_surfaces()
SequentialModel.path()
SequentialModel.reverse_path()
SequentialModel.calc_ref_indices_for_spectrum()
SequentialModel.central_wavelength()
SequentialModel.index_for_wavelength()
SequentialModel.central_rndx()
SequentialModel.get_surface_and_gap()
SequentialModel.set_cur_surface()
SequentialModel.set_stop()
SequentialModel.insert()
SequentialModel.remove()
SequentialModel.remove_node()
SequentialModel.add_surface()
SequentialModel.sync_to_restore()
SequentialModel.update_model()
SequentialModel.update_optical_properties()
SequentialModel.apply_scale_factor()
SequentialModel.flip()
SequentialModel.set_from_specsheet()
SequentialModel.insert_surface_and_gap()
SequentialModel.update_reflections()
SequentialModel.get_rndx_and_imode()
SequentialModel.surface_label_list()
SequentialModel.list_model()
SequentialModel.list_model_old()
SequentialModel.list_gaps()
SequentialModel.list_surfaces()
SequentialModel.list_surface_and_gap()
SequentialModel.list_decenters()
SequentialModel.list_sg()
SequentialModel.list_elements()
SequentialModel.listobj_str()
SequentialModel.trace_fan()
SequentialModel.trace_grid()
SequentialModel.trace_wavefront()
SequentialModel.set_clear_apertures_paraxial()
SequentialModel.set_clear_apertures()
SequentialModel.trace()
SequentialModel.compute_global_coords()
SequentialModel.compute_local_transforms()
SequentialModel.find_matching_ifcs()
gen_sequence()
create_surface_and_gap()
- rayoptics.seq.twoconicmirrors module