Admittance estimation from Admittance measurement
    4 Ansichten (letzte 30 Tage)
  
       Ältere Kommentare anzeigen
    
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 Kommentare
Antworten (0)
Siehe auch
Kategorien
				Mehr zu Dynamic System Models finden Sie in Help Center und File Exchange
			
	Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
