lenstronomy.SimulationAPI.observation_constructor — lenstronomy 1.8.2 documentation

# Source code for lenstronomy.SimulationAPI.observation_constructor

    import lenstronomy.Util.util as util

    instrument_name_list = ['LSST']
    observation_name_list = ['LSST_g_band', 'LSST_r_band', 'LSST_i_band']

    __all__ = ['observation_constructor']

    def observation_constructor(instrument_name, observation_name):
        """

        :param instrument_name: string, name of instrument referenced in this file
        :param observation_name: string, name of observation referenced in this file
        :return: instance of the SimulationAPI.data_type instance
        """

        if instrument_name == 'LSST':
            kwargs_instrument = LSST_camera
        else:
            raise ValueError("instrument name %s not supported! Choose among  %s " % (instrument_name, instrument_name_list))

        if observation_name == 'LSST_g_band':
            kwargs_observation = LSST_g_band_obs
        elif observation_name == 'LSST_r_band':
            kwargs_observation = LSST_r_band_obs
        elif observation_name == 'LSST_i_band':
            kwargs_observation = LSST_i_band_obs
        else:
            raise ValueError('observation name %s not supported! Choose among %s' %
                             (observation_name, observation_name_list))
        kwargs_data = util.merge_dicts(kwargs_instrument, kwargs_observation)
        return kwargs_data

    LSST_camera = {'read_noise': 10,
                   'pixel_scale': 0.263,
                   'ccd_gain': 4.5}

    LSST_g_band_obs = {'exposure_time': 90.,
                       'sky_brightness': 21.7,
                       'magnitude_zero_point': 30,
                       'num_exposures': 10,
                       'seeing': 0.9,
                       'psf_type': 'GAUSSIAN'}

    LSST_r_band_obs = {'exposure_time': 90.,
                       'sky_brightness': 20.7,
                       'magnitude_zero_point': 30,
                       'num_exposures': 10,
                       'seeing': 0.9,
                       'psf_type': 'GAUSSIAN'}

    LSST_i_band_obs = {'exposure_time': 90.,
                       'sky_brightness': 20.1,
                       'magnitude_zero_point': 30,
                       'num_exposures': 10,
                       'seeing': 0.9,
                       'psf_type': 'GAUSSIAN'}