Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

A simple algorithm, with no use of the mass, to reproduce the 3 laws of Kepler

  1. Jul 15, 2010 #1

    hcl

    User Avatar

    Hello,

    I was drawing some curves on my computer when something appeared : it is possible to build trajectories that agree with all Kepler's laws with a very simple iterative process and very simple conditions.

    I wrote a paper to describe this fact and I built an online demonstrator to show how it works :http://www.oceanvirtuel.com/physics/kepler/" [Broken].

    The most exciting is that there is no need to consider the physical concept of mass to reproduce trajectories that agree with the three laws of Kepler. As far as I knew only Newton and Einstein could give an explanation of Kepler's laws, but only by considering the mass of the systems.

    A would much appreciate your opinion on this work because I know that it is not perfect.

    Friendly yours
    Herve
     
    Last edited by a moderator: May 4, 2017
  2. jcsd
  3. Jul 15, 2010 #2
    Oddly enough, you don't need mass to draw an ellipse.
     
  4. Jul 15, 2010 #3

    hcl

    User Avatar

    Indeed, you are right. I should have precised that the method that I use to draw an ellipse is not a common one. Indeed I show that a system that has a total velocity which is the addition of a rotation velocity with a constant modulus, and a constant translation velocity, will move on an elliptic trajectory. As far as I know such a way to draw an ellipse have not been described yet. May be I am wrong.

    Furthermore it is one thing to draw an ellipse, it is an other rhing to draw it by respecting Keplers'laws.

    Herve
     
  5. Jul 15, 2010 #4
    You're just rearranging the equations for circular motion and then adding an continuously varying impulse to turn it into an ellipse.
    I.e. In your code your creating an effective acceleration (in an eulerian integration) like:
    [tex]
    \Delta \vec{v} \propto \vec{\omega} \times \vec{r}
    [/tex]
    which is just
    [tex]
    \Delta \vec{v} \propto -\frac{v^2}{r}
    [/tex]

    as long as mass is constant, its just a proportionality constant, so of course you don't need it in your simulation. You're just defining the mass as equal to 1
     
  6. Jul 15, 2010 #5

    hcl

    User Avatar

    You are right, as I show the mass is useless to draw an ellipse respecting the 3 laws of Kepler. As far as I know the usual theories of gravitation do not allow such a possibility. The reason of the planetary motions are the masses of the bodies for both Newton and Einstein. They could explain Kepler's laws only by assuming the presence of mass.
     
  7. Jul 15, 2010 #6
    Yes, of course mass is the source of gravity, thats what mass IS.
    Your initial constant velocity parameters are defining the ellipse, instead of e.g. mass, energy, angular momentum, etc. You're just switching parameters.

    And you're not explaining kepler's laws, or anything for that matter, you're just drawing an ellipse. http://www.instructables.com/image/F99FRTL0DPEPORTHE1/Drawing-Ellipses.jpg" [Broken], and you can do it that way too.
     
    Last edited by a moderator: May 4, 2017
  8. Jul 15, 2010 #7

    hcl

    User Avatar

    Sorry, no. I give a motion to a system that agrees with Kepler's laws, the demonstration is inside the paper. I draw this motion that respects the kinematics, this is what I mean when I say "I draw".

    There are many ways to draw an ellipse but not much to draw it with respect to the 3 laws of Kepler. Actually there are only two : the one of Newton and the one of Einstein. The first law of Kepler indeed states that the planets are describing ellipses, but the second and third laws have to be verified too during the drawing (the motion). You need to get a constant areal velocity all around the orbit and you also need the square of the period of revolution to be proportional to the cube of the major semi axis. This is not just drawing an ellipse.
     
    Last edited by a moderator: May 4, 2017
  9. Jul 15, 2010 #8

    russ_watters

    User Avatar

    Staff: Mentor

    Kepler's laws don't have mass in them either. Like you, all he did was figure out that the orbits were elliptical!
     
  10. Jul 16, 2010 #9

    hcl

    User Avatar

    May I suggest you to read a little bit more about Kepler ?

    - first law : the planets are moving on ellipses
    - second law : in equal times, equal areas are swept
    - third law : the square of the period of revolution is proportional to the cube of the major semi axis

    At this time the only two ways to explain these 3 laws together are the theories of gravitation of Newton and Einstein. There are many ways to draw an ellipse, but there are only 2 ways to explain the complete motion of the planets, i.e. the 3 laws together.
     
  11. Jul 16, 2010 #10

    Cleonis

    User Avatar
    Gold Member

    The construction of the trajectory is strikingly similar to the way that Newton's derived Kepler's law of areas from the laws of motion. In the Principia this derivation is in Book I, Proposition I, Theorem I.

    attachment.php?attachmentid=26990&stc=1&d=1279314197.png

    (The diagram is not an exact copy of how Newton drew it, but the construction method is the same.)

    The trajectory is constructed by division in equal intervals of time.
    Point S represents the Sun. The planet passes through point B, and if the Sun would not attract it the planet would proceed to point c in the chosen interval of time. The Sun's gravity is represented as instantaneous impulses. At point B the planet has received an impulse that gives it a velocity component that makes it proceed to point C. Next step: without the Sun's gravity the planet would proceed to point d in a equal interval of time. And so on. This is a recursive construction scheme.

    Triangles SAB and SBc have the same area.
    Triangles SBc and SBC have the same area.
    Hence SAB and SBC have the same area.

    This derivation of the law of areas does not use or depend on the inverse square law of gravity; it applies for any central force.

    For this particular diagram I drew an ellipse, placed point S at one focus, and constructed the points C, D, E by finding points of intersection.

    The challenge then, is to demonstrate that the recursive construction scheme http://www.oceanvirtuel.com/physics/kepler/" [Broken] yields the orbit that arises from an inverse square force law.


    - The law of areas applies for any central force. The recursive scheme used here makes the velocity change in the direction of the radial vector, that alone makes the trajectory satisfy the area law.

    - Only one force law gives a trajectory that is an ellipse with the center of attraction at one one focus: an inverse square law. So if Kepler's first law applies for the constructed trajectories Kepler's third law must also apply.
     

    Attached Files:

    Last edited by a moderator: May 4, 2017
  12. Jul 16, 2010 #11

    hcl

    User Avatar

    Thank you Cleonis for your interesting contribution.
    I learned by reading you that Newton himself did proceed algorithmically too.

    You are right to say :
    What I can say is that the velocity has to be special in my proposal : it must be the addition of a rotation velocity with a constant modulus, and a constant translation velocity, formula 1 in my paper. When you derive this velocity with respect to time you get the acceleration. Try to do it from the formula 1 and you will see that the acceleration is not central, hence no central force ... However the demonstrator works.
    Things work as if the formula 1 would be correct only inside each time interval dt, but not across them. My proposal is structurally algorithmic and iterative : the only way to calculate the properties of a system at a time t is to know its properties at the preceding time t-dt. This constraint leads to abandon the continuous trajectories for quantified ones.

    Therefore I ask the question : is it the right thing to try to find a continuous analytical formula, as the inverse square law, or shall we look at other mathematical shapes for motions, like an iterative algorithm ?

    Nice discussions in perspective !
     
    Last edited by a moderator: May 4, 2017
  13. Jul 16, 2010 #12

    jtbell

    User Avatar

    Staff: Mentor

    Of course, the orbit of a planet doesn't depend on its mass (assuming the planet's mass is much less than the sun's mass, and ignoring perturbations from other planets). Kepler didn't know the masses of the planets, and neither did Newton.
     
  14. Jul 17, 2010 #13

    Cleonis

    User Avatar
    Gold Member

    It seems to me that your statements about the scheme contain a self-contradiction.

    1) We have that the recursive schem produces a keplerian orbit.
    2) A keplerian orbit arises if and only if the force is a central, inverse square law force, that acts towards one focus of the ellipse.

    It follows logically that the recursive scheme reproduces the effects of a central force.

    A more general assertion:
    The law of areas applies if and only if the acceleration is a central acceleration.


    It's a mystery why you think that 'the acceleration is not central'.
     
  15. Jul 17, 2010 #14

    Cleonis

    User Avatar
    Gold Member

    I had a look at the PHP source code.
    I have rearranged some things to bring out features that want to focus on.

    I noticed that you use the string "$vr" for tangential velocity.

    These two lines update velocity components:
    $vx1 = $vx0 - $omega1*$y0;
    $vy1 = $vy0 + $omega1*$x0;

    These lines (not adjacent in your code) update velocity components too:
    $vr0 = sqrt(pow($x0,2)+pow($y0,2))*$omega0;
    $omega1 = $vr0/sqrt(pow($x1,2)+pow($y1,2));

    For abbreviation I will introduce a new variable now: "$r"
    $r = sqrt(pow($x,2)+pow($y,2))

    Then you get:
    $omega1 = ($r0/$r1) * $omega0;

    The above code implements that if $r1 is larger than $r0, then $omega1 will be smaller than $omega0

    Physicswise the following relation describes conservation of angular momentum:
    [tex] \omega_1 * {r_1}^2 = \omega_0 * {r_0}^2 [/tex]

    So conservation of angular momentum is not correctly set up in your code. Remarkably, there seems to be little accumulation of error in the PHP-applet.
    My best guess is that the errors in the computation tend to drop away against each other and/or that they become smaller with smaller time increments.

    Returning to these lines of code:
    $vx1 = $vx0 - $omega1*$y0;
    $vy1 = $vy0 + $omega1*$x0;

    omega1 represents the total tangential velocity. The multiplication with $x and $y decomposes that tangential velocity in x- and y-components of the radial position vector.

    As you know, if you have a vector with components x and y then the tangent of that vector is x/y and the tangent of the perpendicular vector is -y/x (That is, you swap numerator and denominator, and you add a minus sign).

    So it appears that in the code the direction of the acceleration is perpendicular to the instantaneous radial position vector. That raises the question: then how can the resulting trajectory be the same as a trajectory arising from a central force? My hunch is that there is a phase effect. There's probably a 90-degrees phase shift in the end result.

    Summerizing:
    The lines:
    $vr0 = sqrt(pow($x0,2)+pow($y0,2))*$omega0;
    $omega1 = $vr0/sqrt(pow($x1,2)+pow($y1,2));
    are critical to the way the PHP-applet operates; conservation of angular momentum with respect to the origin of the coordinate system is roughly implemented.
    Because of the constraint to conservation of angular momentum the trajectory, regardless of other factors, will always be a central force trajectory.
     
    Last edited: Jul 17, 2010
  16. Jul 17, 2010 #15

    hcl

    User Avatar

    Not at all. The Kepler's laws are just geometrical observations that can stand alone but the interest is to justify them into a physical world, as Newton and Einstein did. Have a look for instance on wikipedia : http://en.wikipedia.org/wiki/Kepler%27s_laws_of_planetary_motion" [Broken]
     
    Last edited by a moderator: May 4, 2017
  17. Jul 17, 2010 #16

    hcl

    User Avatar

    Take the formula 1 of my paper and find its derivative with report to time, you get the acceleration :[PLAIN]http://www.oceanvirtuel.com/physics/kepler/forum_1.png. [Broken]
    Obviously this acceleration can't be collinear to the radius.

    So I repeat it : things work as if the formula 1 would be correct only inside each time interval dt, but not across them. My proposal is structurally algorithmic and iterative : the only way to calculate the properties of a system at a time t is to know its properties at the preceding time t-dt. This constraint leads to abandon the continuous trajectories for quantified ones.
     
    Last edited by a moderator: May 4, 2017
  18. Jul 17, 2010 #17

    hcl

    User Avatar

    Sorry no.
    [PLAIN]http://www.oceanvirtuel.com/physics/kepler/forum_2.png [Broken]

    PS: I try to write in tex inside this forum but I get strange results ... Your formula seems also to behave strangely when cited, it is not at all the formula written in tex ... OK, I realized that the tex is not working in the preview but it seems to be ok in the final post.
     
    Last edited by a moderator: May 4, 2017
  19. Jul 17, 2010 #18

    hcl

    User Avatar

    Well, well. So the errors lead to ... the correct result. I like this kind of errors :wink:
    I am joking.

    You should really consider what I said above about the fundamental iterative structure of the method. Things work as if the formula 1 would be correct only inside each time interval dt, but not across them.
     
  20. Jul 17, 2010 #19

    Cleonis

    User Avatar
    Gold Member

    As an aside, I prefer to call it 'recursive algorithm'. In mathematics, what is referred to as 'iteration' is a procedure that gradually converges to a sought after value. The intermediate steps are discarded. Example: an algorithm to find a square root. A procedure that finds a series of values, each from the previous one, (such as Fibonacci's numbers), is called a recursive algorithm. It seems to me that in this case 'recursive algorithm' is fitting. (I suppose an iterative algorithm is always a recursive algoritm. That is, the class of iterative algoritms is a subclass of recursive algorithms class.)

    As to the code of the PHP-applet:
    Here is what I expect:
    With the current setup you find that the time increment must be taken extremely small in order to satisfy the area law.
    If you set up the conservation of angular momentum correctly then I expect that for the same level of compliance with the area law you'll be able to use way larger time increments.
     
    Last edited: Jul 17, 2010
  21. Jul 17, 2010 #20

    hcl

    User Avatar

    May be yes but this is not my point. My paper explains that the conservation of the momentum can be seen differently from the classical one, and it leads to the correct result. The usual use of the conservation of the momentum is well known in classical mechanics (see L. Landau & E. Lifchitz, "Mechanics" for instance). All I do is to give an other interpretation than the classical one, I use a quantified method instead of the continuous classical one. And it works.

    My method and the classical one lead to the same result : the forecast of Kepler's laws. Therefore it should be possible somehow to relate indeed one to the other, but in my sens this is not the interesting part of my work. The view of the motion as an iterative process instead of a continuous one is the point.
     
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook




Similar Discussions: A simple algorithm, with no use of the mass, to reproduce the 3 laws of Kepler
  1. Kepler's 3rd law (Replies: 5)

Loading...