Fw: [请益 4000P] 如何贮存“每次叠代状态下的x值”?

楼主: Ecampus (7.7)   2018-05-06 21:41:50
软件是MATLAB
以下是kalman-filter五条公式
https://imgur.com/a/85OkG
https://imgur.com/a/kCCjz
下面是kalman滤波器的程式码:
我想把kalman-filter(卡尔曼滤波器)用在“修正河川液体浓度扩散”
x(:,1,k) = A*x(:,1,k-1)+U;
p(:,:,k) = A*p(:,:,k-1)*A';
kg(:,1,k) = p(:,:,k)*H' / (H*p(:,:,k)*H'+R);
x(:,1,k)=x(:,1,k)+kg(:,1,k)*(y(k-1)-H*x(:,1,k-1));
x0= 不知道怎么处理 ??????????? ;
p(:,:,k)=(II-kg(:,1,k)*H)*p(:,:,k);;
% k是总迭代次数(k表不同时间,k=1秒、2秒、3秒、4秒....)
[x]跟[A]是矩阵式,所有参数或矩阵都已知。
[x]矩阵,是扩散后的液体浓度的推估值
[x]矩阵格式如下:
[ A
B
C
D
.
.
.
. ]
A为0公尺处的浓度推估值
B为10公尺处的浓度推估值
C为20公尺处的浓度推估值
D为30公尺处的浓度推估值
以此类推下去,假设终点为100公尺处。
如果我想贮存某一点(譬如B点)随着时间的不同液体浓度,该如何设定x0
.
.
.
.
.
我各项参数都有了(A矩阵、p矩阵、U矩阵、k是总迭代次数)
但有一个小地方,我不知道该如何处理。 就是x0如何处理?
x0的数学含义就是把每次叠代k状态下的x值贮存起来方便最后做图
(和观测值y以及理论值y0对比)
物理意义是把卡尔曼滤波算法得到的每一k时刻的位移值放在x0中,
于是x0就是每一时刻的浓度值
但是在此处,我不知道我这个题目的x0该如何设定=.=...
假设这里迭代10次好了。
※ 编辑: Ecampus (125.230.93.172), 05/06/2018 22:10:21

Links booklink

Contact Us: admin [ a t ] ucptt.com