資源簡介
基于具有抗差性的驗后單位權(quán)中誤差的抗差最小二乘Matlab代碼
代碼片段和文件信息
function?X?=?Robust_Least_Squares(BlPf)
%抗差最小二乘
%輸入值:
%???????B為系數(shù)陣
%???????l為常數(shù)項矩陣
%???????Pf為權(quán)陣
%輸出值:
%???????X為抗差最小二乘參數(shù)平差值
%測試設(shè)計矩陣大小n
[nm]=size(B);
%得到具有抗差性的驗后單位權(quán)中誤差
P=Pf;
for?i=1:3
????[XseigamaP_]?=?roubst(BlP);
????P?=?P_;
end
%迭代抗差
x_old?=?10000*ones(m1);
P=Pf;
while?1
????Seigama?=?seigama;%初始化單位權(quán)中誤差
????[XseigamaP_]?=?roubst(BlPSeigama);
????P?=?P_;
????
????dx?=?x_old?-?X;
????x_old?=?X;
????if(sqrt((dx‘*dx)/m)?<1E-6)
????????break;
????end
end
%抗差最小二乘
function?[xseigamaP_]?=?roubst(BlPsei)
????P_?=?P;
????
????Nbb?=?inv(B‘*P*B);
????Qvv=inv(P)-B*inv(B‘*P*B)*B‘;
- 上一篇:ARIMA模型-matlab代碼
- 下一篇:von mises分布
評論
共有 條評論