def __init__( self, setup_light: ag_setup.SetupLightParametric = None, setup_mass: setup.SetupMassTotal = None, setup_source: setup.SetupSourceParametric = None, ): """ Abstract class for parametric source `SLaMPipeline` object, which contains the `Setup` objects for a given Source, Light and Mass (SLaM) pipeline. This object contains the setups for fits in a parametric source pipeline, using `LightProile` `PriorModel`'s to fit the source. The lens galaxy light and mass model-fits can be customized, with defaults using an `EllipticalSersic` bulge, `EllipticalExponential` disk and `EllipticalIsothermal` mass. The SLaM pipelines are template pipelines used by PyAutoLens (see `autolens_workspace/slam`) which break the model-fitting of a strong lens down into the following 3+ linked pipelines: 1) Source: Obtain an accurate source model (using parametric `LightProfile`'s and / or an `Inversion`. 2) Light: Obtain an accurate lens light model (using parametric `LightProfile`'s). 3) Mass: Obtain an accurate mass model (using a `MassProfile` representing the total mass distribution or decomposed `MassProfile`'s representing the light and dark matter). Parameters ---------- setup_light : SetupLightParametric The setup of the light profile modeling (e.g. for bulge-disk models if they are geometrically aligned). setup_mass : SetupMassTotal The setup of the mass modeling (e.g. if a constant mass to light ratio is used). setup_source : SetupSourceParametric The setup of the source analysis (e.g. the `LightProfile`, `Pixelization` or `Regularization` used). """ if setup_light is None: setup_light = ag_setup.SetupLightParametric() if setup_mass is None: setup_mass = setup.SetupMassTotal( mass_prior_model=mp.EllipticalIsothermal) if setup_source is None: setup_source = setup.SetupSourceParametric() super().__init__(setup_light=setup_light, setup_mass=setup_mass, setup_source=setup_source)
def __init__( self, setup_mass: ag_setup.AbstractSetupMass = None, setup_smbh: ag_setup.SetupSMBH = None, light_is_model=True, ): """ Abstract class for a mass `SLaMPipeline` object, which contains the `Setup` objects for a given Source, Light and Mass (SLaM) pipeline. The pipeline this object contains the setups for fits in a total mass or light_dark mass pipeline, where `MassProile` or `LightMassProfile` `PriorModel`'s fit the lens's mmass. The lens galaxy light and source galaxy light models assume those fitted in previous source and light pipelines, using the results to set their parameter and priors. The SLaM pipelines are template pipelines used by PyAutoLens (see `autolens_workspace/slam`) which break the model-fitting of a strong lens down into the following 3+ linked pipelines: 1) Source: Obtain an accurate source model (using parametric `LightProfile`'s and / or an `Inversion`. 2) Light: Obtain an accurate lens light model (using parametric `LightProfile`'s). 3) Mass: Obtain an accurate mass model (using a `MassProfile` representing the total mass distribution or decomposed `MassProfile`'s representing the light and dark matter). Parameters ---------- setup_mass : SetupMassTotal or SetupMassLightDark The setup of the mass modeling (e.g. if a constant mass to light ratio is used). setup_smbh : SetupSMBH The setup of the super-massive black hole modeling (e.g. its `MassProfile` and if its centre is fixed). """ if setup_mass is None: setup_mass = setup.SetupMassTotal() super().__init__(setup_mass=setup_mass) self.setup_smbh = setup_smbh self.light_is_model = light_is_model