⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sysm1.txt

📁 与先前上传的文件一样
💻 TXT
字号:
function [ret,x0,str,ts,xts]=am_sys1(t,x,u,flag);
%AM_SYS1	is the M-file description of the SIMULINK system named AM_SYS1.
%	AM_SYS1 has a the following characteristics:
%		5 continuous states
%		0 discrete states
%		0 outputs
%		0 inputs
%		does not have direct feedthrough
%		1 sample times
%
%	The block-diagram can be displayed by typing: AM_SYS1.
%
%	SYS=AM_SYS1(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 AM_SYS1 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 AM_SYS1 with a FLAG of zero:
%	[SIZES]=AM_SYS1([],[],[],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',[54,51,575,446])
     open_system(sys)
end;
set_param(sys,'algorithm',     'RK-45')
set_param(sys,'Start time',    '0.0')
set_param(sys,'Stop time',     '999999')
set_param(sys,'Min step size', '0.0001')
set_param(sys,'Max step size', '0.005')
set_param(sys,'Relative error','1e-3')
set_param(sys,'Return vars',   '')

add_block('built-in/Signal Generator',[sys,'/','信号发生器'])
set_param([sys,'/','信号发生器'],...
		'Font Name','宋体',...
		'Font Size',12,...
		'Peak','1.000000',...
		'Peak Range','5.000000',...
		'Freq','30.000000',...
		'Freq Range','50.000000',...
		'Wave','Sin',...
		'Units','Rads')
set_param([sys,'/','信号发生器'],...
		'position',[25,88,70,122])

add_block('built-in/Product',[sys,'/','乘法器'])
set_param([sys,'/','乘法器'],...
		'Font Name','宋体',...
		'Font Size',12,...
		'Mask Display','plot([0 1],[1 0],[0 1],[0 1]);',...
		'Mask Type','乘法器',...
		'Mask Dialogue','乘法器',...
		'position',[125,98,155,122])

add_block('built-in/Sum',[sys,'/','加法器'])
set_param([sys,'/','加法器'],...
		'Font Name','宋体',...
		'Font Size',12,...
		'position',[185,105,205,125])

add_block('built-in/Scope',[sys,'/','包络检波后波形'])
set_param([sys,'/','包络检波后波形'],...
		'Font Name','宋体',...
		'Font Size',12,...
		'Vgain','1.000000',...
		'Hgain','1.000000',...
		'Vmax','2.000000',...
		'Hmax','2.000000',...
		'Window',[206,245,535,411])
set_param([sys,'/','包络检波后波形'],...
		'position',[450,185,480,215])

add_block('built-in/Note',[sys,'/','峰值包络检波器'])
set_param([sys,'/','峰值包络检波器'],...
		'Font Name','宋体',...
		'Font Size',12,...
		'position',[220,345,225,350])

add_block('built-in/Scope',[sys,'/','解调信号波形'])
set_param([sys,'/','解调信号波形'],...
		'Font Name','宋体',...
		'Font Size',12,...
		'Vgain','0.500000',...
		'Hgain','1.000000',...
		'Vmax','1.000000',...
		'Hmax','2.000000',...
		'Window',[309,300,640,453])
set_param([sys,'/','解调信号波形'],...
		'position',[450,280,480,310])

add_block('built-in/Scope',[sys,'/','已调幅信号波形'])
set_param([sys,'/','已调幅信号波形'],...
		'Font Name','宋体',...
		'Font Size',12,...
		'Vgain','3.000000',...
		'Hgain','1.000000',...
		'Vmax','6.000000',...
		'Hmax','2.000000',...
		'Window',[0,301,329,449])
set_param([sys,'/','已调幅信号波形'],...
		'position',[450,100,480,130])

add_block('built-in/Scope',[sys,'/','信号波形'])
set_param([sys,'/','信号波形'],...
		'Font Name','宋体',...
		'Font Size',12,...
		'Vgain','3.000000',...
		'Hgain','1.000000',...
		'Vmax','6.000000',...
		'Hmax','2.000000',...
		'Window',[35,61,366,222],...
		'position',[450,40,480,70])

add_block('built-in/Zero-Pole',[sys,'/',['Butterworth',13,'低通滤波器']])
set_param([sys,'/',['Butterworth',13,'低通滤波器']],...
		'Font Name','宋体',...
		'Font Size',12,...
		'Zeros','z',...
		'Poles','p',...
		'Gain','k',...
		'Mask Display','plot(20*log10(w),20*log10(abs(h)))',...
		'Mask Type','buttap')
set_param([sys,'/',['Butterworth',13,'低通滤波器']],...
		'Mask Dialogue','Analog Butterworth low pass filter.\n\n(Requires Signal Processing Toolbox)|Cutoff frequency (rad/sec)|Order')
set_param([sys,'/',['Butterworth',13,'低通滤波器']],...
		'Mask Translate','[z,p,k]=buttap(@2); z=@1*z; p=@1*p; k=real(prod(-p)); [num,den]=zp2tf(z,p,k); w=logspace(log10(@1/10),log10(10*@1),20); h=freqs(num,den,w); ')
set_param([sys,'/',['Butterworth',13,'低通滤波器']],...
		'Mask Help','Butterworth low pass filter using MATLAB''s butter command.',...
		'Mask Entries','5*2*pi\/4\/',...
		'position',[350,273,410,317])

add_block('built-in/Note',[sys,'/','调制信号'])
set_param([sys,'/','调制信号'],...
		'Font Name','宋体',...
		'Font Size',12,...
		'position',[45,60,50,65])

add_block('built-in/Note',[sys,'/','X(t)'])
set_param([sys,'/','X(t)'],...
		'Font Name','宋体',...
		'Font Size',12,...
		'position',[85,80,90,85])

add_block('built-in/Gain',[sys,'/',['直流偏置',13,'A']])
set_param([sys,'/',['直流偏置',13,'A']],...
		'Font Name','宋体',...
		'Font Size',12,...
		'Gain','2',...
		'position',[135,155,155,175])

add_block('built-in/Sine Wave',[sys,'/',['载波',13,'cos(Wc*t)']])
set_param([sys,'/',['载波',13,'cos(Wc*t)']],...
		'Font Name','宋体',...
		'Font Size',12,...
		'frequency','F*2*pi',...
		'Mask Display','',...
		'Mask Type','载波',...
		'Mask Dialogue','载波|载波频率(Hz):',...
		'Mask Translate','F=@1;')
set_param([sys,'/',['载波',13,'cos(Wc*t)']],...
		'Mask Entries','50\/',...
		'position',[55,155,75,175])

add_block('built-in/Transfer Fcn',[sys,'/','包络解调'])
set_param([sys,'/','包络解调'],...
		'Font Name','宋体',...
		'Font Size',12,...
		'Drop Shadow',4,...
		'Numerator','[R]',...
		'Denominator','[R*C R+1]')
set_param([sys,'/','包络解调'],...
		'Mask Display','plot([0 15],[2 2],[8 8 6 10],[2 0 0 0],[6 10],[-1 -1],[8 8 7 9],[-1 -4 -4 -4],[12.5 12.5 12 13],[2 1 1 1],[12 12],[1 -3],[13 13],[1 -3],[12 13 12.5 12.5],[-3 -3 -3 -4],[12 13],[-4 -4]);')
set_param([sys,'/','包络解调'],...
		'Mask Type','单元6',...
		'Mask Dialogue','单元6|电阻值(欧):|电容值(法):',...
		'Mask Translate','R=@1;C=@2;',...
		'Mask Entries','1\/0.1\/',...
		'position',[190,273,295,317])


%     Subsystem  'Diode'.

new_system([sys,'/','Diode'])
set_param([sys,'/','Diode'],'Location',[4,207,504,457])

add_block('built-in/Gain',[sys,'/','Diode/Gain'])
set_param([sys,'/','Diode/Gain'],...
		'Gain','1/2',...
		'position',[340,117,365,143])

add_block('built-in/Sum',[sys,'/','Diode/Sum'])
set_param([sys,'/','Diode/Sum'],...
		'position',[270,120,290,140])

add_block('built-in/Product',[sys,'/','Diode/Product'])
set_param([sys,'/','Diode/Product'],...
		'position',[195,123,225,147])


%     Subsystem  'Diode/Sign'.

new_system([sys,'/','Diode/Sign'])
set_param([sys,'/','Diode/Sign'],'Location',[159,289,467,458])

add_block('built-in/Outport',[sys,'/','Diode/Sign/out_1'])
set_param([sys,'/','Diode/Sign/out_1'],...
		'position',[265,70,285,90])

add_block('built-in/Inport',[sys,'/','Diode/Sign/in_1'])
set_param([sys,'/','Diode/Sign/in_1'],...
		'position',[35,30,55,50])

add_block('built-in/Relational Operator',[sys,'/',['Diode/Sign/Relational',13,'Operator']])
set_param([sys,'/',['Diode/Sign/Relational',13,'Operator']],...
		'Operator','>',...
		'position',[140,32,170,63])

add_block('built-in/Sum',[sys,'/','Diode/Sign/Sum'])
set_param([sys,'/','Diode/Sign/Sum'],...
		'inputs','+-',...
		'position',[215,64,235,91])

add_block('built-in/Relational Operator',[sys,'/',['Diode/Sign/Relational',13,'Operator1']])
set_param([sys,'/',['Diode/Sign/Relational',13,'Operator1']],...
		'Operator','<',...
		'position',[140,92,170,123])

add_block('built-in/Constant',[sys,'/','Diode/Sign/Constant'])
set_param([sys,'/','Diode/Sign/Constant'],...
		'Value','0',...
		'position',[65,105,85,125])
add_line([sys,'/','Diode/Sign'],[60,40;135,40])
add_line([sys,'/','Diode/Sign'],[95,40;95,100;135,100])
add_line([sys,'/','Diode/Sign'],[90,115;135,115])
add_line([sys,'/','Diode/Sign'],[110,115;110,55;135,55])
add_line([sys,'/','Diode/Sign'],[175,110;185,110;185,85;210,85])
add_line([sys,'/','Diode/Sign'],[175,50;185,50;185,70;210,70])
add_line([sys,'/','Diode/Sign'],[240,80;260,80])
set_param([sys,'/','Diode/Sign'],...
		'Mask Display','plot(-50,-50,50,50,[-50,50],[0,0],[0,0],[-50,50],[-40,0],[-30,-30],[0,40],[30,30])',...
		'Mask Type','Sign',...
		'Mask Dialogue','y = sign(x)')
set_param([sys,'/','Diode/Sign'],...
		'Mask Help','Sign Function:\n\t\t\ty = 1 if x > 0\n\t\t\ty = 0 if x = 0\n\t\t\ty = -1 if x < 0')


%     Finished composite block 'Diode/Sign'.

set_param([sys,'/','Diode/Sign'],...
		'position',[120,117,150,143])

add_block('built-in/Outport',[sys,'/','Diode/out_1'])
set_param([sys,'/','Diode/out_1'],...
		'position',[395,120,415,140])

add_block('built-in/Inport',[sys,'/','Diode/in_1'])
set_param([sys,'/','Diode/in_1'],...
		'position',[70,120,90,140])
add_line([sys,'/','Diode'],[295,130;335,130])
add_line([sys,'/','Diode'],[95,130;100,90;245,90;245,125;265,125])
add_line([sys,'/','Diode'],[230,135;265,135])
add_line([sys,'/','Diode'],[95,130;100,180;170,180;170,140;190,140])
add_line([sys,'/','Diode'],[155,130;190,130])
add_line([sys,'/','Diode'],[370,130;390,130])
add_line([sys,'/','Diode'],[95,130;115,130])
set_param([sys,'/','Diode'],...
		'Mask Display','plot([0 2 2 2],[0 0 2 -2],[2 4],[2 0],[2 4],[-2 0],[4 4 4 6],[-2 2 0 0]);',...
		'Mask Type','二极管',...
		'Mask Dialogue','二极管')


%     Finished composite block 'Diode'.

set_param([sys,'/','Diode'],...
		'Font Name','宋体',...
		'Font Size',12,...
		'Drop Shadow',4,...
		'position',[120,283,155,307])

add_block('built-in/Note',[sys,'/','Y(t) = (A+X(t))*cos(Wc*t)'])
set_param([sys,'/','Y(t) = (A+X(t))*cos(Wc*t)'],...
		'Font Name','宋体',...
		'Font Size',12,...
		'position',[310,90,315,95])

add_block('built-in/Note',[sys,'/','已调信号'])
set_param([sys,'/','已调信号'],...
		'Font Name','宋体',...
		'Font Size',12,...
		'position',[265,120,270,125])

add_block('built-in/Note',[sys,'/','信号发送'])
set_param([sys,'/','信号发送'],...
		'Font Name','宋体',...
		'Font Size',12,...
		'position',[265,145,270,150])

add_block('built-in/Note',[sys,'/','通信信道'])
set_param([sys,'/','通信信道'],...
		'Font Name','宋体',...
		'Font Size',12,...
		'position',[205,220,210,225])

add_block('built-in/Note',[sys,'/','信号传输'])
set_param([sys,'/','信号传输'],...
		'Font Name','宋体',...
		'Font Size',12,...
		'position',[140,245,145,250])

add_block('built-in/Note',[sys,'/','信号接收'])
set_param([sys,'/','信号接收'],...
		'Font Name','宋体',...
		'Font Size',12,...
		'position',[65,295,70,300])

add_block('built-in/Note',[sys,'/','非同步调制//解调系统中的调制器——幅度调制'])
set_param([sys,'/','非同步调制//解调系统中的调制器——幅度调制'],...
		'Font Name','宋体',...
		'Font Size',12,...
		'position',[225,20,230,25])
add_line(sys,[415,295;445,295])
add_line(sys,[75,105;120,105])
add_line(sys,[100,105;100,55;445,55])
add_line(sys,[300,295;345,295])
add_line(sys,[160,295;185,295])
add_line(sys,[210,115;445,115])
add_line(sys,[235,115;235,245;75,245;75,295;115,295])
add_line(sys,[160,165;170,165;180,120])
add_line(sys,[80,165;100,165;100,115;120,115])
add_line(sys,[100,165;130,165])
add_line(sys,[160,110;180,110])
add_line(sys,[320,295;320,200;445,200])

drawnow

% Return any arguments.
if (nargin | nargout)
	% Must use feval here to access system in memory
	if (nargin > 3)
		if (flag == 0)
			eval(['[ret,x0,str,ts,xts]=',sys,'(t,x,u,flag);'])
		else
			eval(['ret =', sys,'(t,x,u,flag);'])
		end
	else
		[ret,x0,str,ts,xts] = feval(sys);
	end
else
	drawnow % Flash up the model and execute load callback
end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -