https://github.com/galsim-developers/galsim

The modular galaxy image simulation toolkit. Documentation:

https://github.com/galsim-developers/galsim

Science Score: 46.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: arxiv.org
  • Committers with academic emails
    29 of 64 committers (45.3%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (19.0%) to scientific vocabulary

Keywords

astronomy c-plus-plus des euclid galaxy lsst python simulate-images simulation weaklensing wfirst

Keywords from Contributors

astrophysics astropy gtk qt tk wx bayesian-inference mcmc conda package-management
Last synced: 6 months ago · JSON representation

Repository

The modular galaxy image simulation toolkit. Documentation:

Basic Info
Statistics
  • Stars: 249
  • Watchers: 41
  • Forks: 113
  • Open Issues: 37
  • Releases: 29
Topics
astronomy c-plus-plus des euclid galaxy lsst python simulate-images simulation weaklensing wfirst
Created about 14 years ago · Last pushed 6 months ago
Metadata Files
Readme Changelog License

README.rst

.. image:: https://github.com/GalSim-developers/GalSim/workflows/GalSim%20CI/badge.svg?branch=main
        :target: https://github.com/GalSim-developers/GalSim
.. image:: https://codecov.io/gh/GalSim-developers/GalSim/branch/master/graph/badge.svg?branch=main
        :target: https://codecov.io/gh/GalSim-developers/GalSim
.. image:: https://img.shields.io/badge/astro--ph.IM-1407.7676-B31B1B.svg
        :target: https://arxiv.org/abs/1407.7676
.. image:: https://img.shields.io/badge/ADS-Rowe%20et%20al%2C%202015-blue.svg
        :target: http://adsabs.harvard.edu/abs/2015A%26C....10..121R

GalSim is open-source software for simulating images of astronomical objects
(stars, galaxies) in a variety of ways.  The bulk of the calculations are
carried out in C++, and the user interface is in Python.  In addition, the code
can operate directly on "config" files, for those users who prefer not to work
in Python.  The impetus for the software package was a weak lensing community
data challenge, called GREAT3:

    https://github.com/barnabytprowe/great3-public

However, the code has numerous additional capabilities beyond those needed for
the challenge, and has been useful for a number of projects that needed to
simulate high-fidelity galaxy images with accurate sizes and shears.  At the
end of this file, there is a list of the code capabilities and plans for future
development.  For details of algorithms and code validation, please see

    http://adsabs.harvard.edu/abs/2015A%26C....10..121R

The GalSim version numbering tries to follow `Semantic Versioning `_
This means that releases are numbered as M.m.r, where M is a major version number,
m is the minor version, and r is the revision (or patch or bugfix) number.

The public API is preserved within a given major version number.  So code that works
with version 2.2.3 (say) should continue to work for all subsequent 2.x.x versions.
Minor versions indicate new features being added to the API.  Revision versions
don't add any new features, but fix bugs in the previous release.

Basic Installation
==================

Normally, to install GalSim, you should just need to run::

    pip install galsim

Depending on your setup, you may need to add either sudo to the start
or --user to the end of this command as you normally do when pip installing
packages.

See `Installation Instructions` for full details including one dependency (FFTW) that is not
pip installable, so you may need to install before running this command.

You can also use conda via conda-forge::

    conda install -c conda-forge galsim


Source Distribution
===================

To get the latest version of the code, you can grab the tarball (or zip file) from

https://github.com/GalSim-developers/GalSim/releases/

Also, feel free to fork the repository:

https://github.com/GalSim-developers/GalSim/fork

Or clone the repository with either of the following::

    git clone git@github.com:GalSim-developers/GalSim.git
    git clone https://github.com/GalSim-developers/GalSim.git

The code is also distributed via Fink, Macports, and Homebrew for Mac users.
See `Installation Instructions` (in INSTALL.rst) for more information.

The code is licensed under a BSD-style license.  See the file LICENSE for more
details.


Keeping up-to-date with GalSim
==============================

There is a GalSim mailing list, organized through the Google Group
galsim-announce.  Members of the group will receive news and updates about the
GalSim code, including notifications of major version releases, new features
and bugfixes.

You do not need a Google Account to subscribe to the group, simply send any
email to::

    galsim-announce+subscribe@googlegroups.com

If you receive a confirmation request (check junk mail filters!) simply reply
directly to that email, with anything, to confirm.  You may also click the link
in the confirmation request, but you may be asked for a Google Account login.

To unsubscribe, simply send any email to::

    galsim-announce+unsubscribe@googlegroups.com

You should receive notification that your unsubscription was successful.


How to communicate with the GalSim developers
=============================================

Currently, the lead developers for GalSim are:

  - Mike Jarvis (mikejarvis17 at gmail)
  - Rachel Mandelbaum (rmandelb at andrew dot cmu dot edu)
  - Josh Meyers (jmeyers314 at gmail)

However, many others have contributed to GalSim over the years as well, for
which we are very grateful.

If you have a question about how to use GalSim, a good place to ask it is at
`StackOverflow `_.  Some of the GalSim developers
have alerts set up to be automatically notified about questions with the
'galsim' tag, so there is a good chance that your question will be answered.

If you have any trouble installing or using the code, or find a bug, or have a
suggestion for a new feature, please open up an Issue on our `GitHub
repository `_.  We also accept
pull requests if you have something you'd like to contribute to the code base.

If none of these communication avenues seem appropriate, you can also contact
us directly at the above email addresses.


Demonstration scripts
=====================

There are a number of scripts in ``examples/`` that demonstrate how the code can
be used.  These are called ``demo1.py`` ... ``demo13.py``.  You can run them by
typing (e.g.) ``python demo1.py`` while sitting in ``examples/``, All demo scripts
are designed to be run in the ``examples/`` directory.  Some of them access
files in subdirectories of the ``examples/`` directory, so they would not work
correctly from other locations.

A completely parallel sequence of configuration files, called ``demo1.yaml`` ...
``demo13.yaml``, demonstrates how to make the same set of simulations using
config files that are parsed by the executable ``bin/galsim``.

Two other scripts in the ``examples/`` directory that may be of interest, but
are not part of the GalSim tutorial series, are ``make_coadd.py``, which
demonstrates the use of the FourierSqrt transformation to optimally coadd
images, and ``psf_wf_movie.py``, which demonstrates the realistic atmospheric
PSF code by making a movie of a time-variable PSF and wavefront.

As the project develops through further versions, and adds further
capabilities to the software, more demo scripts may be added to ``examples/``
to illustrate what GalSim can do.


Summary of current capabilities
===============================

Currently, GalSim has the following capabilities:

* Can generate PSFs from a variety of simple parametric models such as Moffat,
  Kolmogorov, and Airy, as well as an optical PSF model that includes Zernike
  aberrations to arbitrary order, and an optional central obscuration and
  struts.

* Can simulate galaxies from a variety of simple parametric models as well as
  from real HST data.  For information about downloading a suite of COSMOS
  images, see

  https://github.com/GalSim-developers/GalSim/wiki/RealGalaxy%20Data

* Can simulate atmospheric PSFs from realistic turbulent phase screens.

* Can make the images either via i) Fourier transform, ii) real-space
  convolution (real-space being occasionally faster than Fourier), or
  iii) photon-shooting.  The exception is that objects that include a
  deconvolution (such as RealGalaxy objects) must be carried out using Fourier
  methods only.

* Can handle wavelength-dependent profiles and integrate over filter
  bandpasses appropriately, including handling wavlengths properly when
  photon shooting.

* Can apply shear, magnification, dilation, or rotation to a galaxy profile
  including lensing-based models from a power spectrum or NFW halo profile.

* Can draw galaxy images into arbitrary locations within a larger image.

* Can add noise using a variety of noise models, including correlated noise.

* Can whiten or apply N-fold symmetry to existing correlated noise that is
  already in an image.

* Can read in input values from a catalog, a dictionary file (such as a JSON
  or YAML file), or a fits header.

* Can write images in a variety of formats: regular FITS files, FITS data
  cubes, or multi-extension FITS files.  It can also compress the output files
  using various compressions including gzip, bzip2, and rice.

* Can carry out nearly any simulation that a user might want using two parallel
  methods: directly using Python code, or by specifying the simulation
  properties in an input configuration script.  See the demo scripts in
  the examples/ directory for examples of each.

* Supports a variety of possible WCS options from a simple pixel scale factor
  of arcsec/pixel to affine transforms to arbitrary functions of (x,y),
  including a variety of common FITS WCS specifications.

* Can include a range of simple detector effects such as nonlinearity,
  brighter-fatter effect, etc.

* Has a module that is particularly meant to simulate images for the Roman
  Space Telescope.


Planned future development
--------------------------

We plan to add the following additional capabilities in future versions of
GalSim:

* Simulating more sophisticated detector defects and image artifacts.  E.g.
  vignetting, fringing, cosmic rays, saturation, bleeding, ... (cf. Issues
  #553, #828)

* Proper modeling of extinction due to dust. (cf. Issues #541, #550)

* More kinds of realistic galaxies. (cf. Issues #669, #795, #808)

* Various speed improvements.  (cf. Issues #205, #566, #875)

There are many others as well.  Please see

https://github.com/GalSim-developers/GalSim/issues

for a list of the current open issues.  And feel free to add an issue if there
is something useful that you think should be possible, but is not currently
implemented.

Owner

  • Name: GalSim-developers
  • Login: GalSim-developers
  • Kind: organization
  • Email: galsim-announce+subscribe@googlegroups.com
  • Location: Worldwide

GitHub Events

Total
  • Create event: 16
  • Release event: 5
  • Issues event: 21
  • Watch event: 22
  • Delete event: 10
  • Issue comment event: 36
  • Push event: 51
  • Pull request review comment event: 10
  • Pull request review event: 20
  • Pull request event: 20
  • Fork event: 6
Last Year
  • Create event: 16
  • Release event: 5
  • Issues event: 21
  • Watch event: 22
  • Delete event: 10
  • Issue comment event: 36
  • Push event: 51
  • Pull request review comment event: 10
  • Pull request review event: 20
  • Pull request event: 20
  • Fork event: 6

Committers

Last synced: 6 months ago

All Time
  • Total Commits: 13,661
  • Total Committers: 64
  • Avg Commits per committer: 213.453
  • Development Distribution Score (DDS): 0.546
Past Year
  • Commits: 78
  • Committers: 5
  • Avg Commits per committer: 15.6
  • Development Distribution Score (DDS): 0.5
Top Committers
Name Email Commits
Mike Jarvis m****l@j****t 6,201
Barnaby Rowe b****e@g****m 2,095
Josh Meyers j****4@g****m 1,616
Rachel Mandelbaum r****b@a****u 1,595
Rachel Mandelbaum r****b@a****u 428
Arun Kannawadi a****i@c****u 256
Reiko Nakajima r****a@g****m 219
Melanie Simet m****t@g****m 134
tomaszkacprzak t****9@u****k 113
sowmyakth s****g@g****m 101
Jim Bosch j****h@a****u 99
James Perry j****y@e****k 98
danielsf s****l@g****m 90
Bryan Gillis b****g@r****k 80
Erin Sheldon e****n@g****m 72
Barnaby Rowe b****e@s****k 48
Gary Bernstein g****b@p****u 47
Joe Zuntz j****z@g****m 38
Brent Tan z****t@a****u 33
Craig Lage c****e@u****u 31
chienhaolin c****l@a****u 28
Arun Kannawadi a****i@a****u 26
Jörg Dietrich a****o@j****m 24
Daniel Gruen d****n@w****e 20
beckermr b****r@g****m 19
Bob Armstrong r****r@g****m 18
Federico Berlfein b****n@m****u 16
brgillis b****s@g****m 10
Michael D. Schneider m****r@m****m 9
Alex Drlica-Wagner k****a@f****v 8
and 34 more...

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 94
  • Total pull requests: 161
  • Average time to close issues: over 1 year
  • Average time to close pull requests: 11 days
  • Total issue authors: 35
  • Total pull request authors: 19
  • Average comments per issue: 3.33
  • Average comments per pull request: 1.58
  • Merged pull requests: 122
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 9
  • Pull requests: 26
  • Average time to close issues: 5 days
  • Average time to close pull requests: 5 days
  • Issue authors: 9
  • Pull request authors: 4
  • Average comments per issue: 1.78
  • Average comments per pull request: 0.46
  • Merged pull requests: 19
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • jmeyers314 (15)
  • jecampagne (14)
  • rmjarvis (11)
  • rmandelb (8)
  • beckermr (5)
  • sidneymau (4)
  • arunkannawadi (3)
  • erykoff (3)
  • FedericoBerlfein (2)
  • jchiang87 (2)
  • aaronroodman (2)
  • esheldon (2)
  • af0974 (1)
  • JiachuanXu (1)
  • cgq274 (1)
Pull Request Authors
  • rmjarvis (87)
  • jmeyers314 (19)
  • sidneymau (10)
  • beckermr (7)
  • arunkannawadi (6)
  • jamesp-epcc (5)
  • AlexKurek (4)
  • welucas2 (4)
  • rmandelb (3)
  • FedericoBerlfein (3)
  • jbkalmbach (2)
  • erykoff (2)
  • jecampagne (2)
  • esheldon (2)
  • ztq1996 (1)
Top Labels
Issue Labels
feature request (26) bug report (14) build (13) chromatic (9) desc (8) roman (7) numerics (7) question (7) optimization/performance (6) config (5) starter projects (5) wcs (5) optics/atm (4) hsm (4) cleanup (4) docs (4) lsst (4) notation/conventions (3) base classes (3) tests (2) lensing (2) exceptions/warnings (2) inputs (2) input/output (2) correlated noise (1) admin (1)
Pull Request Labels
bug report (43) config (27) feature request (21) desc (20) chromatic (19) optimization/performance (14) build (13) docs (10) cleanup (9) optics/atm (7) base classes (6) lsst (6) numerics (6) roman (6) wcs (5) hsm (4) admin (4) exceptions/warnings (4) tests (4) inputs (3) correlated noise (1) lensing (1) notation/conventions (1)

Packages

  • Total packages: 2
  • Total downloads:
    • pypi 8,832 last-month
  • Total dependent packages: 27
    (may contain duplicates)
  • Total dependent repositories: 30
    (may contain duplicates)
  • Total versions: 80
  • Total maintainers: 1
pypi.org: galsim

The modular galaxy image simulation toolkit

  • Versions: 56
  • Dependent Packages: 12
  • Dependent Repositories: 25
  • Downloads: 8,832 Last month
Rankings
Dependent packages count: 0.8%
Dependent repos count: 2.9%
Average: 3.6%
Forks count: 4.6%
Downloads: 4.8%
Stargazers count: 4.9%
Maintainers (1)
Last synced: 6 months ago
conda-forge.org: galsim

GalSim is open-source software for simulating images of astronomical objects (stars, galaxies) in a variety of ways. The bulk of the calculations are carried out in C++, and the user interface is in python. In addition, the code can operate directly on "config" files, for those users who prefer not to work in python. (http://adsabs.harvard.edu/abs/2015A%26C....10..121R)

  • Versions: 24
  • Dependent Packages: 15
  • Dependent Repositories: 5
Rankings
Dependent packages count: 4.2%
Dependent repos count: 14.7%
Average: 16.1%
Forks count: 18.3%
Stargazers count: 27.1%
Last synced: 6 months ago

Dependencies

.github/workflows/ci.yml actions
  • actions/cache v2 composite
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
  • hendrikmuhs/ccache-action v1 composite
.github/workflows/wheels.yml actions
  • actions/checkout v3 composite
  • actions/download-artifact v3 composite
  • actions/setup-python v3 composite
  • actions/upload-artifact v3 composite
  • pypa/cibuildwheel v2.9.0 composite
  • pypa/gh-action-pypi-publish release/v1 composite
conda_requirements.txt pypi
  • LSSTDESC.Coord >=1.2
  • astropy >=2.0
  • eigen >=3.3
  • fftw >=3.3
  • numpy >=1.17
  • pandas >=0.20
  • pip >=9.0
  • pybind11 >=2.2
  • pyyaml >=3.12
  • setuptools >=38
devel/brighter-fatter/forward_model_varying_i/setup.py pypi