Git Product home page Git Product logo

plazajan / kepler-world Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 15.54 MB

A Python turtle simulation of planet movements to study Kepler's laws and how they emerge from Newton's law of gravity, for high school or lower level undergraduate students. Also, a slide show.

License: GNU General Public License v3.0

Python 69.32% TeX 30.68%
celestial-mechanics educational ellipse history-of-science orbit python-3 simulation turtle-graphics kepler kepler-laws

kepler-world's Introduction

Kepler's World

A simple simulation (in Python) of movements of celestial bodies around the Sun for the purpose of studying Kepler's laws and how they emerge from Newton's law of gravity. Designed for high school students or lower level undergraduate students.

Movements of the eight planets are simulated, as well as movements of some celestial bodes made up for the purpose of experiments. The simulation uses a discrete approximation of the real-world continuous effect of the Newton's law of gravity (F = GMm/(r^2) on the moving body, taking into account only that body and the Sun (the "two-body problem"). The calculations are done for the actual celestial body, and the results are scaled down to be visualized in turtle graphics. The simulation tests if the resulting orbits and bodies' movements obey Kepler's laws.

Concepts of the methodology of science:

  • Branches of natural science: physics, chemistry, biology, Earth and atmospheric science.
  • Natural science vs. mathematics and logic
  • Empirical evidence.
  • Methods of science: experimental/observational, theoretical/mathematical, computational.
  • Laws of science include Newton's laws and Kepler's laws.
  • The scientific method.
  • Units of measurement and dimensional analysis: units of the gravitational constant G.
  • Discrete simulation of a continuous process.
  • Approximation and approximation error.
  • Recurrent/periodic process - for instance planet's movement around the Sun.
  • Qualitative vs. quantitative statements ("a planet moves fastest when close to the Sun" vs. Kepler's 2nd law).
  • Local effects (of the law of gravity) vs. global properties (of orbits described by Kepler's laws).
  • Visualization vs. simulation.
  • Emergence (of Kepler's laws from Newton's laws) or reduction of (Kepler's laws to Newton's laws). Note: Newton gave a (mathematical) proof, using calculus.

The visualization shows orbits to scale, but disregards some details not relevant to Kepler's laws. Namely, in this simulation (unlike in reality):

  • the orbits of all planets are in the same plane, and
  • the foci of elliptical orbits of all planets are on the same straight line.

The period in which the turtle completes the orbit is proportional to the actual orbital period of the planet, but the scaling factor is not the same as for the orbit's size.

A slideshow is also available: Discovering the Mechanics of the Solar System.

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.