Jump to content

h4tt3n

Senior Members
  • Posts

    162
  • Joined

  • Last visited

Everything posted by h4tt3n

  1. Ok, I tested a number of different algorithms designed to find E and - strangely enough - the more than 300 year old Newton-Raphson iterative method appears to be the most robust one. In pseudocode, this is what it looks like: E = M + ( Sign(M) - (M / Pi) ) * (ecc/2) i = 0 Do i += 1 Eold = E E = Eold + ( (M + ecc * Sin(Eold) - Eold) / (1 - ecc * Cos(Eold)) ) Loop while abs(E-Eold) > 1e-16 And i < 10 where E is eccentric anomaly, ecc is eccentricity, M is mean anomaly, and i is number of iterations. Even for eccentricities near 1 and mean anomalies near 0, it converges in less than 10 iterations. cheers, Mike
  2. Ok, I guess I have to admit that you're right and I'm wrong. There are a large number of methods with which E can be determined at any desired accuracy, although - as you mentioned - some are quite sophisticated. I'm reading up on some of these now. It appears that many people in the almost 400 years since the discovery of Kepler's equation have experienced similar frustrations trying to solve it, glad to know I'm not alone I also realise that integration algorithms are only approximations, and that even very good, higher order equations can return invalid results if you do not use it wisely (ie. by picking an unreasonable small or large delta time value). I do have to mention that there are other considerations to make than the ones you mention: Implementing a high-accuracy Kepler orbit only makes sense if you desire a quantitatively correct simulation of an orbit. Ie. you want to know the near-exact position of some planet at time t. If, on the other hand you want a qualitatively plausible simulation, I would still think that even lower order integrators like the 2nd order velocity Verlet are preferrable over the Kepler method. They are much simpler to implement and allow for many-body simulations with a high number of interacting bodies due to low computational cost. Despite of beeing inaccurate, such an implementation can still produce a plausible simulation which conserves energy and momentum, and at the same time illustrates how many-body systems evolve and change. Cheers, Mike
  3. Sorry, I ment algebraically. What bothers me about this method is that you need an iterative solver, which will only return eccentric anomaly at a limited precision, and that the accuracy of the result furthermore depends on eccentricity, giving lower precision at higher eccentricities. I was of the impression that you could find an orbiting body's position at time t exactly (within the limits of classical mechanics), not just approximately. My problem is, I'm no longer sure what I would gain by leaving the newtonian method for the Keplerian. A sixth order symplectic solver like the one I'm using now is very accurate. Cheers, Mike
  4. Thanks for the elaborate answer D H. When asking, I did so in the hope that there was some way of determining E (eccentric anomaly) other than solving Kepler's equation using an iterative method, or even a solution not involving E at all. I find it stange that it is possible to isolate all orbital elements from a body's state vectors (I did so in an app that draws the elliptic orbit of a body based on velocity and position only), but you can't seem to go the other way around - finding a body's state vectors from orbital elements and time. Cheers, Mike
  5. Hello, For the last few years I've been programming a number og small apps for visualizing gravitational interaction, elliptic orbits and the sort of thing. So far I've done this the Newtonian way, by using an integration algorithm to find the new velocities and positions of each body based on gravitational interaction. Now I'd like to express movement as Kepler orbits instead, and in order to be able to do that I started reading through the wikipedia articles on Kepler orbit, Kepler's laws of planetary motion, and orbital elements. Strangely, I can't seem to find a way to calculate an orbiting body's position as a function of time. It seems like there's always an element missing, even though all data defining the orbit is there - such as mass of both bodys, semimajor axis, eccentricity and so on. Could anybody here please shed some light on the missing part? Clearly, I've stared myself blind on the problem. Ps. I have taken the liberty to post my question both here and in "classical physics", hope it's ok. Cheers, Mike
  6. Of course the Earth is flat! ...economically speaking, that is
  7. Yes, I realise this and that, as a consequence, you can't define a border around any larger body within which any orbiting object will remain stably for all eternity. That's also not what I'm looking for. I'm simply asking for a method that, assuming known mass and state vectors for all bodies, in any given system will determine which - if any - larger body a smaller body of our choice is orbiting at that moment. No prediction of future eventualities neccesary. I've implemented the Hill Sphere with some success, but as stated on the wikipedia page it's only an approximation, and the true region of stability over any length of time may be only half as wide. It seems like just a qualified guess. The SOI is basically the same equation, except it results in a smaller sphere, but unfortunately it also requires knowledge of the semimajor axis of the larger object trajectory around an even larger body. At least there are some mostly certain methods to determine that a smaller object is not in a bounded orbit around another one: -total energy of smaller body wrt to larger body is positive -smaller body's speed is larger than the escape velocity of the larger body cheers, Mike
  8. H_D: Thanks for clarifying the concepts, now I understand why you brought up the exact elliptic orbit. As for the equations, this is definitely in the right direction. The problem here is, that in order to calculate wether a smaller object is likely to be in orbit around a larger object, you *first* need to know wether this larger object is orbiting an even larger one (in order to calculate the semimajor axis). This is not a problem when working with a known, stable system like our solar system, where all larger objects behave nicely, and where you know the sun will always be the larger, central body everything else orbits around. But I can't seem to implement these equations in a more general form, which returns valid Hill spheres for bodys moving around in a more chaotic system. Cheers, Mike Merged post follows: Consecutive posts mergedRadical Edward, Mr Skeptic & Sisyphus: Yes, the smaller object is captured by the larger if it's total energy (kinetic + gravitational potential relative to larger object) is less than zero, or if it's speed is smaller than the escape velocity (which is the same thing, really). The only issue about this is that an object can have E < 0 relative to several other objects at the same time. The Lunar Orbiter probes were orbiting the moon, Earth, and Sun at the same time. How do we "sort" them hierarchically? Cheers, Mike
  9. I'll try this out. It does sound plausible, although I think there's a pitfall. Smaller objects can orbit more than one larger object simultaneously. The Moon orbits the Earth, but it also orbits the Sun. If we pick the Moon's state vectors as an example, the method should point out Earth as the parent object, not the Sun. I'll run this through my simulation software and see if there's a clear pattern. Cheers, Mike
  10. True, no object follows an *exact* ellipse, but this is really besides the topic. A given object is either in closed orbit around another given object or not, the exact shape of that orbit beeing of less importance. But how do you determine wether it is or not?
  11. Hello, I'm looking for a way to determine wether one object is in a closed elliptic orbit around another based on mass and state vectors alone. For instance, if an asteroid is passing close by Jupiter, how do you determine wether it has actually been caught up into a closed orbit (assuming mass and state vectors are known)? At all times it is orbiting the sun, but how do you determine wether it is also orbiting Juiter? Cheers, Mike
  12. I think they would appear to be ripped apart
  13. Hmmm, I'd like to see some very tangible result before getting excited about this. I find it hard to believe that you can make sentient or intelligent beeings by just hooking up enough neurons. Rather than building a cat-sized "brain", I'd prefer if they just simulated - say - a spider brain and connected it to a virtual 3d spider model with the ability to move around inside a simulated physical environment. If they could make this virtual spider act in a way similar to real spiders, including making webs, catching virtual insects and the like, then I'd get excited! Cheers, Mike
  14. Well, yes. I just considered it more appropriate to post it under inorganic chemistry than under astronomy.
  15. In this Astronomy Now article, "Should Mars really be black?", scientists claim to have produced red hematite from black magnetite without the presence of water through a purely mechanical process. http://www.astronomynow.com/news/n0909/18mars/ “Subsequent analysis of the flask material and dust has shown that the magnetite was transformed into the red mineral hematite, through a completely mechanical process without the presence of water at any stage of this process.” My question is: Can magnetite Fe3O4 really be transformed into hematite Fe2O3 through a purely mechanical process? Magnetite consists of a mixture of iron(II) and iron(III), and hematite is just iron(III), so somehow there's a room-temperature redox process going on?!? As a side-note I live close to a very windy (mechanically active) area where there is much magnetite in the beach sand. Still, no hematite whatsoever is present in the ground. Cheers, Mike
  16. http://www.astronomynow.com/news/n0909/18mars/ Can magnetite Fe3O4 really be transformed into hematite Fe2O3 through a purely mechanical process? Magnetite consists of a mixture of iron(II) and iron(III), and hematite is just iron(III), so somehow there's a room-temperature redox process going on? Cheers, Mike
  17. You might want to look at the "hydraulic ram", which uses the kinetic energy of streaming water to pump a smaller volume of water to quite great heights. http://en.wikipedia.org/wiki/Hydraulic_ram Cheers, Mike
  18. @ MacSwell Thank you for the comprehensive answer, now I believe I understand how it works: Every link in the chain is beeing influenced by the same net force, which is the external force / number of links (assuming each link has the same mass). Let's use your example with a chain of ten links, each weighing 1 kg, beeing pulled with a force of 10 N: The first link is pulled with 10 N but pulls the remaining 9 links with 9 N, giving a net force of 1 N. The second link is pulled with 9 N but pulls the remaining links with 8 N and so on right down to the last link, which is beeing pulled by 1 N. Boiled down, each link is influenced by a force of 1 N or total force / number of links. If there is a chain of just 5 links weighing 1 kg each in the other end of the spring, then each link is influenced by 10 N / 5 links = 2 N per link, accelerating each link twice as fast as in the longer chain - just as we would expect in real life. Thanks, Mike
  19. Ok, I don't get what you're trying to say here... In a Newtonian / classical context an object accelerates only when influenced by a force, right? When the extended spring between the two sections of chain contracts, it applies a force on them and makes them accelerate, right? So, looking at a single one of those chain links, the only way it can accellerate - which it does in a stationary frame of reference - is because it was influenced by a force "passed over to it" from one or both of its neighboring links. How can you physically describe or calculate this phenomenon, either in terms of force, acceleration, impulse or other? Cheers, Mike
  20. For cimplicity, let's just assume the chains are floating in a gravity-less, frictionless space, and that they are stretched out so every link is alrady in physical contact with its neighbors. But if there's no net force on any particular link in the chain, then they won't move, right? I realise that the number of chain links doesn't matter in real life, I just can't see how to express this in terms of force propagation from link to link, especially if the chains have a different number of links: force <- force <- spring -> force -> force -> force -> force (For all it matters, this could be rephrased into a question about how to calculate the force propagating from atom to atom in a seemingly rigid object which is beeing influenced by an external contact force.) Cheers, Mike
  21. If two stiff or rigid objects are connected with a stretched spring, it will apply equal opposite forces on the objects and pull them together (let's assume a frictionless environment). Since this is a closed system of free moving bodies, the net force on the system will remain constant (let's assume zero for cimplicity). If instead two chains are connected with a stretched spring, it will apply opposite equal forces on the two links it is attached to, which again applies opposite equal forces on the next two links and so on, until the whole chain has been influenced by the spring force. First I assumed that the forces simply propagate unchanged from link to link, but this can't be true, since we'll end up with a change in net force with chains of different number of links. What is the right way to calculate force propagation from link to link in this case? Cheers, Mike
  22. One week later bump! Seriously, since all real elliptic trajectories have the barycentre at one focus point, how come there apparently aren't any examples or tutorials available to calculate such an orbit? Cheers, Mike
  23. Hello, Recently I've been reading the wikipedia articles on orbital elements and orbital state vectors. I've used the equations to write a small program which calculates the elliptic trajectory of an orbiting body from its state vectors. The trouble is that all equations in the articles seem to assume that the orbiting bodys mass is neglible and that the barycenter (or center of mass) is placed exactly at the center of the heavier parent body. If I want to describe the trajectories of two bodies of nearly the same mass orbiting their barycentre (like in the animation below), the equations in the articles cannot be used. So, my question is: how do you calculate orbital elements like semimajor axis, eccentricity and so on, not from a parent body frame of reference, but from a barycentric frame of reference? Cheers, Mike
  24. That makes good sense. Thanks for the help. Cheers, Mike
  25. Thanks for the very comprehensive reply Royce. For information, I originally picked the 2d cross product equation up at the mathworld site. So, summing up, is it mathematically / physically correct to say that in some cases an orbiting body can have negative angular momentum? I suppose this would have some relevance for the 3d case aswell, since all two-body cases can be simplified to 2d if you align the orbital plane with the frame of reference (z axis zeroes out). Cheers, Mike
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.