0001 function result = utp_ltpda_ss_ss2iir(varargin)
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025 ALGONAME = mfilename;
0026 VERSION = 'Id: utp_ltpda_ss_ss2iir.m,v 0.3 2008/02/17 20:23:45 agry';
0027 display(['starting ' mfilename]);
0028
0029 result = 1;
0030
0031 for i0 = 1:0
0032
0033 nSysTot = floor(rand()*4)+1;
0034 pSys = floor(rand()*nSysTot)+1;
0035 nUTot = floor(rand()*nSysTot)+1;
0036 OutputSizes = ones(nSysTot,1)+floor(rand(nSysTot,1)*5);
0037 InputSizes = ones(nSysTot,1)+floor(rand(nUTot,1)*5);
0038
0039 syst = utp_ltpda_ss_random_generate(nSysTot, pSys, nUTot, OutputSizes, InputSizes);
0040
0041 syst = pset(syst, 'TIMESTEP',1);
0042
0043 try
0044 iir = ltpda_ss_tomiir(syst);
0045 display('OK')
0046 catch
0047 result = 0;
0048 display('pb')
0049 end
0050
0051 end
0052
0053
0054 A=[0 1; 2 3];
0055 B=[0;1];
0056 C=[2 -1];
0057 D=1;
0058 syst = plist('TYPE', 'SUBSYSTEM' ,'NAME', 'SS1' ,'TIMESTEP', 1 , ...
0059 'XISOUTPUT',0,'YISOUTPUT',1,'XINI', [0 0]' , ...
0060 'PARAMNAMES', {} ,'PARAMVALUES', [] ,'PARAMSIGMAS', [] ,...
0061 'NBINPUTS', 1 ,'INPUTNAMES', {'U'} ,'INPUTSIZES', 1 , 'INPUTISUSED', 1 ,...
0062 'AMAT', {A} ,'BMATS', {B} ,'CMAT', {C} ,'DMATS', {D} );
0063 ltpda_ss_check(syst)
0064 f = ltpda_ss_ss2iir(syst);
0065 fa = [1 -4 0];
0066 fb = [1 -3 -2];
0067 if (norm(fa-f{1}.a) + norm(fb-f{1}.b))>1e-14
0068 result = 0;
0069 end
0070 display(result)
0071
0072 end
0073