Jammy2211 / autolens_workspace

The PyAutoLens workspace: contains example scripts, datasets and more
https://pyautolens.readthedocs.io/
25 stars 16 forks source link

PyAutoLens Workspace

.. |binder| image:: https://mybinder.org/badge_logo.svg :target: https://mybinder.org/v2/gh/Jammy2211/autolens_workspace/HEAD

.. |JOSS| image:: https://joss.theoj.org/papers/10.21105/joss.02825/status.svg :target: https://doi.org/10.21105/joss.02825

|binder| |JOSS|

Installation Guide <https://pyautolens.readthedocs.io/en/latest/installation/overview.html> | readthedocs <https://pyautolens.readthedocs.io/en/latest/index.html> | Introduction on Binder <https://mybinder.org/v2/gh/Jammy2211/autolens_workspace/release?filepath=start_here.ipynb> | HowToLens <https://pyautolens.readthedocs.io/en/latest/howtolens/howtolens.html>

.. image:: https://github.com/Jammy2211/PyAutoLogo/blob/main/gifs/pyautolens.gif?raw=true :width: 900

Welcome to the PyAutoLens Workspace!

Getting Started

You can get set up on your personal computer by following the installation guide on our readthedocs <https://pyautolens.readthedocs.io/>_.

Alternatively, you can try PyAutoLens out in a web browser by going to the autolens workspace Binder <https://mybinder.org/v2/gh/Jammy2211/autolens_workspace/release?filepath=start_here.ipynb>_.

New Users

New users should read the autolens_workspace/start_here.ipynb notebook, which will give you a concise overview of PyAutoLens's core features and API.

Then checkout the new user starting guide <https://pyautolens.readthedocs.io/en/latest/overview/overview_2_new_user_guide.html>_ to navigate the workspace for your science case.

HowToLens

For experienced scientists, the workspace examples will be easy to follow. Concepts surrounding strong lensing were already familiar and the statistical techniques used for fitting and modeling already understood.

For those less familiar with these concepts (e.g. undergraduate students, new PhD students or interested members of the public), things may have been less clear and a slower more detailed explanation of each concept would be beneficial.

The HowToLens Jupyter Notebook lectures are provide exactly this. They are a 3+ chapter guide which thoroughly take you through the core concepts of strong lensing, teach you the principles of the statistical techniques used in modeling and ultimately will allow you to undertake scientific research like a professional astronomer.

To complete thoroughly, they'll probably take 2-4 days, so you may want try moving ahead to the examples but can go back to these lectures if you find them hard to follow.

If this sounds like it suits you, checkout the autolens_workspace/notebooks/howtolens package.

Workspace Structure

The workspace includes the following main directories:

The examples in the notebooks and scripts folders are structured as follows:

Inside the simulators, modeling and data_preparation packages are separate packages for each unique dataset type:

The advanced package contains examples which use PyAutoLens's advanced features, such as the SLaM pipelines, which only experienced users should check out.

The files README.rst distributed throughout the workspace describe what is in each folder.

Workspace Version

This version of the workspace is built and tested for using PyAutoLens v2024.11.6.1.

Contribution

To make changes in the tutorial notebooks, please make changes in the corresponding python files(.py) present in the scripts folder of each chapter. Please note that marker # %% alternates between code cells and markdown cells.

Support

Support for installation issues, help with lens modeling and using PyAutoLens is available by raising an issue on the autolens_workspace GitHub page <https://github.com/Jammy2211/autolens_workspace/issues>. or joining the PyAutoLens Slack channel <https://pyautolens.slack.com/>, where we also provide the latest updates on PyAutoLens.

Slack is invitation-only, so if you'd like to join send an email <https://github.com/Jammy2211>_ requesting an invite.

Galaxy-Scale vs Group Scale Lenses

The imaging, interferometer and point_source packages provides scripts for modeling galaxy-scale lenses, whereas the group package provides scripts for modeling group-scale lenses.

But what are the defitions of a galaxy scale and group scale lens? The line between the two is blurry, but is defined roughly as follows:

If you have data which requires the lens model to include additional galaxies, whether it be a galaxy or group scale system, keep an eye out for PyAutoLens's 'extra galaxies API' which is designed to facilitate this.