scopesim.optics.optical_element module

class scopesim.optics.optical_element.OpticalElement(yaml_dict=None, **kwargs)[source]

Bases: object

Contains all information to describe a section of an optical system

There are 5 major section: location, telescope, relay optics instrument, detector.

An OpticalElement describes how a certain section of the optical train changes the incoming photon distribution by specifying a list of Effects along with a set of local properties e.g. temperature, etc which are common to more than one Effect

Parameters:
yaml_dictdict

Description of optical section properties, effects, and meta-data

kwargsdict

Optical Element specific information which has no connection to the effects that are passed. Any global values, e.g. airmass (i.e. bang strings) are passed on to the individual effect, where the relevant values are then pulled from rc.__currsys__

Attributes:
metadict

Contains meta data from the yaml, and is updated with the OBS_DICT key-value pairs

propertiesdict

Contains any properties that is “global” to the optical element, e.g. instrument temperature, atmospheric pressure. Any OBS_DICT keywords are cleaned with from the meta dict during initialisation

effectslist of dicts

Contains the a list of dict descriptions of the effects that the optical element generates. Any OBS_DICT keywords are cleaned with from the meta dict during initialisation

add_effect(effect)[source]
get_all(effect_class)[source]
get_z_order_effects(z_level)[source]
list_effects()[source]
property masks_list
property properties_str
report(filename=None, output='rst', rst_title_chars='^#*+', **kwargs)[source]
property surfaces_list