In order to be able to write a Kalman filter for your INS, you have to derive a linear error propagation model for your navigation system. In the existing literature, such error propagation models are broadly categorized into 2 groups.

The first group is called as PHI-model. This is nothing but the simple perturbation of the equations of kinematics (which are wrongfully called as INS equations among navigation engineers). Because the difference between the true attitude and the INS derived attitude is represented as the letter PHI, this model is called as PHI.

The second group is the PSI-model. In fact, this model is also obtained as a result of a certain perturbation. However, in the PSI-model we perturb the equation of kinematics around a fictitious navigation frame which is called as the “computer frame”. The difference between the INS derived attitude and computer frame is represented as the letter PSI. That is where this name comes from.

There are sufficient number of papers in the existing literature describing the derivation of psi-models. Especially the Benson’s short papers on the psi model (both his 1975 and 1978 dated papers) describe everything related with it in plain English. There are some other papers further unifying several concepts and deriving a bunch of other models also. However, Benson’s papers (especially the one titled “A Comparison of Two Approaches to Pure-Inertial and Doppler-Inertial Error Analysis”) is all you need to learn everything regarding PSI models.

Having learned both the PHI and PSI models, then you will face the real question: which model should you use? This is the main topic of this blog note.

The short answer is that you should prefer the PHI model in all your Kalman filter implementations.

This answer may at first be surprising for you as all the canonical sources about navigation systems usually favours the psi model. So, let me elaborate my answer a little bit more.

It is indeed true that PSI-model is more clean than the PHI model as the transport rate is not perturbed in it. Being clean means that less number of floating point calculations are required in the Kalman filter cycles. However, in today’s computing capabilities such a tinny reduction in the model computation is not important at all.

Even though psi-model does not have any clear advantage over phi-model, every navigation engineer must definitely learn how to derive PSI model even if he does not use it at all. (I personally had been able to learn the real meaning of navigation frame only after studying the PSI model.) Mostly because of its conceptual importance, navigation engineers learn it in the early stages of their careers and then continue to use it out of habitual tendency. This is in fact the main reason why psi-model is more commonly used in the navigation systems with high-grade sensors.

On the other hand, psi model has one big disadvantage that makes it not so suitable for low-grade units. One of the significant problems that we face in the design of low-cost systems is the azimuth initialization. High grade system can perform gyro-compasing to reduce the initial attitude uncertainty to the levels suitable for small-angle assumption. However, in low cost system, we almost always have to perform in-motion alignment starting with a large heading uncertainty. Because of the definition of the “computer frame”, the effect of large heading uncertainty manifest itself on the velocity errors in the PSI-models. Therefore both the position and the velocity errors are affected by the non-linearity of the large attitude errors in the PSI-models. On the other hand, the large heading uncertainty only affects the position errors in the PHI-models. Therefore, PHI-models behaves better than PSI-models under large azimuth errors.

As far as I know, in the entire literature it is only Scherzinger who uses a PSI-model based large heading filter. However, in his paper titled “Inertial Navigator Error Models For Large Heading Uncertainty”, he also recognizes the aforementioned difficulty of standard psi-models and therefore proposes a modifed version of it. I find his modified psi-model unnecessarily complex. I cannot see any advantage of his method over much easier (and almost standard) method described in “T. M. Pham, Kalman filter Mechanization for INS airstart, IEEE, 1992″.

As a result, if you are going to desing an INS with low-cost sensors, you should only consider using PHI-models as long as you do not have a robust mean of attitude initialization. You should always remember that under small angle assumption phi and psi models are equivalent. Therefore, there is absolutely no theoretical advantage of choosing one over the other. However, this does not mean that PSI-model is not important. On the contrary, if you are a navigation engineer you have to learn it by heart in order to understand the basic navigation frame concepts.

PS: See smoother_2filt_fwd and example_wander in the toolkit as introductory examples to the PSI-models. Also sys_llh_phipsi, sys_metric_phipsi and correctnav_Cen clearly shows the difference between phi and psi model implementations.