Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: English - Português - 日本語 - Русский

Please note that the recommended version of Scilab is 6.0.0. This page might be outdated.
See the recommended documentation of this function

Aide de Scilab >> Traitement du Signal > filters > system

system

observation update

Calling Sequence

[x1,y]=system(x0,f,g,h,q,r)

Arguments

x0

input state vector

f

system matrix

g

input matrix

h

Output matrix

q

input noise covariance matrix

r

output noise covariance matrix

x1

output state vector

y

output observation

Description

define system function which generates the next observation given the old state. System recursively calculated

x1=f*x0+g*u
y=h*x0+v

where u is distributed N(0,q) and v is distribute N(0,r).

Examples

// initialize state statistics 
// (mean and err. variance)
m0=[10 10]';
p0=[2 0;0 2];
// create system
f=[1.1 0.1;0 0.8];
g=[1 0;0 1];
h=[1 0;0 1];
// noise statistics
q=[.03 0.01;.01 0.03];
r=2*eye(2);
// initialize system process
rand("seed",2);
rand("normal");
p0c=chol(p0);
x0=m0+p0c'*rand(ones(m0));
yt=[];
//initialize kalman filter
xke0=m0;pk0=p0;
// initialize err. variance
ecv=[pk0(1,1) pk0(2,2)]';
[x1,y]=system(x0,f,g,h,q,r)
Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Thu Oct 02 13:54:32 CEST 2014