我正在尝试使用平方根UKF方法进行参数估计。我的问题是MATLAB cholupdate
!
为了在SR-UKF中使用秩为1的Cholesky因子,您需要计算cholupdate{S,u,+-v},但MATLAB代码cholupdate
只接受1作为v。
以前有人有这个问题吗?
这是我为SRF UKF使用的论文。
cholupdate(R,X,v)
的第三个输入是单个字符('+'
或'-'
),指示A + X*X'
或A - X*X'
(更新或截止日期)。如果您希望v
通过A + v*X*X'
扩展X
,则必须将其构建到X
:中
>> A = pascal(4)
>> R = chol(A)
>> x = [0 0 0 1].'; %' update
>> v = 1.2
>> xs = sqrt(v)*x;
>> isequal(A + xs*xs.',A + s*(x*x.'))
ans =
1
然后您可以使用cholupdate(R,xs,'+')
。
最后一行是v
等于:
A = pascal(4)
R = chol(A)
x = [0 0 0 1].'%' update
v = 1.2
xs = sqrt(v)*x
ss=isequal(A + xs*xs.',A + v*(x*x.'))