使用可调参数创建MATLAB系统以进行系统识别

时间:2015-02-27 10:39:57

标签: system-identification

我试图让MATLAB创建一个带有初始值的状态空间模型,后来我必须使用系统识别工具箱进行微调。

问题是我正在使用" white-box"模型,这意味着我的模型中的A矩阵不仅仅是一个数值矩阵,而是由几个其他参数组成。

由于构成矩阵的每个参数都具有物理意义,因此我想单独估计而不仅仅是A矩阵的值。

这有可能吗?看过genss,idss和其他几种工具,但是还没有能够使它们中的任何一种工作。

我正在使用的系统版本如下(C和D矩阵不相关,因为这只是测试真的):

A = [-H_infil/Ca+Hsa_i^2/(Ca*(Hms_i+Hsa_i))-Hsa_i/Ca-H_win/Ca+Hsa_e^2/(Ca*(Hsa_e+Hms_e))-Hsa_e/Ca-H_vent/Ca Hsa_i*Hms_i/((Hms_i+Hsa_i)*Ca) Hsa_e*Hms_e/((Hsa_e+Hms_e)*Ca);
     Hms_i*Hsa_i/((Hms_i+Hsa_i)*Ci) Hms_i^2/((Hms_i+Hsa_i)*Ci)-Hms_i/Ci 0;
     Hms_e*Hsa_e/((Hsa_e+Hms_e)*Ce) 0 Hms_e^2/((Hsa_e+Hms_e)*Ce)-Hms_e/Ce-Hem/Ce];

Bc = [Hsa_i*S*wi/(Ca*(Hms_i+Hsa_i))+S*wa/Ca Hsa_i*fi/(Ca*(Hms_i+Hsa_i))+fa/Ca+Hsa_e*fe/(Ca*(Hsa_e+Hms_e)) H_infil/Ca+H_win/Ca H_vent/Ca;
    Hms_i*S*wi/((Hms_i+Hsa_i)*Ci) Hms_i*fi/((Hms_i+Hsa_i)*Ci) 0 0;
    0 Hms_e*fe/((Hsa_e+Hms_e)*Ce) Hem/Ce 0];

Cc = [0 0 0];

Dc = [0 0 0 0]

我意识到我可能会遇到几个解决方案的问题,但后来我认为系统识别只会选择一个。

有什么想法吗?

提前致谢!

哦,初始值如下:

%% Q_Heating ratio factors are defined
    % Factors
   ki = 0.6;
   ke = 0;
   ka = 1 - ki - ke;

%% Internal heat gain factors are defined
   fe = 0;             % Internal heat gain ratio to external constructions
   fi = 0;             % Internal heat gain ratio to internal constructions
   fa = 1 - fe - fi;   % Internal heat gain ratio to room air

%% Solar heat gain factors are defined
   S = 0.558; % Shading factor
   wi = 0.6; % Solar heat gain ratio to internal constructions
   wa = 1 - wi; % Solar heat gain ratio to room air

%% Capacities
   % Air node
   Ca = 60708.707;
   % Internal node
   Ci = 6.160*10^6*1.3;
   % External node
   Ce = 5.489*10^5*1.3;

%% Heat transfer coefficients
    % Air to surface heat transfer coefficients
    Hsa_i = 581.286;
    Hsa_e = 52.094;
    % Surface to mass heat transfer coefficients
    Hms_i = 3235.007;
    Hms_e = 284.432;
    % Mass to external air/ground heat transfer coefficient
    Hem = 0.986*1.3;
    % Room air to external air heat transfer coefficients
    H_infil = 0;
    H_win = 1.627;
    % Ventilation heat transfer coefficient
    H_vent = 0;

0 个答案:

没有答案