MATLAB に初期値を使用して状態空間モデルを作成させようとしていますが、後でシステム識別ツールボックスを使用して微調整する必要があります。
問題は、「ホワイトボックス」モデルでこれを行っていることです。つまり、モデルの 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]
いくつかの解決策で問題が発生する可能性があることは認識していますが、システム識別は 1 つを選択するだけだと考えました。
何か案は?
前もって感謝します!
ああ、初期値は次のようになります。
%% 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;