State Blocks

State Blocks (SBs) provide the Fusion plugin with states and the models to propagate those states.

State Blocks provide a set of states, \(\mathbf{x}\). Let \(\mathbf{x}_k\) be the Mx1 vector representing the value of \(\mathbf{x}\) at time \(t_k\). Then the Fusion plugin assumes that the way \(\mathbf{x}\) changes from one time epoch to the next is well-modeled by

\[\mathbf{x}_{k}=\mathbf{g}(\mathbf{x}_{k-1})\mathbf{+w}_{k},\ \ \ \mathbf{w}_{k}\overset{\mathrm{iid}}{\sim}N(0,\sigma_{w})\]

where \(\mathbf{g}\) is the discrete-time propagation function, and \(\mathbf{w}\) is white Gaussian noise sources.

In the special case of a linear model, \(\mathbf{g}(\mathbf{x})\) can be written \(\mathbf{g}(\mathbf{x})=\mathbf{\Phi x}\), where \(\mathbf{\Phi}\) is the Jacobian matrix of \(\mathbf{g}(\mathbf{x})\). The discrete-time process noise covariance matrix is defined as \(\mathbf{Q_d}=E[\mathbf{w}_{k}\mathbf{w}_{k}^T]\).

When a Fusion plugin wants to propagate a set of states from \(\mathbf{x}_{k-1}\) to \(\mathbf{x}_{k}\), it queries the State Block which provides those states for the three elements of the dynamics model: \(\mathbf{g}(\mathbf{x})\), \(\mathbf{\Phi}\), and \(\mathbf{Q_d}\).