State Estimation by steady state Kalman Filter I am working with a discret Kalman filter on a System 

$x_{k+1}=A_k x_k+B_k u_k+\omega_k$

$y_k=C_k x_k+\upsilon_k$

$E[\omega_k\omega_k^T]=Q$

$E[\upsilon_k \upsilon_k^T]=R$

I have estimated the State from the available noisy $y(k)$, which is generated from the same system state equations with Reference Trajectory of the state. Then I have tested it with a wrong initial state $x_0$ and a big initial covariance (simulation 1). I have noticed that the KF works very well, after a few steps the gain $K$ quickly converges to a very small value near zero. I think it is maybe caused by the Process noise $Q$. I have set it small because the $Q$ stands for the accuracy of the model. 

Now I want to modify it to a Steady State Kalman filter. I used the steady gain from simulation 1 as constant instead of the calculation in every iteration. Then the five equations can be simplified to one equation:

$\hat{x}(k+1)=(I-KC)A \hat{x}(k)+(I-KC)B u(k)+K y(k+1)$

I want to test it with same initial state and covariance matrix as the one in simulation 1.
But the result is very different from reference trajectory, and even the result of simulation 1.
I have tested it with the covariance matrix $p_\infty$, which is solved from the discret Riccati equation. And the use the equation:

$k_\infty=\dfrac{p_\infty C'}{C p_\infty C'+R}$

This neither works. I am wondering:


How should I apply Steady State Kalman Filter and how should I set the initial state for it? 
Is Steady State KF only used for scalar system? 
Should I use it with LQ-controller or some others?  


Eddit

I want to compare the performence between standard Kalman filter and steady state Kalman filter like this:
firstly, I set a wrong Initial State: $X_0=[5, -6, 0]^T$ but in fact it should be $X_0=[0, 0, 0]^T$. And I set the $P_0$ like a diagonal Matrix, on the main Diagonal are $25, 36, 0$. I get the steady gain $k_\infty$ and  $p_\infty$ from solving the discret Riccati equation

$P_\infty=AP_\infty A^T-(AP_\infty C^T)(CP_\infty C^T+R)^{-1}(CP_\infty A^T)+Q$

This can be solved by using Matlab Toolbox. I adjust the Koefficient $Q$ ($R$ is constant and available) until the "real" Kalman gain same as $k_\infty$ and at the same time standard Kalman filter works well. Then I think $Q$ in this time the best one. The result is good

And now I don't know, how to set the parameter in steady state Kalman filter.
I set  $X_0=[5, -6, 0]^T$ and $R$ same as ones in the standard kalman filter and use $k_\infty$ as constant Kalman gain. But it works with same parametmer not well.


I like to know, what's wrong with my design. 
The plot is below:
I've just tried a toy example of doing what you're suggesting and it works fine. The plot below shows how the standard Kalman filter (red line) and the steady-state Kalman filter (green circles) outputs are the same, except for some minor differences at the beginning.

The bottom plot shows the evolution of the Kalman gain coefficients for the standard Kalman filter.

Without seeing more detail of what you're doing, I don't think I can help much.  Note that I'm using SISO example, which may not be what you're after... but I haven't ever seen reasons for MIMO models to work differently than expected.





R Code Below

#27879 and 29963

T &lt;- 100

#H = [3 -3 1]
H &lt;- matrix(c(1,0,0),c(1,3)) 

#F is just a tapped delay line
alpha &lt;- matrix(c(0.9,0,0,0,0.9,0,0,0,0.9),3,3)
A &lt;- matrix(c(3,1,0,-3,0,1,1,0,0),3,3)
B &lt;- matrix(c(1,0,0),c(3,1))

sigma_v &lt;- 1
v &lt;- rnorm(T,0,sigma_v)
sigma_w &lt;- 0.01
w &lt;- rnorm(T,0,sigma_w)

x &lt;- matrix(c(0,0,0),c(3,1))
z &lt;- rep(0,T)

for (t in 1:T)
{
  z[t] &lt;- H %*% x + w[t]
  x &lt;- A %*% x +v[t]
}
par(mfrow=c(2,1))
plot(z,type="l", col="blue", lwd=5)
title('Measurements and both Filtered Measurements')

Q &lt;- matrix(c(0,0,0,0,0,0,0,0,sigma_v^2),3,3)
R &lt;- sigma_w^2


library("MASS") # For pseudo inverse ginv()

xkm1km1 &lt;- matrix(rep(0,3*T+3),3,T+1)
xkkm1 &lt;- matrix(rep(0,3*T),3,T)
K &lt;- matrix(rep(0,3*T),3,T)
Pkm1km1 &lt;- matrix(c(1000,0,0 ,0,1000,0, 0,0,1000),3,3)
zhat &lt;- matrix(rep(0,T),c(T,1))

for (k in 1:T)
{
  xkkm1[,k] &lt;- A %*% xkm1km1[,k]
  Pkkm1 &lt;- A %*% Pkm1km1 %*% t(A) + Q
  K[,k] &lt;- Pkkm1 %*% t(H) %*% ginv( H %*% Pkkm1 %*% t(H) + R)
  xkm1km1[,k+1] &lt;- xkkm1[,k] + K[,k] %*% (z[k] - H %*% xkkm1[,k])
  Pkm1km1 &lt;- (matrix(c(1,0,0,0,1,0,0,0,1),3,3) - K[,k] %*% H) %*% Pkkm1  
  zhat[k] &lt;- as.numeric(H %*% xkkm1[,k])
}
lines(zhat, col="red")

xkm1km1 &lt;- matrix(rep(0,3*T+3),3,T+1)
xkkm1 &lt;- matrix(rep(0,3*T),3,T)
zhat &lt;- matrix(rep(0,T),c(T,1))

for (k in 1:T)
{
  xkkm1[,k] &lt;- A %*% xkm1km1[,k]
  K[,T] &lt;- Pkkm1 %*% t(H) %*% ginv( H %*% Pkkm1 %*% t(H) + R)
  xkm1km1[,k+1] &lt;- xkkm1[,k] + K[,T] %*% (z[k] - H %*% xkkm1[,k])
  zhat[k] &lt;- as.numeric(H %*% xkkm1[,k])
}
points(zhat, col="green")

plot(1:100, K[1,], type="l", ylim=c(-1,1))
title('Kalman Gain coefficients')
lines(1:100, K[2,], col="red")
lines(1:100, K[3,], col="green")