Esempio n. 1
0
            "{}/{}.fits".format(
                data_directory, _
            ),
            data=getattr(dataset, _)
        )

    os.system(
        "rm -r ./output/{}*".format(phase_name)
    )
    """
    phase = ph.Phase(
        phase_name=phase_name,
        phase_folders=["test"],
        galaxies=dict(
            lens=lens,
            source_1=source_1,
            source_2=source_2,
        ),
        transformer_class=transformer_class,
        region=line_emission_region
    )

    phase.optimizer.constant_efficiency = True
    phase.optimizer.n_live_points = 5
    phase.optimizer.sampling_efficiency = 0.5
    phase.optimizer.evidence_tolerance = 100.0

    phase.run(
        dataset=dataset,
        xy_mask=xy_mask
    )
Esempio n. 2
0
    #         transformers=transformers,
    #         shape=cube.shape
    #     ),
    #     ncols=8
    # )
    # print("likelihood = ", fit_temp.likelihood)
    # exit()

    model_1 = af.PriorModel(profiles.EllipticalSersic)
    model_1.centre_0 = af.GaussianPrior(mean=0.0, sigma=0.25)
    model_1.centre_1 = af.GaussianPrior(mean=0.0, sigma=0.25)
    model_1.intensity = af.LogUniformPrior(lower_limit=5.0 * 10**-6.0,
                                           upper_limit=5.0 * 10**-4.0)
    model_2 = af.PriorModel(profiles.Kinematical)
    model_2.z_centre = af.GaussianPrior(mean=16.0, sigma=2.0)
    model_2.intensity = af.LogUniformPrior(lower_limit=10**-2.0,
                                           upper_limit=10**+2.0)

    phase_name = "phase_tutorial_5"
    os.system("rm -r output/{}*".format(phase_name))
    phase = ph.Phase(phase_name=phase_name,
                     profiles=af.CollectionPriorModel(model_1=model_1,
                                                      model_2=model_2))

    phase.optimizer.constant_efficiency = True
    phase.optimizer.n_live_points = 100
    phase.optimizer.sampling_efficiency = 0.5
    phase.optimizer.evidence_tolerance = 100.0

    phase.run(dataset=dataset, xy_mask=xy_mask)
Esempio n. 3
0
                                             upper_limit=10**+2.0)
    src_model.maximum_velocity = af.UniformPrior(lower_limit=25.0,
                                                 upper_limit=400.0)
    src_model.velocity_dispersion = af.UniformPrior(lower_limit=0.0,
                                                    upper_limit=100.0)

    phase_folders = [
        string_utils.remove_substring_from_end_of_string(
            string=os.path.basename(__file__), substring=".py")
    ]

    phase_1 = phase.Phase(
        phase_name="phase_1__version_{}".format(autolens_version),
        phase_folders=phase_folders,
        profiles=af.CollectionPriorModel(
            lens=lens_model,
            src_model=src_model,
        ),
        lens_redshift=lens_redshift,
        source_redshift=source_redshift,
    )

    phase_1.optimizer.const_efficiency_mode = True
    phase_1.optimizer.n_live_points = 100
    phase_1.optimizer.sampling_efficiency = 0.2
    phase_1.optimizer.evidence_tolerance = 0.5

    xy_mask = Mask3D.unmasked(
        shape_3d=grid_3d.shape_3d,
        pixel_scales=grid_3d.pixel_scales,
        sub_size=grid_3d.sub_size,
    )
Esempio n. 4
0
    lens.mass.axis_ratio = 0.75
    lens.mass.phi = 45.0
    lens.mass.einstein_radius = 1.0
    lens.mass.slope = 2.0

    phase_name = "phase_tutorial_7"

    data_directory = "./data/{}".format(phase_name)
    if not os.path.isdir(data_directory):
        os.system("mkdir {}".format(data_directory))
    os.system("rm ./data/{}/*.fits".format(phase_name))
    for _ in ["uv_wavelengths", "visibilities", "noise_map"]:
        fits.writeto("{}/{}.fits".format(data_directory, _),
                     data=getattr(dataset, _))

    os.system("rm -r ./output/{}*".format(phase_name))
    phase = ph.Phase(phase_name=phase_name,
                     galaxies=dict(
                         lens=lens,
                         source=source,
                     ),
                     transformer_class=transformer_class,
                     region=line_emission_region)

    phase.optimizer.constant_efficiency = True
    phase.optimizer.n_live_points = 100
    phase.optimizer.sampling_efficiency = 0.5
    phase.optimizer.evidence_tolerance = 100.0

    phase.run(dataset=dataset, xy_mask=xy_mask)
Esempio n. 5
0
    src_model_2.centre_1 = 0.0
    src_model_2.z_centre = 16.0
    src_model_2.intensity = 5.0
    src_model_2.effective_radius = 0.5
    src_model_2.inclination = 30.0
    src_model_2.phi = 50.0
    src_model_2.turnover_radius = 0.05
    src_model_2.maximum_velocity = 200.0
    src_model_2.velocity_dispersion = 50.0

    # exit()
    phase_folders = ["test"]
    phase_1_name = "phase_tutorial_6__version_{}".format(autolens_version)
    os.system("rm -r output/test/{}".format(phase_1_name))
    phase_1 = phase.Phase(phase_name=phase_1_name,
                          phase_folders=phase_folders,
                          profiles=af.CollectionPriorModel(
                              lens=lens_model,
                              src_model_1=src_model_1,
                              src_model_2=src_model_2),
                          lens_redshift=lens_redshift,
                          source_redshift=source_redshift,
                          regions=[emission_line_region])

    phase_1.optimizer.constant_efficiency = True
    phase_1.optimizer.n_live_points = 100
    phase_1.optimizer.sampling_efficiency = 0.5
    phase_1.optimizer.evidence_tolerance = 100.0

    phase_1.run(dataset=dataset, xy_mask=xy_mask)
    phase_folders.append("data_{}_phase_errors".format(
        "with" if data_with_phase_errors else "without"))
    phase_folders.append(
        "model_{}_selfcal".format("with" if self_calibration else "without"))

    #evidence_tolerance = 0.5
    #evidence_tolerance = 0.8
    evidence_tolerance = 100.0
    phase_folders.append("evidence_tolerance__{}".format(evidence_tolerance))

    phase_1_name = "phase_tutorial_0__version_{}".format(autolens_version)
    # os.system(
    #     "rm -r output/{}".format(phase_1_name)
    # )
    phase_1 = phase.Phase(
        phase_name=phase_1_name,
        phase_folders=phase_folders,
        galaxies=dict(
            lens=lens,
            source=source,
        ),
        self_calibration=self_calibration,
    )

    phase_1.optimizer.const_efficiency_mode = True
    phase_1.optimizer.n_live_points = 100
    phase_1.optimizer.sampling_efficiency = 0.2
    phase_1.optimizer.evidence_tolerance = evidence_tolerance

    phase_1.run(dataset=dataset, xy_mask=xy_mask)
Esempio n. 7
0
    # )
    # print(likelihood)
    # exit()

    model = af.PriorModel(profiles.EllipticalSersic)

    model.centre_0 = af.GaussianPrior(mean=0.0, sigma=0.05)
    model.centre_1 = af.GaussianPrior(mean=0.5, sigma=0.05)
    model.axis_ratio = af.GaussianPrior(mean=0.75, sigma=0.05)
    model.phi = af.GaussianPrior(mean=45.0, sigma=5.0)
    # model.intensity = af.GaussianPrior(
    #     mean=0.1, sigma=0.1
    # )
    model.effective_radius = af.GaussianPrior(mean=0.5, sigma=0.25)
    model.sersic_index = af.GaussianPrior(mean=1.0, sigma=0.2)

    phase_name = "phase_tutorial_1"
    os.system("rm -r output/{}".format(phase_name))
    phase = ph.Phase(
        phase_name=phase_name,
        profiles=af.CollectionPriorModel(model=model),
    )
    #non_linear_class=af.Emcee

    phase.optimizer.const_efficiency_mode = True
    phase.optimizer.n_live_points = 100
    phase.optimizer.sampling_efficiency = 0.5
    phase.optimizer.evidence_tolerance = 100.0

    phase.run(dataset=dataset, mask=mask)
                                             upper_limit=centre_0_upper_limit)
    subhalo_model.centre_1 = af.UniformPrior(lower_limit=centre_1_lower_limit,
                                             upper_limit=centre_1_upper_limit)

    phase_folders = [
        string_utils.remove_substring_from_end_of_string(
            string=os.path.basename(__file__), substring=".py")
    ]

    phase_name = "phase_tutorial_6__version_{}__centre_0_{}_{}_centre_1_{}_{}".format(
        autolens_version, centre_0_lower_limit, centre_0_upper_limit,
        centre_1_lower_limit, centre_1_upper_limit)

    phase_1 = phase.Phase(
        phase_name=phase_name,
        phase_folders=phase_folders,
        profiles=af.CollectionPriorModel(lens=lens_model,
                                         subhalo=subhalo_model,
                                         source_1=source_model_1,
                                         source_2=source_model_2),
        lens_redshift=lens_redshift,
        source_redshift=source_redshift,
    )

    phase_1.optimizer.constant_efficiency = True
    phase_1.optimizer.n_live_points = 100
    phase_1.optimizer.sampling_efficiency = 0.5
    phase_1.optimizer.evidence_tolerance = 100.0

    phase_1.run(dataset=dataset, xy_mask=xy_mask)