I've been trying to compare before & after results for some updated algorithms in an application. Basically, I want to be able to start and run the test at any arbitrary Epoch with the satellite starting in the same position relative to a fixed point on the earth.
For simplicity - assuming Mean Anomaly for the starting TLE is 0 at the start of the day, I could update the Mean Anomaly to ((percentTime * 360 * meanMotion) % 360) where percentTime the decimal part of the Epoch.
For some reason, updating TLEs in this fashion results in a satellite in nearly the same location, but it diverges at several miles per hour difference in the Epoch.
As an example - an initial (and fake) TLE:
1 43226U 18022A 22103.00000000 .00000098 00000+0 00000+0 0 9990
2 43226 0.0434 291.0032 0000358 85.9514 000.0000 1.00274097 15127
Updated to the following should have the same location relative to a fixed point on Earth:
1 43226U 18022A 22103.50000000 .00000098 00000+0 00000+0 0 9990
2 43226 0.0434 291.0032 0000358 85.9514 180.4934 1.00274097 15127
Updated to match same day at 12am
Is my understanding for creating a fake TLE on the exact same orbit correct?
I'm uncertain if the propagator and algorithms being used around it has some kind of bug or if I'm missing something.