Simulating Saturn's rings in python

  • Context: Python 
  • Thread starter Thread starter El pollito pio
  • Start date Start date
  • Tags Tags
    Python Rings
Click For Summary

Discussion Overview

The discussion centers around simulating Saturn's rings using Python, with a focus on the challenges of N-body simulations and the complexities involved in accurately modeling celestial mechanics. Participants explore the feasibility of the project, suggest alternative approaches, and discuss the implications of using different programming languages for such simulations.

Discussion Character

  • Exploratory
  • Technical explanation
  • Debate/contested
  • Homework-related

Main Points Raised

  • One participant expresses uncertainty about the suitability of simulating Saturn's rings and questions the originality of the topic, mentioning the Cassini division and the nature of Daphnis.
  • Another participant suggests that achieving a realistic simulation with N-body calculations may be difficult on a standard computer and proposes simplifications, such as neglecting gravitational forces between ring particles.
  • A participant raises concerns about the number of particles in the simulation, indicating that Python may not be the best choice for performance, suggesting C or C++ instead, especially for handling collisions.
  • One suggestion is made to consider a simpler problem involving the effects of a third body on a two-body system, along with a reference to the JPL Horizons service for obtaining data on celestial bodies.
  • Participants discuss the trade-offs between programming languages, noting that while C/C++ may offer performance benefits, Python's libraries can simplify development for less demanding simulations.

Areas of Agreement / Disagreement

Participants express differing views on the feasibility of the simulation and the appropriateness of the programming language. There is no consensus on the best approach or topic for the simulation, indicating multiple competing perspectives.

Contextual Notes

Participants highlight limitations related to computational resources, the complexity of celestial mechanics, and the need for careful handling of forces in N-body simulations. There are unresolved considerations regarding the choice of programming language and the number of particles in the simulation.

El pollito pio
Messages
6
Reaction score
0
Hi,

I have to write a program in python (for school) that simulates a specific structure. I choosed saturn's rings. I've started by wrinting an N-body code. My goals are explaining the divisions in saturn rings as cassini division. I don't know if it's a great subject. The teacher told us to choose an original subject. Well, i thinked about : Daphnis is it really an alien spacecraft or just a moon ?
If you have any suggestions, please i really don't know what subject to choose?

(Sorry for the english)
 
Technology news on Phys.org
I would be surprised if you get a realistic full ring simulation with n-body calculations on a reasonable computer. With some simplifications, maybe, like neglecting the gravitational forces between ring particles, effective potentials in the system of the nearby moon and so on.
El pollito pio said:
Well, i thinked about : Daphnis is it really an alien spacecraft or just a moon ?
Questions that can be answered that easily are bad topics.

The orbits of Epimetheus and Janus are interesting.
The orbit of the Moon around Earth is complex as well.
Cassini has an interesting orbit around Saturn, it comes close to various moons with tiny amounts of fuel.
 
How many particles are you going to have? Python does not sound like a good language for this, C or C++ would be way better. If you have more than even 100 particles, you are going to need to write something called a binary space partition to keep track of collisions and weight.
 
i would suggest a simpler problem. given that you have made n-body simulation for this, how about showing the effects a third body has on an otherwise perfectly periodic two body system?

if you want to get some starting data for actual bodies in the solar system there is the JPL horizons service for just this: http://ssd.jpl.nasa.gov/?horizons

i'd also point out the usual gotcha - make sure to sum all the contributions from the bodies before applying them, if you apply them in sequence you will get some spectacular error behaviour. :)

also take the language criticism with a pinch of salt. using things like math libraries in C/C++ is a pain, and the standard libraries are wastelands of garbage compared to something modern like Python. you sort of need them if you need really high performance... like 1000s of bodies interacting in real time (i.e. a ring simulation you can watch). if you don't need that then its just a great way to make things harder for yourself.
 

Similar threads

  • · Replies 2 ·
Replies
2
Views
4K
  • · Replies 3 ·
Replies
3
Views
2K
  • · Replies 10 ·
Replies
10
Views
2K
  • · Replies 1 ·
Replies
1
Views
1K
  • · Replies 3 ·
Replies
3
Views
2K
  • · Replies 13 ·
Replies
13
Views
3K
  • · Replies 14 ·
Replies
14
Views
6K
Replies
2
Views
3K
  • · Replies 3 ·
Replies
3
Views
2K
  • · Replies 3 ·
Replies
3
Views
6K