필터 지우기
필터 지우기

Admittance estimation from Admittance measurement

조회 수: 4 (최근 30일)
Paolo
Paolo 2012년 10월 30일
Hi. Here's my problem: I need to identify the admittance of an electronic device given its measured admittance; I have two vectors of data: w and dataY, where w is frequency [rad/s] and dataY is the measured admittance modulus (dataY = Y) measured per each frequency w.
I know (from theory), that the admittance of my device must be:
Y(s) = V(s)/I(s) = s*C_DC + s/(1/C_eq+s^2*L_eq+s*R_eq).
Y(jw) = V(jw)/I(jw) = jw*C_DC + jw/(1/C_eq-w^2*L_eq+jw*R_eq).
The problem is to find the 4 parameters (C_DC, C_eq, L_eq, R_eq) that best identify the admittance that I have measured.
I started with a "standard" least squares method:
err = intmax;
for ind_C_DC = C_DC
for ind_R_eq = R_eq
for ind_L_eq = L_eq
for ind_C_eq = C_eq
fittingY = 1i*w*ind_C_DC + 1i*w./(1/ind_C_eq-w.^2*ind_L_eq+1i*w*ind_R_eq);
curr_err = mean((dataY-abs(fittingY)).^2);
if curr_err < err
C_DC_fit = ind_C_DC;
R_eq_fit = ind_R_eq;
L_eq_fit = ind_L_eq;
C_eq_fit = ind_C_eq;
err = curr_err;
end
end
end
end
end
where C_DC, R_eq, L_eq, C_eq are 4 vectors of length N with a number N of possible parameters and C_DC_fit, R_eq_fit, L_eq_fit, C_eq_fit are the best fitting parameters.
Unfortunately, this doesn't work. Or better, it works (quite good) only if I let the simulation run for hours and hours (with N very very big).
Can you please suggest a smarter solution?
Thank you! Paolo

답변 (0개)

카테고리

Help CenterFile Exchange에서 Linear Model Identification에 대해 자세히 알아보기

제품

Community Treasure Hunt

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

Start Hunting!

Translated by