AstroNbodySim.jl

Unitful and differentiable gravitational N-body simulation code in Julia
Author JuliaAstroSim
Popularity
32 Stars
Updated Last
5 Months Ago
Started In
January 2022

AstroNbodySim.jl

codecov

This is an astrophysical simulation code library under GPL 3.0

中文Readme

Documentation

  • Devdocumentation of the in-development version.

For beginners, it is highly recommended to read the documentation of PhysicalParticles.jl.

Installation

]add AstroNbodySim

or

]add https://github.com/JuliaAstroSim/AstroNbodySim.jl

You might need to install NVIDIA CUDA toolkit

Package Features

  • Compute with units
  • User-friendly
    • Well documented
    • Readable programming
    • Vectorized array operations
    • Dispatch on types for various simulation settings
    • Float16, Float32, Float64, Int128, BigFloat, Measurement, etc.
  • Cross-platform: Linux, Windows, MacOS. Easy to deploy
  • Hybrid Parallelism: multi-threading, distributed parallelism, GPU acceleration
  • Modularity and Versatility: 9 packages, designed for general purposes, highly extentable
  • Realtime visualzation (interactive)
  • Auto-test workflow

Features quick view

Realtime visualization of simulations on GPU

Realtime visualization of simulations on GPU

Galactic collision

Galactic collision

Uncertainty propagation

Uncertainty propagation

Autodiff of background potential field

Autodiff of background potential field

User-difined pipeline: Tidal disruption event (TDE)

Position slices:

User-difined pipeline: Tidal disruption event (TDE)

Accretion history:

User-difined pipeline: TDE accretion history

Lagrange radii and scale radius

Lagrange radii and scale radius

Lagrange radii and scale radius

Solar System

Solar System

Supporting and Citing

This software was developed as part of academic research. If you would like to help support it, please star the repository. If you use this software as part of your research, teaching, or other activities, we would be grateful if you could cite the following:

%TODO WIP

FAQ

Package ecosystem