Hot answers tagged

10

It's somewhat an issue of the cart driving the horse -- TLEs are generated explicitly for the purpose of being an input into the SGP4 propagator. The data used to generate them often comes from propagators or observations far more precise than SGP4. SGP4 loses accuracy far away from the epoch because it is only an approximation of the full physical ...


6

This has to do with ambiguities in the definitions used for certain terms, and software doing strange contortions to avoid breaking backwards compatibility. The USAF's family of Simplified General Perturbations propagators are based on mean element theories of orbital motion. However, there are multiple ways to define and compute mean motion, and ...


6

The problem is solved using the Skyfield and Astropy packages in python. import skyfield.sgp4lib as sgp4lib from astropy import coordinates as coord, units as u from astropy.time import Time # time- J2000 date # p,v- vectors, result of SGP4 in TEME frame date= datetime.datetime(2000, 1, 1, 12, 0) + datetime.timedelta(days=time - 2451545) # ...


5

While this answer was written for a different question/project, it points out that the Two Line Element sets and the SGP4 propagator work together and each is designed specifically to work only with the other. The elements of a TLE are not exactly Keplerian orbital elements, even though the parameter names overlap with Keplerian element names. This is ...


5

Do not make FAKE TLEs! Step 1: Read this answer. Step 2: Review all of the links in the answer. I'll repeat them here: Documentation webpage TLE format PDF Spacetrack report #3 PDF Revisiting Spacetrack Report #3 webpage Revisiting Spacetrack Report #3 PDF Step 3: Decide that this is a Bad Idea for the following reasons: Making Fake TLEs is dangerous!!...


5

I have published a julia package called SatelliteToolbox.jl that has all the conversions related to IAU-76/FK5 model (ITRF, MOD, TOD, GCRF, PEF, etc.) and now I also added the support for TEME. However, you need to use the master branch because it is not released yet. To install the package from master, you can do this: Pkg.add("SatelliteToolbox") Pkg....


4

First, the SGP4 propagator is meant to propagate TLEs. He takes a TLE and a time since the TLE's epoch as inputs and outputs a position and a velocity. By selecting several times, you get a trajectory. In STK, if you have a trajectory generated by some other method, i.e. the TwoBody propagator or the HPOP propagator, then STK can estimate a TLE that would ...


4

As far as I can tell, this is nothing to worry. What goes into a TLE is a specific kind of average elements, which are meant to simplify short-term propagations. Here "mean" does not imply a time-averaged value, but rather the result of some specific mathematical transformations. This paper explains it fairly well, but notice it uses a theory different than ...


3

SDP4 has a lot of algorithmic nuances to handle objects in 12- and 24-hour orbits. You can get decent (km-level over a week or so) fits to the model. I see no evidence in the SDP4 algorithm that they had higher-orbiting objects in mind. Go much beyond a one-day orbit with SDP4, and you're basically using a hammer as a screwdriver. If you take a look at ...


3

I find Ryan C's answer interesting... but I've never actually interpreted the documentation that way. It's difficult to be certain, since all official TLEs have had ephem type 0. But I (and others with whom I've discussed the matter) have assumed that ephem type 0 means "use SGP4 if you've got 6.4 or more revolutions/day; otherwise, use SDP4", ...


3

You seem well aware that there is a reference implementation for SGP4 in Matlab. Yet you choose to make your own. I've sadly been there, and done that. Your first problem is to compute XKE, but from the reference you've posted on page 88: And on page 89: Since G = 6.67408 × 10-11 m3 kg-1 s-2, GM has units of length³/time². Convert these units to Earth ...


3

A TLE describes the orbit of a body at a single reference point in time, which is called the epoch. It is straightforward to extrapolate the position of the object for some time forward or backward from that snapshot, but beyond that, limitations of the propagation model cause errors to grow, and the position of the object cannot be accurately estimated. ...


3

I will recommend you to work with CPP version that can be found here: http://ww.celestrak.com/publications/AIAA/2006-6753/AIAA-2006-6753-Rev2.pdf Aditional information can be found here: http://ww.celestrak.com/software/tskelso-sw.asp


3

What exactly do you mean by ‚generate‘? TLEs are mainly used by NORAD, you can find a specification on their website, telling you what exactly any particiluar character of the TLE means. That will be helpful if you want to create your own. If you just want to read TLEs for existing spacecraft, there is a big list on NORAD‘s website, where you can ...


2

Tarlan is spot on with his answer but I wanted to tag along for those not using python or using some other software not being discussed here. The general consensus is that converting directly between inertial frames gets messy and non-trivial. As a result it would be best to get TEME into a fixed/pseudo-fixed frame before converting it to your inertial ...


2

Indeed, SGP4 is not made to allow you to compute maneuvers. You can get a TLE, propagate up to maneuver time to obtain propagated position and velocity, then assume this instant is the new epoch, and re-generate a new TLE, to do so: 1-Compute a new epoch in TLE format at the maneuver ending time 2-Compute the position and velocity after the maneuver (maybe ...


2

Is it possible that the blue plot shows the true shape of the radius vector, while the SGP4 plot show just an approximate shape? Just because SGP4 is indeed an approximation (a fairly low accuracy approximation) of the true orbit does not mean that the blue plot is better. I very strongly suspect that the blue plot is even worse, for a number of reasons. ...


2

Many satellites do not have any position or velocity measurements. Time tag tables including satellite state, magnetic and sun vector are been uploaded from the ground and the satellite uses it for attitude control and orbit control maneuvers. LEO satellite can use GPS and OD features to obtain the satellite state without being dependent on ground updates. ...


2

The first question you need to ask yourself is the following: does the spacecraft need to know its own position? Many, if not most, spacecraft do not need that information. The ground team simply needs to know when to schedule maneuvers, which means that only the ground team needs to know the position of the spacecraft, not the spacecraft itself. If the ...


2

...but I can't find a source code for SDP4 on the internet. As discussed in the question How do “Deep space” corrections in SGP4 account for the Sun's and Moon's gravity? and according to Wikipedia: Current code libraries have merged SGP4 and SDP4 algorithms into a single codebase handling the range of orbital periods which are usually referred to ...


2

You don't have to implement the propagator. You can download it from space-track.org, just like you download TLEs. Go to space-track, click "Help", then click "SGP4", and arrive at https://www.space-track.org/documentation#/sgp4 . From there, pick Windows or Linux, and download compiled shared libraries of the latest SGP4 as released ...


1

I have no formal, mathematical answer to this. When I have to fit TLEs to a new object, I try SDP4; if it fails, I drop back to SGP4. It's an entirely empirical "gee, SDP4 didn't work here" approach. I also haven't kept particularly careful track of when it happens, and I've only had SDP4 fail on maybe a dozen objects. So my statistics are ...


1

This is a partial answer, and I think it would be good to have confirmation from someone who knows more about this than I do. After my previous answer I did some more searching, and found History of the SGP4 Propagator on the STK website. It seems that this happened a lot earlier than I'd originally thought! In the mid- to late 1970s, the SGP4 was ...


1

Grady Hillhouse was able to get it working on a Nucleo F401RE development board: link. I improved on that to get it on an ESP8266 wifi module. And added some extra stuff to calculated satellite overpasses and see if the satellite is visible: project , library This is focused on embedded devices, but it shouldn't be to hard to get it running in other ...


1

Not necessarily "outdated" as much as simply exactly what the ever-articulate (see also) Brandon Rhodes has written: "X days from the epoch" (unsigned, could be either direction) because TLEs are sometimes post-dated to the future by as much as several weeks, and PyEphem may feel that it is too early to use that TLE as well as too late. note: pyephem (...


1

This is a supplementary answer to confirm that the procedure suggested in @JCRM's answer seems to work for me as well. I do not recommend you use the following script; it's here only to illustrate how the test was done. Oh, and never try to make a fake TLE! TLE_ISS = """ISS (ZARYA) 1 25544U 98067A 18343.93002315 .00002202 00000-0 40582-4 ...


1

I found Hujsak 1979 -- its title is "A Restricted Four Body Solution for Resonating Satellites Without Drag", but the linked pdf shows it is also Spacetrack Report #1. Four body means Earth, Moon, Sun, and satellite. There is a lot of integration going on: some things are averaged three or four times, over different periods with respect to ...


1

If you want a complete answer about how SGP4 (or SDP4) does it, you should read form the original source: The Space Track Report #3. For the actual theory behind, you should read the references by Hujsak and Hoots, for which I could not have access. During the description of SDP4 routines, it says: "At this point SDP4 calls the initialization section of ...


Only top voted, non community-wiki answers of a minimum length are eligible