Turning Effect objects on or offΒΆ

TL;DR

optical_train = sim.load_example_optical_train()

optical_train.effects
optical_train["detector_linearity"].include = False
optical_train["detector_linearity"].meta["include"] = True

To list all the effects in an optical train, we do use the effects attribute.

Alternatively, we can call opt.optics_manager.all_effects()

[1]:
import scopesim as sim

opt = sim.load_example_optical_train()
opt.effects
[1]:
Table length=17
elementnameclassincluded
str16str22str29bool
basic_atmosphereatmospheric_radiometryAtmosphericTERCurveFalse
basic_telescopepsfSeeingPSFTrue
basic_telescopetelescope_reflectionTERCurveTrue
basic_instrumentstatic_surfacesSurfaceListTrue
basic_instrumentfilter_wheel : [J]FilterWheelTrue
basic_instrumentslit_wheel : [narrow]SlitWheelFalse
basic_detectordetector_windowDetectorWindowTrue
basic_detectorqe_curveQuantumEfficiencyCurveTrue
basic_detectorexposure_actionSummedExposureTrue
basic_detectordark_currentDarkCurrentTrue
basic_detectorshot_noiseShotNoiseTrue
basic_detectordetector_linearityLinearityCurveTrue
basic_detectorreadout_noisePoorMansHxRGReadoutNoiseTrue
basic_detectorsource_fits_keywordsSourceDescriptionFitsKeywordsTrue
basic_detectoreffects_fits_keywordsEffectsMetaKeywordsTrue
basic_detectorconfig_fits_keywordsSimulationConfigFitsKeywordsTrue
basic_detectorextra_fits_keywordsExtraFitsKeywordsTrue

Turning an effect on or off is as simple as using setting the .include attribute to true or False:

[2]:
opt["slit_wheel"].include = True
opt["slit_wheel"].include = False