Code Monkey home page Code Monkey logo

rebound's Introduction

REBOUND - An open-source multi-purpose N-body code

http://img.shields.io/badge/rebound-v2.18.7-green.svg?style=flat http://img.shields.io/badge/license-GPL-green.svg?style=flat http://img.shields.io/travis/hannorein/rebound/master.svg?style=flat https://coveralls.io/repos/hannorein/rebound/badge.svg?branch=master&service=github http://img.shields.io/badge/arXiv-1110.4876-green.svg?style=flat http://img.shields.io/badge/arXiv-1409.4779-green.svg?style=flat http://img.shields.io/badge/arXiv-1506.01084-green.svg?style=flat http://img.shields.io/badge/arXiv-1603.03424-green.svg?style=flat https://readthedocs.org/projects/pip/badge/?version=latest https://img.shields.io/badge/launch-binder-ff69b4.svg?style=flat

FEATURES

REBOUND is an N-body integrator, i.e. a software package that can integrate the motion of particles under the influence of gravity. The particles can represent stars, planets, moons, ring or dust particles. REBOUND is very flexible and can be customized to accurately and efficiently solve many problems in astrophysics. An incomplete feature list of REBOUND:

  • Symplectic integrators (WHFast, WH, SEI, LEAPFROG)
  • High accuracy non-symplectic integrator with adaptive timestepping (IAS15)
  • Support for collisional/granular dynamics, various collision detection routines
  • The code is written entirely in C, conforms to the ISO standard C99 and can be used as a thread-safe shared library
  • Easy-to-use Python module, installation in 3 words: pip install rebound
  • Extensive set of example problems in both C and Python
  • Real-time, 3D OpenGL visualization (C version)
  • Parallelized with OpenMP (for shared memory systems)
  • Parallelized with MPI using an essential tree for gravity and collisions (for distributed memory systems)
  • No libraries are needed, use of OpenGL/GLUT for visualization is optional
  • The code is fully open-source and can be downloaded freely from http://github.com/hannorein/rebound
  • No configuration is needed to run any of the example problems. Just type make && ./rebound in the problem directory to run them
  • Comes with standard ASCII or binary output routines
  • Different modules are easily interchangeable at runtime

One minute installation

You can install REBOUND with pip if you want to only use the python version of REBOUND:

pip install rebound

Then, you can run a simple REBOUND simulation such as

import rebound
sim = rebound.Simulation()
sim.add(m=1.0)
sim.add(m=1.0e-3, a=1.0)
sim.integrate(1000.)
sim.status()

If you want to use the C version of REBOUND simply copy and paste this line into your terminal (it won't do anything bad, we promise):

git clone http://github.com/hannorein/rebound && cd rebound/examples/shearing_sheet && make && ./rebound

Documentation

The full documentation with many examples, changelogs and tutorials can be found at

http://rebound.readthedocs.org

We're alway trying to improve REBOUND and extending the documention is high on our to-do list. If you have trouble installing or using REBOUND, please open an issue on github and we'll try to help as much as we can.

rebound's People

Contributors

hannorein avatar dtamayo avatar shangfei avatar silburt avatar dsspiegel avatar amarillons avatar calixte07 avatar meldonization avatar dongsubo avatar

Watchers

Eric Ford avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.