Om alla ekvationer beräknas digitalt flera gånger per sekund uppdateras alla variabler vid varje ram och integrationsfelet är bara ett gångsteg gammalt. Full Flight Simulators använder fyra uppsättningar kvaternioner för att beräkna flygplanets tillstånd i jordreferensramen. För att illustrera hur det görs i FFS-flygdynamik, här är en del av stegen som äger rum:
$$ \ dot {E_1} = 0.5 \ cdot (-E_4 \ cdot p - E_3 \ cdot q - E_2 \ cdot r) + E_1 \ cdot C_Q * C_ {Q \ Delta t} \ tag {1} $ $ $$ E_1 = \ dot {E_1} * \ Delta t \ tag {2} $$ $$ \ Sigma E ^ 2 = {E_1} ^ 2 + {E_2} ^ 2 + {E_3} ^ 2 + {E_4} ^ 2 \ tag {3} $$ $$ C_Q = 1 - \ Sigma E ^ 2 \ tag {4} $$ $$ E_ {1P} = E_1 * \ frac {1} {\ sqrt {\ Sigma E ^ 2}} \ tag {5} $$
- Ekvation (1) är en av fyra ekvationer för $ \ dot {E_1}, \ dot {E_2}, \ dot {E_3}, \ dot {E_4} $, medan $ p, q, r $ är flygplansrulle , tonhöjdsgrader.
- $ C_Q $ är en kvaternionskorrigeringsfaktor som använder summan av alla kvaternioner squared.
- $ C_ {Q \ Delta t} $ är en tidskorrigeringsfaktor och bör vara mindre än iterationshastigheten i Hz. Ett konstant värde är empiriskt valt som ger god stabilitet.
- Ekvation (2) är en enkel Euler integrator med hjälp av det faktiska tidssteget i beräkningsramen. Så om vi beräknar 1000 Hz, $ \ Delta t $ = 0.001.
- $ E_ {1P} $ är huvudkvaternionen substituerad i transformationsmatrisen från kropp till jordaxlar.