Hi all, paulcefo <paulcefo@buffalo.edu> a écrit :
Petrus,Darrell Herriges considered the least squares fit of both GP4 and the DSST (as it existed at that time) to numerical integration. Both GP4 and DSST were options in the MIT version of the GTDS program.It would be a good thing if Matt took a look at the Herriges document.The process of fitting an analytical theory to numerical integration orbit was originally developed at the Goddard Space Flight Center and had the name "Precise Conversion of Elements" or PCE. Initially the PCE process was used to generate Brouwer mean elements for numerical trajectory over a finite time span.I know Darrell Heriges' thesis well as I was his thesis supervisor. Darrell is now USAF Col (ret'd).More recently we have been developing a Standalone DSST Orbit Determination Program which relies on the same library as the Standalone DSST Orbit Propagator.Paul -- Dr. Paul J. Cefola Consultant in Aerospace Systems, Spaceflight Mechanics, & AstrodynamicsAdjunct Faculty, Dept. of Mechanical and Aerospace Engineering, University at Buffalo (SUNY)4 Moonstone Way Vineyard Haven, MA 02568 USA 508-696-1884 (phone on Martha's Vineyard) 978-201-1393 (cell) paulcefo@buffalo.edu paul.cefola@gmail.com On 11/15/2014 11:33 am, Petrus Hyvönen wrote:Hi Matt and Paul, I?m happy if you continue this discussion on the list, this is an area I have wondered too how to do well. I have an example of a conversion from Keplerian, which I think as well can be definied initially by state vector, online visible at: http://nbviewer.ipython.org/urls/dl.dropboxusercontent.com/u/164808/TLE%20Generation%20Example.ipynb [1] (it?s in python but a very near java) My example is partly based on the test example in the orekit source. Is this a good way to do it, and I assume that is the same question as you Matt have?
Note also that Orekit provides a direct implementation of the process Paul explained in detail above. You can look at org.orekit.propagation.conversion package and more precisely at the PropagatorConvertor and its implementations.
There is an example for TLE in the unit tests, in the TLEConvertorTest.java file.
This code is based on a contribution made a few years ago by Telespazio and enhanced by Pascal who generalized it so it can support any type of propagators.
best regards, Luc
Not sure if I follow your description fully Paul, but the special perturbations you are referring to, are they the ones in the paper at the orekit site? https://www.orekit.org/forge/.../MIT_Herriges_SM_Thesis_1988.pdf [2] Best regards /PetrusOn 14 Nov 2014, at 23:43 , paulcefo <paulcefo@buffalo.edu> wrote: Matt, There is a well established way to do this. 1. you should use the state vector as the initial condition in a Special Perturbation (numerical integration) orbit propagation. If you are considering a LEO orbit, the time interval for the Special Perturbation orbit propagation should be at least 3 or 4 days. You should record the position velocity on a fine grid (say every few minutes). The 3 or 4 day interval is dictated by the desire to make the integration span long relative to the periodic terms that are neglected in the GP4 theory that is the basis for the TLE. 2. use a least squares process (differential correction) to fit the GP4 theory to the position and velocity that you created with the Special Perturbation orbit propagator. The results of this least squares process will a set of TLE. There are lots of fine details to be discussed. There are documents and software that describe and demonstrate this approach. The DSST satellite theory is quite ... different ... from GP4. Send me a note and we can discuss. regards, Paul Cefola -- Dr. Paul J. Cefola Consultant in Aerospace Systems, Spaceflight Mechanics, & Astrodynamics Adjunct Faculty, Dept. of Mechanical and Aerospace Engineering, University at Buffalo (SUNY) 4 Moonstone Way Vineyard Haven, MA 02568 USA 508-696-1884 (phone on Martha's Vineyard) 978-201-1393 (cell) paulcefo@buffalo.edu paul.cefola@gmail.com On 11/14/2014 3:01 pm, matthew.darden@solers.com wrote:Hi, I have to take a state vector (in this case a PVCoordinates and AbsoluteDate) and convert it into a TLE (or rather orbital elements that I can make a TLE from). I know the answer will never be very good, but I have to do it. Is there a good way to make this conversion? I know that I can just get what I need by creating a KeplerianOrbit from what I have, but those values are osculating and I need the mean orbital elements if I want the answer to be anywhere near correct. I tried using OsculatingToMeanElementsConverter with a DSST propagator using different force models, but nothing really made any difference. As a test case I took a random TLE, got the PVCoordinates at the time the TLE was created (so that it would be as accurate as possible) and passed those into my method. Which should spit out a generic TLE with orbital values close to the originals. To test how close the two orbits truly are, I simply propagated them both every 10 minutes for a 24 hour period, checking the distance between the two points. Thank you, MattLinks: ------ [1] http://nbviewer.ipython.org/urls/dl.dropboxusercontent.com/u/164808/TLEGenerationExample.ipynb [2] https://www.orekit.org/forge/.../MIT_Herriges_SM_Thesis_1988.pdf
---------------------------------------------------------------- This message was sent using IMP, the Internet Messaging Program.