?? tstdimo.m
字號(hào):
function [ret,x0,str,ts,xts]=tstdimo(t,x,u,flag);
%TSTDIMO is the M-file description of the SIMULINK system named TSTDIMO.
% The block-diagram can be displayed by typing: TSTDIMO.
%
% SYS=TSTDIMO(T,X,U,FLAG) returns depending on FLAG certain
% system values given time point, T, current state vector, X,
% and input vector, U.
% FLAG is used to indicate the type of output to be returned in SYS.
%
% Setting FLAG=1 causes TSTDIMO to return state derivatives, FLAG=2
% discrete states, FLAG=3 system outputs and FLAG=4 next sample
% time. For more information and other options see SFUNC.
%
% Calling TSTDIMO with a FLAG of zero:
% [SIZES]=TSTDIMO([],[],[],0), returns a vector, SIZES, which
% contains the sizes of the state vector and other parameters.
% SIZES(1) number of states
% SIZES(2) number of discrete states
% SIZES(3) number of outputs
% SIZES(4) number of inputs
% SIZES(5) number of roots (currently unsupported)
% SIZES(6) direct feedthrough flag
% SIZES(7) number of sample times
%
% For the definition of other parameters in SIZES, see SFUNC.
% See also, TRIM, LINMOD, LINSIM, EULER, RK23, RK45, ADAMS, GEAR.
% Note: This M-file is only used for saving graphical information;
% after the model is loaded into memory an internal model
% representation is used.
% the system will take on the name of this mfile:
sys = mfilename;
new_system(sys)
simver(1.3)
if (0 == (nargin + nargout))
set_param(sys,'Location',[112,54,876,665])
open_system(sys)
end;
set_param(sys,'algorithm', 'RK-45')
set_param(sys,'Start time', '0.0')
set_param(sys,'Stop time', '99')
set_param(sys,'Min step size', '0.0001')
set_param(sys,'Max step size', '.003')
set_param(sys,'Relative error','1e-3')
set_param(sys,'Return vars', '')
set_param(sys,'Load callback','N=8;T=.1;Fc=100;');
add_block('built-in/Mux',[sys,'/','Mux1'])
set_param([sys,'/','Mux1'],...
'inputs','2',...
'position',[315,47,345,83])
% Subsystem ['Random-number',13,'generator'].
new_system([sys,'/',['Random-number',13,'generator']])
set_param([sys,'/',['Random-number',13,'generator']],'Location',[115,400,471,569])
add_block('built-in/Constant',[sys,'/',['Random-number',13,'generator/Constant']])
set_param([sys,'/',['Random-number',13,'generator/Constant']],...
'Value','x',...
'position',[65,105,95,125])
add_block('built-in/State-Space',[sys,'/',['Random-number',13,'generator/Matrix',13,'Gain']])
set_param([sys,'/',['Random-number',13,'generator/Matrix',13,'Gain']],...
'A','[]',...
'B','[]',...
'C','[]',...
'D','K',...
'Mask Display','K',...
'Mask Type','Matrix Gain',...
'Mask Dialogue','Matrix Gain.|Gain matrix:')
set_param([sys,'/',['Random-number',13,'generator/Matrix',13,'Gain']],...
'Mask Translate','K = @1;',...
'Mask Help','Multiplies input vector by entered matrix to produce output vector (y=Au).',...
'Mask Entries','ones(1,N-1)\/')
set_param([sys,'/',['Random-number',13,'generator/Matrix',13,'Gain']],...
'position',[230,35,275,65])
add_block('built-in/Outport',[sys,'/',['Random-number',13,'generator/out_1']])
set_param([sys,'/',['Random-number',13,'generator/out_1']],...
'position',[310,40,330,60])
add_block('built-in/Relational Operator',[sys,'/',['Random-number',13,'generator/Relational',13,'Operator']])
set_param([sys,'/',['Random-number',13,'generator/Relational',13,'Operator']],...
'position',[155,38,185,62])
add_block('built-in/White Noise',[sys,'/',['Random-number',13,'generator/Random',13,'Number']])
set_param([sys,'/',['Random-number',13,'generator/Random',13,'Number']],...
'Seed','seed',...
'position',[40,27,85,63])
add_line([sys,'/',['Random-number',13,'generator']],[90,45;150,45])
add_line([sys,'/',['Random-number',13,'generator']],[100,115;115,115;115,55;150,55])
add_line([sys,'/',['Random-number',13,'generator']],[190,50;225,50])
add_line([sys,'/',['Random-number',13,'generator']],[280,50;305,50])
set_param([sys,'/',['Random-number',13,'generator']],...
'Mask Display','Random\nNumber',...
'Mask Type','Random number generator',...
'Mask Dialogue','Random number generator:|M-ary number:|Seed:')
set_param([sys,'/',['Random-number',13,'generator']],...
'Mask Translate','N=@1;x=[(2-N)/N:2/N:(N-2)/N];seed=@2;')
set_param([sys,'/',['Random-number',13,'generator']],...
'Mask Help','This block generate integer number 0 to M-1, where M is a integer. The probability of the apperance for each number is not guaranteed to be the same.')
set_param([sys,'/',['Random-number',13,'generator']],...
'Mask Entries','N\/1234\/')
% Finished composite block ['Random-number',13,'generator'].
set_param([sys,'/',['Random-number',13,'generator']],...
'BackGround',5,...
'position',[35,35,95,75])
add_block('built-in/Constant',[sys,'/','Const'])
set_param([sys,'/','Const'],...
'BackGround',2,...
'Value','N/2',...
'position',[120,69,150,91])
add_block('built-in/Relational Operator',[sys,'/',['Random',13,'binary signal']])
set_param([sys,'/',['Random',13,'binary signal']],...
'BackGround',2,...
'position',[185,63,215,87])
% Subsystem 'Hold and delay'.
new_system([sys,'/','Hold and delay'])
set_param([sys,'/','Hold and delay'],'Location',[354,383,814,533])
open_system([sys,'/','Hold and delay'])
add_block('built-in/Inport',[sys,'/','Hold and delay/in_2'])
set_param([sys,'/','Hold and delay/in_2'],...
'Port','2',...
'position',[45,45,65,65])
add_block('built-in/Inport',[sys,'/','Hold and delay/in_1'])
set_param([sys,'/','Hold and delay/in_1'],...
'position',[15,25,35,45])
% Subsystem ['Hold and delay/Clock triggered',13,'hold buffer'].
new_system([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer']])
set_param([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer']],'Location',[229,493,559,639])
add_block('built-in/Outport',[sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/out_1']])
set_param([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/out_1']],...
'position',[290,35,310,55])
add_block('built-in/Switch',[sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Switch']])
set_param([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Switch']],...
'Threshold','eps',...
'position',[210,29,240,61])
add_block('built-in/Inport',[sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/in_1']])
set_param([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/in_1']],...
'position',[35,25,55,45])
% Subsystem ['Hold and delay/Clock triggered',13,'hold buffer/Rising edge',13,'detector'].
new_system([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Rising edge',13,'detector']])
set_param([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Rising edge',13,'detector']],'Location',[303,485,692,659])
add_block('built-in/Relational Operator',[sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Rising edge',13,'detector/Relational',13,'Operator']])
set_param([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Rising edge',13,'detector/Relational',13,'Operator']],...
'position',[135,18,165,42])
add_block('built-in/Inport',[sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Rising edge',13,'detector/in_1']])
set_param([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Rising edge',13,'detector/in_1']],...
'position',[10,15,30,35])
add_block('built-in/Memory',[sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Rising edge',13,'detector/Memory1']])
set_param([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Rising edge',13,'detector/Memory1']],...
'position',[125,80,165,110])
add_block('built-in/Constant',[sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Rising edge',13,'detector/one1']])
set_param([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Rising edge',13,'detector/one1']],...
'Value','thld',...
'position',[30,135,60,155])
add_block('built-in/Relational Operator',[sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Rising edge',13,'detector/Relational',13,'Operator2']])
set_param([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Rising edge',13,'detector/Relational',13,'Operator2']],...
'Operator','>',...
'position',[265,23,295,47])
add_block('built-in/Relational Operator',[sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Rising edge',13,'detector/Relational',13,'Operator1']])
set_param([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Rising edge',13,'detector/Relational',13,'Operator1']],...
'position',[200,88,230,112])
add_block('built-in/Outport',[sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Rising edge',13,'detector/out_1']])
set_param([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Rising edge',13,'detector/out_1']],...
'position',[340,25,360,45])
add_line([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Rising edge',13,'detector']],[300,35;335,35])
add_line([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Rising edge',13,'detector']],[235,100;240,100;240,40;260,40])
add_line([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Rising edge',13,'detector']],[170,30;260,30])
add_line([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Rising edge',13,'detector']],[65,145;100,145;100,35;130,35])
add_line([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Rising edge',13,'detector']],[100,145;180,145;180,105;195,105])
add_line([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Rising edge',13,'detector']],[170,95;195,95])
add_line([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Rising edge',13,'detector']],[35,25;130,25])
add_line([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Rising edge',13,'detector']],[45,25;45,95;120,95])
set_param([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Rising edge',13,'detector']],...
'Mask Display','Edge\ndetector',...
'Mask Type','Edge Detection',...
'Mask Dialogue','Rising edge detection:|Threshold:')
set_param([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Rising edge',13,'detector']],...
'Mask Translate','thld=@1;')
set_param([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Rising edge',13,'detector']],...
'Mask Help','When the input signal rising edge passed the given shreshold, this block outputs one, otherwise outputs zero.')
set_param([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Rising edge',13,'detector']],...
'Mask Entries','thld\/')
% Finished composite block ['Hold and delay/Clock triggered',13,'hold buffer/Rising edge',13,'detector'].
set_param([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Rising edge',13,'detector']],...
'position',[80,58,140,102])
add_block('built-in/Inport',[sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/in_2']])
set_param([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/in_2']],...
'Port','2',...
'position',[35,70,55,90])
add_block('built-in/Memory',[sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Memory']])
set_param([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer/Memory']],...
'orientation',2,...
'position',[200,85,240,115])
add_line([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer']],[245,45;260,45;260,100;245,100])
add_line([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer']],[145,80;155,80;155,45;205,45])
add_line([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer']],[195,100;185,100;185,55;205,55])
add_line([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer']],[60,35;205,35])
add_line([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer']],[245,45;285,45])
add_line([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer']],[60,80;75,80])
set_param([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer']],...
'Mask Display','Hold\nBuffer',...
'Mask Type','Hold Buffer',...
'Mask Dialogue','Clock triggered hold buffer:|Threshold for clock signal:')
set_param([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer']],...
'Mask Translate','thld=@1;')
set_param([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer']],...
'Mask Help','The first input port is for signal. The second input port is for clocks pulse. The rising edge of the clock signal locks the signal from the first port and outputs the value until next clock pulse rising edge.')
set_param([sys,'/',['Hold and delay/Clock triggered',13,'hold buffer']],...
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -