How can I estimate a value of a noise parameter when using linsolve?

조회 수: 1 (최근 30일)
JJH
JJH 2019년 9월 20일
I am currently trying to estimate the amount of noise present in my system so that I can minimise the error on some of my parameters. I have the code
noise = 0.23;
conds = 1/noise*[1 -log(9) 1./(8.617*10^(-5)*447.12); 1 -log(11) 1./(8.617*10^(-5)*465.86); 1 -log(13) 1./(8.617*10^(-5)*486.31);1 -log(9) 1./(8.617*10^(-5)*467.74);1 -log(9) 1./(8.617*10^(-5)*488.49)];
times = 1/noise*[log(2463); log(206.82); log(71.251); log(1232.6); log(741.91)];
X = linsolve(conds,times)
% Sum of squared residuals
z=0.5*(times-conds*X).'*(times-conds*X);
% chi^2=2*z
% Tune the noise sigma_P unit Q~0.5 . sigma_P is then a sensible noise
% level
Q=chi2cdf(2*z,length(conds),'upper');%Q is prob that chi^2 exceeds measured value 2*z
% %Covariance matrix for the estimate
P_xhat=inv(conds.'*conds);
where noise is a parameter I have added to find the noise in my model by finding the value of noise that makes Q~=0.5. Here, I have guessed the value of noise to get to something that gives the answer I want. How would I go about getting matlab to do this estimation for me? Could I do something along the lines of fminsearch but searching for the value that is closest to 0.5 rather than the minimum?

답변 (0개)

카테고리

Help CenterFile Exchange에서 Descriptive Statistics에 대해 자세히 알아보기

태그

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by