gusucode.com > 《精通matlab 7》包括配套光盘 > 配套光盘里的程序附件/Ex-34/mdlInitializeSizes.m

    function [sys,x0,str,ts] = mdlInitializeSizes(A,B,C,D)
sizes = simsizes;
sizes.NumContStates  = 0;
%两个离散状态
sizes.NumDiscStates  = size(A,1); 
%两个输出
sizes.NumOutputs     = size(D,1); 
%两个输入
sizes.NumInputs      = size(D,2); 
sizes.DirFeedthrough = 1;
sizes.NumSampleTimes = 1;
sys = simsizes(sizes);
%初始状态为1
x0  = ones(sizes.NumDiscStates,1);
str = [];
%时间间隔为1,时间偏移为0
ts  = [1 0]; 
function sys = mdlUpdate(t,x,u,A,B,C,D)
sys = A*x+B*u;
sys = C*x+D*u;