This package is designed for creating realistic (short exposure) images, including e.g. read noise, photon noise and short exposure point spread functions (PSFs). For an example session, see the file example_session.py in the examples sub-package or the example in the Basic Usage section.
In principle, you just need to define instances of the three package intern classes for the science target (Target), the Telescope (Telescope) and the detector (Detector). The classes are explained in detail below, but also see the documentary strings in the class definitions.
'''python
import vegapy
import astropy.units as u
target = vegapy.Target(band='H', FoV=22*u.arcsec, shape=(1024, 1024), star_table='my_star_table_file.dat', sky_background=13)
telescope = vegapy.Telescope(8.2*u.m, central_obscuration=0.14, name="VLT Unit Telescope", psf_source='my_psf_file.fits')
detector = vegapy.Detector((1024, 1024), pixel_size=0.0106u.arcsec, readout_noise=35u.electron/u.pix, system_gain=17u.electron/u.adu, optics_transmission=0.9, quantum_efficiency=0.9u.electron/u.ph, saturation_level=7200*u.adu)
vegapy.generate_exposure(target, telescope, detector, DIT=0.2*u.s, number_frames=5, filename='my_exposure.fits') '''
Please find an overview of the three object classes and the principle function below.