# lenstronomy - gravitational lensing software package¶

lenstronomy is a multi-purpose package to model strong gravitational lenses. The software package is presented in Birrer & Amara 2018 and is based on Birrer et al 2015. lenstronomy finds application in e.g. Birrer et al 2016 and Birrer et al 2018 for time-delay cosmography and measuring the expansion rate of the universe and Birrer et al 2017 for quantifying lensing substructure to infer dark matter properties.

The development is coordinated on GitHub and contributions are welcome. The documentation of lenstronomy is available at readthedocs.org and the package is distributed over PyPI.

## Installation¶

\$ pip install lenstronomy --user


## Requirements¶

To run lens models with elliptical mass distributions, the fastell4py package, originally from Barkana (fastell), is also required and can be cloned from: https://github.com/sibirrer/fastell4py (needs a fortran compiler)

• CosmoHammer (through PyPi)
• astropy
• dynesty
• pymultinest
• pypolychord
• nestcheck
• standard python libraries (numpy, scipy)

## Modelling Features¶

• a variety of lens models to use in arbitrary superposition
• lens equation solver
• multi-plane ray-tracing
• Extended source reconstruction with basis sets (shapelets) and analytic light profiles
• Point sources
• numerical options for sub-grid ray-tracing and sub-pixel convolution
• non-linear line-of-sight description
• iterative point spread function reconstruction
• linear and non-linear optimization modules
• Pre-defined plotting and illustration routines
• Particle swarm optimization for parameter fitting
• MCMC (emcee from CosmoHammer) for parameter inferences
• Nested Sampling (MultiNest, DyPolyChord, or Dynesty) for evidence computation and parameter inferences
• Kinematic modelling
• Cosmographic inference tools

## Getting started¶

The starting guide jupyter notebook leads through the main modules and design features of lenstronomy. The modular design of lenstronomy allows the user to directly access a lot of tools and each module can also be used as stand-alone packages.

## Example notebooks¶

We have made an extension module available at http://github.com/sibirrer/lenstronomy_extensions. You can find simple examle notebooks for various cases. The latest versions of the notebooks should be compatible with the recent pip version of lenstronomy.

## Mailing list¶

You can join the lenstronomy mailing list by signing up on the google groups page.

The email list is meant to provide a communication platform between users and developers. You can ask questions, and suggest new features. New releases will be announced via this mailing list.

If you encounter errors or problems with lenstronomy, please let us know!

## Shapelet reconstruction demonstration movies¶

We provide some examples where a real galaxy has been lensed and then been reconstructed by a shapelet basis set.

The design concept of lenstronomy are reported in Birrer & Amara 2018. Please cite this paper whenever you publish results that made use of lenstronomy. Please also cite Birrer et al 2015 when you make use of the lenstronomy work-flow or the Shapelet source reconstruction. Please make sure to cite also the relevant work that was implemented in lenstronomy, as described in the release paper.