I have body fixed angular velocity values and linear acceleration values streaming in to my application. at some interval $\delta t$.
I need to get a world position from these, assuming the start position is $(0,0,0)$.
My idea is to find the quaternion $q_{t}$ for $[\dot\phi, \dot\theta, \dot\psi]\delta t$ and append it to a overall quaternion $Q$ at every timestep i.e. $Q : = Q * q_{t}$ (euler order doesn't matter for small angles).
Now at every timestep I can apply the orientation Q to the linear velocity and numerically integrate similarly. In the end I should have position and orientation.
But it's also true that, at each time step, I could integrate linear velocity first, applying the rotation from the previous time step, before updating the quaternion.
Or, I could update the orientation over half a time step, apply it to the linear velocity, and then update the orientation another half time step, to create some sort of average.
Is this even close to a good approach? I wasn't able to find clear answers to this in numerical methods text books that I have.