double NormAngle(double angle)
{
while (angle < -PI) angle += PI2;
while (angle >= PI) angle -= PI2;
return angle;
}
When compiling on Windows,
I frequently encounter an issue with Satellite No. 59 where the calculation:
a = 1 / (2 / r - v2 / (CGCS2000_SQRT_GM * CGCS2000_SQRT_GM)); results in a negative number.
This causes an inf value to be passed into Alm->w = NormAngle(w);, which hangs the program.
Interestingly, this issue does not occur on WSL using the exact same settings."