- Joined
- Feb 2, 2012
- Messages
- 1,667
- Reaction score
- 115
- Points
- 78
There is indeed a small change between the definitions of GetHorizonAirspeedVector in 2010-P1 and GetGroundSpeedVector(FRAME_HORIZON) in the beta:
In 2010-P1, the vector returned by GetHorizonAirspeedVector is the vessel's velocity vector (relative to the planet centre) minus the velocity of a surface point below the vessel - independent of the vessel's altitude.
In the beta, the vector returned by GetGroundSpeedVector is the vessel's velocity vector (relative to the planet centre) minus the velocity of a point at the current vessel position, fixed in the rotating planet frame. In other words, it is the vessel's velocity in the rotating planet frame.
The two definitions are identical at ground level, but start to diverge at higher altitudes. In particular, a vessel in geostationary orbit has a zero groundspeed in the new definition, but had a nonzero airspeed in the old definition. (I think my rationale of the old definition was something like the atmosphere lagging behind the rotating planet surface at higher altitudes - which obviously is not correct.) So the new version is intended to remove this ad-hoc assumption and provide a more consistent definition.
Does that make sense? Given this new definition, can you correct your ascent calculations so that they come to correct results again?
First of all thank you very much for the quick and detailed responses!
Relevant to ShiftCG everything works perfectly now! thank you!
About the groundspeed I think I understood what you mean, and first the good news: I simply changed this
Code:
const double wearth=2*PI/oapiGetPlanetPeriod(GetSurfaceRef());
double EastVel=abs((oapiGetSize(GetSurfaceRef()))*wearth*cos(lat));
Code:
const double wearth=2*PI/oapiGetPlanetPeriod(GetSurfaceRef());
double EastVel=abs((oapiGetSize(GetSurfaceRef())+GetAltitude())*wearth*cos(lat));
and orbit is reached again with a 4 digits precision :thumbup:
I think that the result and what you stated is perfectly consistent and correct: in my vision the groundspeed is the velocity of the point projected on the surface by the vessel which coincides with the velocity in the rotating frame.
so, for example, if you fly at high altitude you do an arc much longer than the distance projected on earth and with a speed much higher than the groundspeed.
I hope I was clear and to have guessed what you meant!
Thanks again for this amazing job!
