Source code for slsim.Deflectors.deflector_base

from abc import ABC, abstractmethod


[docs] class DeflectorBase(ABC): """Abstract Base Class to create a deflector object. All object that inherit from Lensed System must contain the methods it contains. """ def __init__(self, deflector_table, kwargs_cut, cosmo, sky_area): """ :param deflector_table: table with lens parameters :param kwargs_cut: cuts in parameters: band, band_mag, z_min, z_max :type kwargs_cut: dict :param cosmo: astropy.cosmology instance :type sky_area: `~astropy.units.Quantity` :param sky_area: Sky area (solid angle) over which galaxies are sampled. """ self.deflector_table = deflector_table self.kwargs_cut = kwargs_cut self.cosmo = cosmo self.sky_area = sky_area
[docs] @abstractmethod def deflector_number(self): """ :return: number of deflectors after applied cuts """ pass
[docs] @abstractmethod def draw_deflector(self): """ :return: dictionary of complete parameterization of deflector """ pass