Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MICADO notebooks refer to strehl ratio, but FieldConstantPSF does not use that (AnisocadoConstPSF does) #200

Open
hugobuddel opened this issue Nov 18, 2024 · 1 comment

Comments

@hugobuddel
Copy link
Collaborator

Various of the MICADO notebooks set the Strehl ratio.

E.g. https://github.com/AstarVienna/irdb/blob/dev_master/MICADO/docs/example_notebooks/2_scopesim_SCAO_1.5mas_astrometry.ipynb

Given that we are observing at a non-standard broadband filter, we need to instruct the OpticalTrain to adjust the PSF strehl ratio. This is done with the !INST.psf dictionary.

cmd["!INST.psf.strehl"] = 0.1

However, MICADO uses a FieldConstantPSF as PSF, which does not use this parameter. The AnisocadoConstPSF does use the Strehl ratio, and is described in the FAQ https://github.com/AstarVienna/irdb/blob/dev_master/MICADO/docs/example_notebooks/MICADO_FAQs.ipynb

MICADO_Sci however, does use AnisocadoConstPSF, and I suppose there the parameter would be taken into account (didn't check).

The notebooks have an instructional purpose, so maybe it is best to resolve this in a way that does actually make the strehl ratio relevant. If the comment in notebook 2 is right, that "we need to adjust the PSF strehl ratio because we are observing at a non-standard broadband filter", then the best course of action might be to copy the example in the FAQ notebook to notebook 2.

The example in the MICADO FAQ:

import scopesim
from scopesim.effects import AnisocadoConstPSF

wide_psf = AnisocadoConstPSF(name="Wide_SCAO_PSF",
                             filename="MICADO/MICADO_AnisoCADO_rms_map.fits",
                             strehl=0.5,
                             wavelength=2.15,
                             psf_side_length=2048)

cmds = scopesim.UserCommands(use_instrument="MICADO", set_modes=["SCAO", "IMG_1.5mas"])
micado = scopesim.OpticalTrain(cmds)

micado.optics_manager["default_ro"].add_effect(wide_psf)

micado["relay_psf"].include = False
micado["Wide_SCAO_PSF"].include = True

Thoughts @astronomyk / @oczoske ?

@hugobuddel
Copy link
Collaborator Author

Maybe we should have an automated mechanism to discover such cmd bang-strings that accidentally do nothing, see created AstarVienna/ScopeSim#505

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant