daodavid / gravity-simulation

Python package for calculation and simulation of n-bodies interaction.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Gravity simulation

Python package for calculation and simulation of n-bodies interaction under the influence of Gravity force.Written in NumPy and Numba.





Installing :

pip install gravity-simulation==2.0.1

Example :

#random example together with one body bigger mass than others
from gravity_simulation.gravity import *

field.generate_random(15, mass=[20, 500], r=[-5, 5], velocity=[-5, 5], alpha=[0, 360])
field.add_body(Body(x0=0, y0=0,v_x=0, v_y=0, mass = 3000))

field.run(1300, C=0.01)
field.save_animation(frames=50,name='my_example',reduce_size_body=50,frames=150)

more ...
Documentation










Nympy is an incredible library and without it, The Python is nothing (just an easy programming language and so on), but with the Numpy, The Python is able to solve serious processes involved a huge number of iterations. When the application was written in common Python then the results were quite bad, for example, when the number of bodies is 2000 and number of the iterations is 10000 the duration of the process takes about 2 days because of the app was useless now when the processes are vectorized with NumPy and Numba the execution time takes about 2 hours.

About

Python package for calculation and simulation of n-bodies interaction.

License:MIT License


Languages

Language:HTML 85.9%Language:Jupyter Notebook 8.4%Language:Python 5.7%