galpy

Galactic Dynamics in python

https://github.com/jobovy/galpy

Science Score: 36.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
  • Committers with academic emails
    13 of 40 committers (32.5%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (4.9%) to scientific vocabulary

Keywords

astronomy astrophysics astropy-affiliated dynamics physics python scientific-computing

Keywords from Contributors

mesh data-profilers datacleaner pipeline-testing python-version-management exoplanet energy-system regionalization hydrology molecular-dynamics-simulation
Last synced: 6 months ago · JSON representation

Repository

Galactic Dynamics in python

Basic Info
  • Host: GitHub
  • Owner: jobovy
  • License: bsd-3-clause
  • Language: Python
  • Default Branch: main
  • Homepage: https://www.galpy.org
  • Size: 35.1 MB
Statistics
  • Stars: 247
  • Watchers: 20
  • Forks: 113
  • Open Issues: 7
  • Releases: 23
Topics
astronomy astrophysics astropy-affiliated dynamics physics python scientific-computing
Created over 14 years ago · Last pushed 6 months ago
Metadata Files
Readme Changelog Contributing License Citation Authors

README.dev

Develop README
==============

Adding a potential to the C integrator
--------------------------------------

1) Implement the potential in a .c file under
potential/potential_c_ext. Look at
potential/potential_c_ext/LogarithmicHaloPotential.c for the right
format

2) Add your new potential to
potential/potential_c_ext/galpy_potentials.h

3) Edit the code under orbit/orbit_c_ext/integratePlanarOrbit.c to
set up your new potential (in the 'parse_leapFuncArgs' function)

4) Edit the code in orbit/integratePlanarOrbit.py to set up your
new potential

5) Edit the code under orbit/orbit_c_ext/integrateFullOrbit.c to
set up your new potential (in the 'parse_leapFuncArgs_Full' function)

6) Edit the code in orbit/integrateFullOrbit.py to set up your
new potential

7) Finally, add 'self.hasC= True' to the initialization of the
potential in question (after the initialization of the super class)

8) It should work now!

9) If you implement the second derivatives of the potential necessary
to integrate phase-space volumes, also set self.hasC_dxdv=True to the
initialization of the potential in question.

10) If you add a potential that gets passed to C as a list, you need
to edit orbit/integrateLinearOrbit.py and
orbit/orbit_c_ext/integrateLinearPotential.c to parse it properly (for
regular 3D potentials this works out of the box).

11) If you add a 1D potential, do the steps above, but for
integrateLinearOrbit.*

Owner

  • Name: Jo Bovy
  • Login: jobovy
  • Kind: user
  • Location: Toronto, ON
  • Company: University of Toronto

Associate Professor of Astronomy & Astrophysics at the University of Toronto. Interested in galaxy structure and dynamics and in open and reproducible science.

GitHub Events

Total
  • Create event: 41
  • Release event: 3
  • Issues event: 27
  • Watch event: 16
  • Delete event: 47
  • Issue comment event: 83
  • Push event: 117
  • Gollum event: 3
  • Pull request review comment event: 13
  • Pull request review event: 13
  • Pull request event: 92
  • Fork event: 14
Last Year
  • Create event: 41
  • Release event: 3
  • Issues event: 27
  • Watch event: 16
  • Delete event: 47
  • Issue comment event: 83
  • Push event: 117
  • Gollum event: 3
  • Pull request review comment event: 13
  • Pull request review event: 13
  • Pull request event: 92
  • Fork event: 14

Committers

Last synced: 9 months ago

All Time
  • Total Commits: 7,456
  • Total Committers: 40
  • Avg Commits per committer: 186.4
  • Development Distribution Score (DDS): 0.125
Past Year
  • Commits: 92
  • Committers: 7
  • Avg Commits per committer: 13.143
  • Development Distribution Score (DDS): 0.293
Top Committers
Name Email Commits
Jo Bovy b****y@a****a 6,527
Aladdin Seaifan a****n@m****a 156
Jo Bovy b****y@o****u 147
Ted Mackereth t****h@g****m 85
James Lane j****3@g****m 67
Mathew Bub m****b@g****m 60
henrysky h****g@g****m 49
Nathaniel Starkman n****n@p****m 49
pre-commit-ci[bot] 6****] 43
Wilma Trick t****k@m****e 38
Samuel Wong s****g@m****a 35
dependabot[bot] 4****] 34
Jack Hong j****6@g****m 31
Semyeong Oh s****h@g****m 23
webbjj w****w@g****m 17
turnergarrow t****5@g****m 17
Rok Roskar r****r@p****h 15
Jason Sanders j****s@a****k 12
AnnaJ a****a@g****m 8
MariusCautun m****n@g****m 8
James Grimmett j****t@p****m 5
Anya a****l@s****a 4
Morgan Bennett m****b@g****m 3
Wilma Trick t****k@m****e 2
Morgan Bennett m****b@g****m 2
Aladdin Seaifan a****n@i****a 2
Andrew Pontzen a****n@d****k 2
Gus Beane a****e@c****u 2
fardal f****l@a****u 2
Hood Chatham r****m@g****m 1
and 10 more...

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 61
  • Total pull requests: 260
  • Average time to close issues: 6 months
  • Average time to close pull requests: 10 days
  • Total issue authors: 30
  • Total pull request authors: 18
  • Average comments per issue: 1.59
  • Average comments per pull request: 1.2
  • Merged pull requests: 235
  • Bot issues: 0
  • Bot pull requests: 97
Past Year
  • Issues: 12
  • Pull requests: 84
  • Average time to close issues: 20 days
  • Average time to close pull requests: 4 days
  • Issue authors: 10
  • Pull request authors: 8
  • Average comments per issue: 1.25
  • Average comments per pull request: 1.01
  • Merged pull requests: 70
  • Bot issues: 0
  • Bot pull requests: 26
Top Authors
Issue Authors
  • jobovy (26)
  • webbjj (3)
  • jikrant3 (3)
  • smeingast (2)
  • taliaoshea (2)
  • dependabot[bot] (1)
  • User087 (1)
  • andreagebek (1)
  • sferrone (1)
  • cgarling (1)
  • jamesgrimmett (1)
  • JBorrow (1)
  • henrysky (1)
  • kassidy-kollmann (1)
  • wilmatrick (1)
Pull Request Authors
  • jobovy (142)
  • pre-commit-ci[bot] (53)
  • dependabot[bot] (48)
  • jamesmlane (5)
  • jamesgrimmett (5)
  • henrysky (3)
  • nstarman (3)
  • ybillchen (2)
  • anyadovgal (2)
  • johnwez1 (2)
  • Adrian998obs (2)
  • jl3937 (2)
  • apontzen (2)
  • jmackereth (1)
  • caverac (1)
Top Labels
Issue Labels
bug (11) enhancement (11) pinned (10) good first issue (7) help wanted (6) wontfix (4) documentation (3) low priority (3) Installation issue (2) critical (1) Fixed in branch (1) dependencies (1)
Pull Request Labels
dependencies (48) enhancement (7) pinned (4) github_actions (3) Stale (2) compilation bug (1)

Packages

  • Total packages: 3
  • Total downloads:
    • pypi 3,776 last-month
  • Total dependent packages: 7
    (may contain duplicates)
  • Total dependent repositories: 26
    (may contain duplicates)
  • Total versions: 55
  • Total maintainers: 1
pypi.org: galpy

Galactic Dynamics in python

  • Versions: 26
  • Dependent Packages: 7
  • Dependent Repositories: 25
  • Downloads: 3,776 Last month
Rankings
Dependent packages count: 1.4%
Dependent repos count: 2.9%
Average: 3.9%
Forks count: 4.7%
Stargazers count: 4.9%
Downloads: 5.3%
Maintainers (1)
Last synced: 6 months ago
proxy.golang.org: github.com/jobovy/galpy
  • Versions: 18
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 5.4%
Average: 5.5%
Dependent repos count: 5.7%
Last synced: 6 months ago
conda-forge.org: galpy

galpy is a Python 2 and 3 package for galactic dynamics. It supports orbit integration in a variety of potentials, evaluating and sampling various distribution functions, and the calculation of action-angle coordinates for all static potentials. galpy is an astropy affiliated package and provides full support for astropy’s Quantity framework for variables with units.

  • Versions: 11
  • Dependent Packages: 0
  • Dependent Repositories: 1
Rankings
Forks count: 19.5%
Dependent repos count: 24.4%
Stargazers count: 26.9%
Average: 30.6%
Dependent packages count: 51.6%
Last synced: 6 months ago

Dependencies

.github/workflows/build.yml actions
  • actions/cache v3 composite
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
  • codecov/codecov-action v3 composite
.github/workflows/build_pyodide_wheels.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
  • actions/upload-artifact v3 composite
  • jakejarvis/s3-sync-action v0.5.1 composite
  • mymindstorm/setup-emsdk v11 composite
.github/workflows/build_windows.yml actions
  • actions/cache v3 composite
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
  • mamba-org/provision-with-micromamba v14 composite
.github/workflows/wheels.yml actions
  • actions/checkout v3 composite
  • actions/download-artifact v3 composite
  • actions/setup-python v4 composite
  • actions/upload-artifact v3 composite
  • jakejarvis/s3-sync-action v0.5.1 composite
  • mamba-org/provision-with-micromamba v14 composite
  • pypa/cibuildwheel v2.11.4 composite
  • pypa/gh-action-pypi-publish release/v1 composite
setup.py pypi
  • matplotlib *
  • numpy >=1.7
  • packaging *
  • scipy *
.github/workflows/stale.yml actions
  • actions/stale v7 composite
pyproject.toml pypi