JAX-powered Cosmological Particle-Mesh N-body Solver
Find a file
2022-06-18 18:23:46 +02:00
dev Adds test scrript 2021-08-27 00:52:33 +02:00
jaxpm creoss correlation function 2022-06-18 18:23:46 +02:00
.all-contributorsrc Merge branch 'main' into all-contributors/add-EiffL 2021-07-17 01:14:06 +02:00
.gitignore Initial commit 2021-07-16 23:10:42 +02:00
design.md Update design.md 2021-07-17 00:59:03 +02:00
LICENSE Initial commit 2021-07-16 23:10:42 +02:00
README.md Update README.md 2022-02-14 11:56:27 +01:00
setup.py Adds a trivial jaxpm implementation 2022-02-13 21:36:03 +01:00

JaxPM

All Contributors Join the chat at https://gitter.im/DifferentiableUniverseInitiative/JaxPM

JAX-powered Cosmological Particle-Mesh N-body Solver

This project is currently in an early design phase. All inputs are welcome on the design document

Goals

Provide a modern infrastructure to support differentiable PM N-body simulations using JAX:

  • Keep implementation simple and readable, in pure NumPy API
  • Transparent distribution using builtin xmap
  • Any order forward and backward automatic differentiation
  • Support automated batching using vmap
  • Compatibility with external optimizer libraries like optax

Open development and use

Current expectations are:

  • This project is and will remain open source, and usable without any restrictions for any purposes
  • Will be a simple publication on The Journal of Open Source Software
  • Everyone is welcome to contribute, and can join the JOSS publication (until it is submitted to the journal).
  • Anyone (including main contributors) can use this code as a framework to build and publish their own applications, with no expectation that they need to extend authorship to all jaxpm developers.

Contributors

Thanks goes to these wonderful people (emoji key):


Francois Lanusse

🤔

This project follows the all-contributors specification. Contributions of any kind welcome!