MATLAB 作业

合集下载

matlab作业

matlab作业

实验三某厂利用a、b、c三种原料生产A、B、C三种产品,已知生产每种产品在消耗原料方面的各项技术条件和单位产品的利润,以及可利用的各种原料的量,是制定适当的生产规划使得该厂的总利润最大。

对于这个问题,可先将该问题转化为数学模型。

Z=2x1+4x2+3x3X1+3x2+2x3<=802x1+x2+2x3<=403x1+4x2+2x3<=60X1,x2,x3>=0据此可以画出图形,可依靠图形来求出Z的最大值。

c=[-2 -4 -3]A=[1 3 2;2 1 2;3 4 2]b=[60 40 80]lb=[0 0 0][x,f,exitflag,output]=linprog(c,A,b,[],[],lb,[])将上述程序输入matlab。

就可得出结果。

结果如下:x =4.000012.000010.0000f =-86.0000exitflag =1output =iterations: 7cgiterations: 0algorithm: 'lipsol'由上述结果可以知道当A、B、C分别生产4,12,10 公斤时,总利润最大,可达到86。

某工厂生产甲、乙、丙三种产品,单位产品所需工时分别为2、3、1个;单位产品所需原料分别为3、1、5公斤;单位产品利润分别为2、3、5元。

工厂每天可利用的工时为12个,可供应的原料为15公斤。

为使总利润为最大,试确定日生产计划和最大利润。

对于这个问题,可先将该问题转化为数学模型。

Z=2x+3y+5z2x+3y+z<=123x+y+5z<=15据此可以画出图形,可依靠图形来求出Z的最大值。

c=[-2 -3 -5]A=[2 3 1;3 1 5]b=[12;15]lb=[0 0 0][x,Z,exitflag,output]=linprog(c,A,b,[],[],lb,[])将上述程序输入matlab。

就可得出结果。

Matlab大作业

Matlab大作业

Matlab的基本操作一、使用函数实现对下列矩阵的左旋和右旋以及反转已知答案:如图:矩阵如图矩阵的左旋如图一矩阵的右旋如图二矩阵的左右反转如图三矩阵的上下反转如图四二、已知A=[8 9 5 ] B=[-1 3 -2][36 -7 11] [2 0 3][21 -8 5] [-3 1 9 ]计算:1)A+5*B;2)A*B和A.*B3)A^3和A.^34)A/B和B\A5)[A,B]答案:A=[8 9 5;36 -7 11;21 -8 5];B=[-1 3 -2;2 0 3;-3 1 9];A+5*BA*BA.*BA^3A.^3A/BA\B[A,B]程序运行结果如下:第二章、Matlab程序设计一、已知S=1+2+22+23+…+263求S的值答案:代码如下:ClearClcs=0,j=2for i=1:63s=s+j^iends程序运行结果如下:二、第三章、Matlab绘图一、在同一坐标系中画出下列函数的图像:x2,-x2,xsin(x)在[0,2π]上的函数图像程序代码如下:clearclcx=0:pi/100:2*pi;y1=x.^2;y2=-x.^2;y3=x.*sin(x);title('同一坐标下的函数图像')plot(x,y1,':',x,y2,'h',x,y3,'--')程序运行结果如下:二、绘制极坐标图像:程序代码如下:clearclcx=0:0.01:2*pi;y=2*cos(2*(x-pi/8));title('极坐标图像')xlabel('x')ylabel('y')polar(x,y)程序运行结果如下:第四章、Matlab符号运算一、求函数y=e-x2 的傅立叶变换及其逆变换程序代码如下:clearclcsyms x t;y=exp(-x^2);Ft=fourier(y,x,t)fx=ifourier(Ft,t,x)程序运行结果如下:二、求下列极限值:答案:1、程序代码:clearclcsyms x;s1=sin(2*x)/sin(5*x);limit(s1,x,0)s2=(1+1/x)^(2*x);limit(s2,x,inf)程序运行结果如下:第五章、Matlab数值运算一、建立一个3*4阶随机矩阵,求矩阵的最大值、最小值、方差和标准差、极差、协方差,和自相关阵程序代码如下:clearclcA=rand(3,4)B=var(A)C=std(A)D=range(A)E=cov(A)F=corrcoef(A)程序运行结果如下:二、求函数f(x)=x3-2x+1在x=[-1 1]之间的极小值和x=-1附近的零点程序代码如下:clearclc[x,y]=fminbnd('x.^3-2.*x+1',-1,1)[x,y]=fzero('x.^3-2.*x+1',-1)程序运行结果如下:第六章、Matlab图形用户界面一、建立一个具有三个输入框的窗口对话框程序代码如下:clearclcprompt={'姓名','年龄','班级'};DTitle='注册学生信息';line[1;1;1];def{'乔阳','18','100412105'};info=inputdlg(prompt,DTitle,line,def,'ON')程序运行结果如下:二、设计一个表现下载进度的进度条程序代码如下:clearclch = waitbar(0,'正在下载,请稍等……');for i=1:1000waitbar(i/10000,h)endclose(h)程序运行结果如下:第七章、Matlab Simulink 仿真一、仿真信号x(t)=sin(t)sin(10t)的波形仿真步骤:1.建立模型窗口:生成无标题(intitled)的模型窗口;2.添加信号源模块(sine)、输出模块(scope)、数学模块(Dot product)3.设置模块参数:如下图:4.编辑模块即将各个模块连接起来。

matlab1-8章课后作业

matlab1-8章课后作业

MATLAB基础教程1~8章作业Matlab第一章1.阐述Matlab的功能Matlab作为一种高级计算软件,是进行算法开发、数据可视化、数据分析以及数值计算的交互式应用开发环境,已被广泛应用于不同领域。

Matlab的基本功能包括:数学计算功能、图形化显示功能、M语言编程功能、编译功能、图形用户界面开发功能、Simulink建模仿真功能、自动代码生成功能。

Matlab第二章1.创建double的变量,并进行计算。

(1)a=87,b=190,计算a+b、a-b、a*b。

(2)创建uint8 类型的变量,数值与(1)中相同,进行相同的计算。

>> a=87,b=190a =87b =190>> a+bans =277>> a-bans =-103>> a*bans =16530>> c=uint8(87), d=uint8(190)c =87d =190>> c+dans =255>> c-dans =>> c*dans =2552.计算(1)sin(60)(2)e^3(3)cos(3π/4)>> sind(60)ans =0.8660>> exp(3)ans =20.0855>> cos(3*pi/4)ans =-0.70713.设u=2,v=3,计算:(1)(2)(3)>> u=2;>> v=3;>> 4*u*v/log(v)ans =21.8457>> (exp(u)+v)^2/(v^2-u)ans =15.4189>> sqrt(u-3*v)/(u*v)ans =0 + 0.4410i4.计算如下表达式:(1)(2)>> (3-5*i)*(4+2*i)ans =22.0000 -14.0000i>> sin(2-8*i)ans =1.3553e+003 +6.2026e+002i5.判断下面语句的运算结果。

MATLAB作业4-1

MATLAB作业4-1

MATLAB作业4-1MATLAB 作业41、⽤2sin(103)y t =+在(0,3)区间内⽣成⼀组较稀疏的数据,并⽤⼀维数据插值的⽅法对给出的数据进⾏曲线拟合,并将结果与理论曲线相⽐较。

解:2、⽤242231(,)sin()3x y f x y e xy x y x y--=++原型函数⽣成⼀组⽹络数据或随机数据,分别拟合出曲⾯,并和原曲⾯进⾏⽐较。

解:⽹格数据:随机数据:x∈-区间内的光滑函数曲线,⽐较各种插值算法3、假设已知⼀组数据,试⽤插值⽅法绘制出(2,4.9)>> x=[-2,-1.7,-1.4,-1.1,-0.8,-0.5,-0.2,0.1,0.4,0.7,1,1.3,...1.6,1.9,2.2,2.5,2.8,3.1,3.4,3.7,4,4.3,4.6,4.9];y=[0.10289,0.11741,0.13158,0.14483,0.15656,0.16622,0.17332,...0.1775,0.17853,0.17635,0.17109,0.16302,0.15255,0.1402,...0.12655,0.11219,0.09768,0.08353,0.07019,0.05786,0.04687,...0.03729,0.02914,0.02236];解:x y在(0.1,0.1)~(1.1,1.1)区域内的点进⾏插值,并⽤三维曲⾯4、假设已知实测数据由下表给出,试对(,)>> [x,y]=meshgrid(0.1:0.1:1.1);z=[0.83041,0.82727,0.82406,0.82098,0.81824,0.8161,0.81481,0.81463,0.81579,0.81853,0.82304 ;0.83172,0.83249,0.83584,0.84201,0.85125,0.86376,0.87975,0.89935,0.92263,0.94959,0.9801; 0.83587,0.84345,0.85631,0.87466,0.89867,0.9284,0.96377,1.0045,1.0502,1.1,1.1529;0.84286,0.86013,0.88537,0.91865,0.95985,1.0086,1.0642,1.1253,1.1904,1.257,1.3222;0.85268,0.88251,0.92286,0.97346,1.0336,1.1019,1.1764,1.254,1.3308,1.4017,1.4605;0.86532,0.91049,0.96847,1.0383,1.118,1.2046,1.2937,1.3793,1.4539,1.5086,1.5335;0.88078,0.94396,1.0217,1.1118,1.2102,1.311,1.4063,1.4859,1.5377,1.5484,1.5052;0.89904,0.98276,1.082,1.1922,1.3061,1.4138,1.5021,1.5555,1.5573,1.4915,1.346;0.92006,1.0266,1.1482,1.2768,1.4005,1.5034,1.5661,1.5678,1.4889,1.3156,1.0454;0.94381,1.0752,1.2191,1.3624,1.4866,1.5684,1.5821,1.5032,1.315,1.0155,0.62477;0.97023,1.1279,1.2929,1.4448,1.5564,1.5964,1.5341,1.3473,1.0321,0.61268,0.14763];解:5、习题3和4给出的数据分别为⼀元数据和⼆元数据,试⽤分段三次样条函数和B样条函数对其进⾏拟合。

MATLAB作业

MATLAB作业

MATLAB作业⼀、必答题:1. MATLAB系统由那些部分组成?答:MATLAB系统主要由开发环境、MATLAB语⾔、MATLAB数学函数库、图形功能和应⽤程序接⼝五个部分组成。

2. 如何启动M⽂件编辑/调试器?答:在操作界⾯上选择“建⽴新⽂件”或“打开⽂件”操作时,M⽂件编辑/调试器将被启动。

在命令窗⼝中键⼊“edit”命令也可以启动M⽂件编辑/调试器。

3. 存储在⼯作空间中的数组能编辑吗?如何操作?答:存储在⼯作空间的数组可以通过数组编辑器进⾏编辑:在⼯作空间浏览器中双击要编辑的数组名打开数组编辑器,再选中要修改的数据单元,输⼊修改内容即可。

4. 在MATLAB中有⼏种获得帮助的途径?答:在MATLAB中有多种获得帮助的途径:(1)帮助浏览器:选择view菜单中的Help菜单项或选择Help菜单中的MATLAB Help菜单项可以打开帮助浏览器;(2)help命令:在命令窗⼝键⼊“help” 命令可以列出帮助主题,键⼊“help 函数名”可以得到指定函数的在线帮助信息;(3)lookfor命令:在命令窗⼝键⼊“lookfor 关键词”可以搜索出⼀系列与给定关键词相关的命令和函数(4)模糊查询:输⼊命令的前⼏个字母,然后按Tab键,就可以列出所有以这⼏个字母开始的命令和函数。

5. 有⼏种建⽴矩阵的⽅法?各有什么优点?答:(1)以直接列出元素的形式输⼊;(2)通过语句和函数产⽣;(3).在m⽂件中创建矩阵;(4)从外部的数据⽂件中装⼊。

6. 命令⽂件与函数⽂件的主要区别是什么?答:命令⽂件: M⽂件中最简单的⼀种,不需输出输⼊参数,⽤M ⽂件可以控制⼯作空间的所有数据。

运⾏过程中产⽣的变量都是全局变量。

运⾏⼀个命令⽂件等价于从命令窗⼝中顺序运⾏⽂件⾥的命令,程序不需要预先定义,只要依次将命令编辑在命令⽂件中即可。

函数⽂件:如果M⽂件的第⼀个可执⾏⾏以function开始,便是函数⽂件,每⼀个函数⽂件定义⼀个函数。

MATLB实验作业

MATLB实验作业

实验一MATLAB运算基础1、用逻辑表达式求下列分段函数的值。

t=0:0.5:2.5y=t.^2.*((t>=0)&(t<1))+(t.^2-1).*(( t>=1)&(t<2))+(t.^2-2*t+1).*((t>=2 )&(t<3))2、求[100,999]之间能被21整除的数的个数。

p=rem([100:999],21)==0;sum(p)3、建立一个字符串向量,删除其中的大写字母。

ch='KdDdfKaWdsfCI',k=find(ch>=' A'&ch<='Z'),ch(k)=[]4、输入矩阵,并找出A中大于或等于5的元素。

A=[1 2 3;4 5 6;7 8 9],[m,n]=find(A>=5),for j=1:length(m)x(j)=A(m(j),n(j))xend5、求矩阵的行列式值、逆和特征根。

a11=input('a11='),a12=input('a12 ='),a21=input('a21='),a22=input('a22 ='),A=[a11,a12;a21,a22],DA=det(A),IA=inv(A),EA=eig(A) 6、不采用循环的形式求出和式的数值解。

sum(2.^[0:63])实验二1、1行100列的Fibonacc数组a,a(1)=a(2)=1,a(i)=a(i-1)+a(i-2),用for循环指令来寻求该数组中第一个大于10000的元素,并指出其位置i。

n=100;a=ones(1,n);for i=3:na(i)=a(i-1)+a(i-2);if a(i)>10000a(i),break;end;end,i2、编写M脚本文件,定义下列分段函数,并分别求出当()、()和()时的函数值。

MATLAB基础训练作业

MATLAB基础训练作业

实验一 MATLAB 工作环境熟悉及简单命令的执行一、实验目的:熟悉MATLAB 的工作环境,学会使用MATLAB 进行一些简单的运算。

二、实验内容:MATLAB 的启动和退出,熟悉MATLAB 的桌面(Desktop ),包括菜单(Menu )、工具条 (Toolbar )、命令窗口(Command Window)、历史命令窗口、工作空间(Workspace)等;完成一些基本的矩阵操作;学习使用在线帮助系统。

三、实验步骤:1、启动MATLAB ,熟悉MATLAB 的桌面。

2、在命令窗口执行命令完成以下运算,观察workspace 的变化,记录运算结果。

(1)(365-52?2-70)?3(2)>>area=pi*^2(3)已知x=3,y=4,在MATLAB 中求z :()232y x y x z -= (4)将下面的矩阵赋值给变量m1,在workspace 中察看m1在内存中占用的字节数。

m1=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡11514412679810115133216 执行以下命令>>m1( 2 , 3 )>>m1( 11 )>>m1( : , 3 )>>m1( 2 : 3 , 1 : 3 )>>m1( 1 ,4 ) + m1( 2 ,3 ) + m1( 3 ,2 ) + m1( 4 ,1)(5)执行命令>>help abs查看函数abs 的用法及用途,计算abs( 3 + 4i )(6)执行命令>>x=0::6*pi;>>y=5*sin(x);>>plot(x,y)(6)运行MATLAB 的演示程序,>>demo ,以便对MATLAB 有一个总体了解。

四、思考题1、以下变量名是否合法为什么(1)x2(2)3col(3)_row(4)for2、求以下变量的值,并在MATLAB 中验证。

Matlab习题及答案

Matlab习题及答案

现代计算方法Matlab 作业答案1.绘出函数f(x)=sin x x ,在[0,4]上的图形解:在M 文件输入:x=0:pi/100:4;y=x.*sin(x);plot(y)运行2. 求3x +2x +5 = 0的根解:在命令窗口输入:>> solve('x^3+2*x+5=0')ans =((108^(1/2)*707^(1/2))/108 - 5/2)^(1/3) - 2/(3*((108^(1/2)*707^(1/2))/108 - 5/2)^(1/3))1/(3*((108^(1/2)*707^(1/2))/108 - 5/2)^(1/3)) - ((108^(1/2)*707^(1/2))/108 - 5/2)^(1/3)/2 -(3^(1/2)*i*(2/(3*((108^(1/2)*707^(1/2))/108 - 5/2)^(1/3)) + ((108^(1/2)*707^(1/2))/108 -5/2)^(1/3)))/21/(3*((108^(1/2)*707^(1/2))/108 - 5/2)^(1/3)) - ((108^(1/2)*707^(1/2))/108 - 5/2)^(1/3)/2 +(3^(1/2)*i*(2/(3*((108^(1/2)*707^(1/2))/108 - 5/2)^(1/3)) + ((108^(1/2)*707^(1/2))/108 -5/2)^(1/3)))/23.321436min x x x z ++=120..321=++x x x t s301≥x5002≤≤x203≥x解:运用单纯形法计算此题,首先把约束条件化成标准形式:,,,,,205030120654321635241321≥=-=+=-=++x x x x x x x x x x x x x x x(1)在M 文件输入SimpleMthd 函数:function [x,minf] = SimpleMthd(A,c,b,baseVector)sz = size(A);nVia = sz(2);n = sz(1);xx = 1:nVia;nobase = zeros(1,1);m = 1;for i=1:nViaif (isempty(find(baseVector == xx(i),1)))nobase(m) = i;m = m + 1;else;endendbCon = 1;M = 0;while bConnB = A(:,nobase);ncb = c(nobase);B = A(:,baseVector);cb = c(baseVector);xb = inv(B)*b;f = cb*xb;w = cb*inv(B);for i=1:length(nobase)sigma(i) = w*nB(:,i)-ncb(i);end[maxs,ind] = max(sigma);if maxs <= 0minf = cb*xb;vr = find(c~=0 ,1,'last');for l=1:vrele = find(baseVector == l,1);if (isempty(ele))x(l) = 0;elsex(l)=xb(ele);endendbCon = 0;elsey = inv(B)*A(:,nobase(ind));if y <= 0disp('不存在最优解!');x = NaN;minf = NaN;return;elseminb = inf;chagB = 0;for j=1:length(y)if y(j)>0bz = xb(j)/y(j);if bz<minbminb = bz;chagB = j;endendendtmp = baseVector(chagB);baseVector(chagB) = nobase(ind);nobase(ind) = tmp;endendM = M + 1;if (M == 1000000)disp('找不到最优解!');x = NaN;minf = NaN;return;endend(2)在命令窗口输入:clear allA=[1 1 1 0 0 0;1 0 0 -1 0 0;0 1 0 0 1 0;0 0 1 0 0 -1];c=[6 3 4 0 0 0];b=[120;30;50;20];[xm,mf]=SimpleMthd(A,c,b,[3 4 5 6])xm =0 50 70mf =4304.计算下面函数在区间(0,1)内的最小值。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.求解方程组sin(x-y)=0,cos(x-y)=0写出求解的MATLAB程序?(写出求解的MATLAB的程序,采用solve命令)
答案
>> [x,y]=solve('sin(x-y)=0','cos(x+y)=0','x','y')
x =
-1/4*pi
1/4*pi
y =
-1/4*pi
1/4*pi
2.设3x’’-5x’+6x=y,x(0)=3,x’(0)=0,求y(5)的值?(写出求解该微分方程的MATLAB程序,用dsolve命令)
%ex1_9.m
f='3*D2x-5*x+6*x-y=0';x=dsolve(f,'Dx(0)=0,x(0)=0','y')
%ex1_10.m
y=solve('-sin(1/3*3^(1/2)*y)*3^(1/2)+y-x=0','x=5','x','y')
x =
-sin(1/3*3^(1/2)*y)*3^(1/2)+y
y =
x: [1x1 sym]
y: [1x1 sym]
3.
1 3 5 7
A= 9 2 4 6 求B=A^T,C=A^-1,用for循环
8 10 3 5
求解A各元素的和,以及A中的最小元
答案
>> A=[1 3 5 7;9 2 4 6;8 10 3 5],B=A'
A =
1 3 5 7
9 2 4 6
8 10 3 5
B =
1 9 8
3 2 10
5 4 3
7 6 5
%ex1_5.m
s=0
m=A(1,1)
for i=1:3
for j=1:4
if ( A(i,j)<=m ) ;
m=A(i,j)
end
s=s+A(i,j)
end
end
m
s
m=1
s=63
实验一 MATLAB 语言的控制语句
实验学时: 2 学时
实验目的:
1、了解MATLAB 语言的体系结构及MATLAB 语言的特点;
2、掌握MATLAB 循环语句、条件转移语句等的使用方法,能编写相应程序实现所需功能。

实验内容:
一、使用 for 循环、while 循环计算6302i i k ==

1、for 循环
确定循环变量的起始值、终止值;
编写循环语句组,实现所需功能;
运行程序,并记录结果。

2、while 循环
确定循环的条件表达式;
编写循环语句组,实现所需功能;
运行程序,并记录结果。

二、采用搜寻法寻找矩阵23121416524332372148656166
646463A ⎡⎤⎢⎥⎢⎥=⎢⎥⎢⎥⎣⎦
中最小的元素,以及它的位置。

实验报告:
要求给出相应的程序完成实验内容,并给出程序运行结果。

答案
%ex1_7.m
s=0
for i=1:63
s=s+2^i
end
my=0;j=1
while(j<=63)
j=j+1; my=my+2^j
end
A=[23 12 14 16;52 43 32 37;21 48 65 61;66 64 64 63]
min=A(1,1)
for k=1:4
for m=1:4
if A(k,m)<=min
min=A(k,m)
end
end
end
结果s = 1.8447e+019
my =3.6893e+019
min =12
实验二建立MATLAB文本文件
实验学时:2 学时
实验目的:
1、掌握MATLAB 的基本操作,编写满足要求的m 文件。

2、掌握MATLAB 的图形绘制方法。

实验内容:
绘制正弦曲线和余弦曲线。

1、新建m 文件,并对文件进行命名,名字为figure.m。

2、编写m 文件内容:
绘制正弦曲线,取值范围为[0,2]π,以0.1为步长;
绘制余弦曲线,取值范围为[0,2]π,以0.1为步长;
正弦曲线为红色,余弦曲线为蓝色,线宽为2;
要求将图形分割成31⨯个部分,第一个图为正弦曲线,第二个为余弦曲线,第三章为正弦曲线和余弦曲线在一个图内。

3、在命令窗口调用m 文件,运行程序。

实验报告:
要求给出相应的程序完成实验内容。

答案
%figure.m
subplot(3,1,1)
x=0:0.1:2*pi;plot(x,sin(x),'-r','linewidth',2)
subplot(3,1,2)
plot(x,cos(x),'-b','linewidth',2)
subplot(3,1,3)
plot(x,sin(x),'-r',x,cos(x),'-b','linewidth',2)
实验三 控制系统数学模型的表达和转换
实验学时: 2 学时
实验目的:
1、了解控制系统不同的数学模型表示方法;
2、实现不同数学模型间的转换。

实验内容:
若给定系统的传递函数为:
32432()612610()()231
Y s s s s G s U s s s s s +++==++++ 1、将其在MATLAB 工作空间中表示,并显示出来;
2、将其转换成零极点形式;
3、将其转换成状态空间形式;
4、将其转换成部分分式形式。

答案
%ex1_10.m
num=[6 12 6 10];den=[1 2 3 1 1];printsys(num,den)
[Z,P,K]=tf2zp(num,den)
[A,B,C,D]=tf2ss(num,den)
[R,P,H]=residue(num,den)
结果num/den =
6 s^3 + 12 s^2 + 6 s + 10
----------------------------
s^4 + 2 s^3 + 3 s^2 + s + 1 Z =
-1.9294
-0.0353 + 0.9287i
-0.0353 - 0.9287i
P =
-0.9567 + 1.2272i
-0.9567 - 1.2272i
-0.0433 + 0.6412i
-0.0433 - 0.6412i
K = 6
A =
-2 -3 -1 -1
1 0 0 0
0 1 0 0
0 0 1 0
B =
1
C =
6 12 6 10
D = 0
R =
3.4447 - 1.7233i
3.4447 + 1.7233i
-0.4447 - 1.8113i
-0.4447 + 1.8113i
P =
-0.9567 + 1.2272i
-0.9567 - 1.2272i
-0.0433 + 0.6412i
-0.0433 - 0.6412i
H =
[]
控制系统模型的连接
实验学时:2 学时
实验目的:
1、掌握MATLAB 控制工具箱,实现不同数学模型间的转换。

实验内容:
已知系统方框图,求系统的传递函数。

1、求取系统传递函数。

通过series 函数实现子系统间的串联连接;
通过feedback 实现子系统间的反馈连接;
通过series 函数实现子系统间的串联连接;
通过feedback 函数或者cloop 函数实现子系统间的单位反馈连接。

将系统总的传递函数在MATLAB工作空间中表示出来。

实验报告:要求给出相应的程序完成实验内容,并给出程序运行结果。

答案%ex1_11.m
num1=[10];den1=[1 1];num2=[1];den2=[2 0.5];
num3=[540];den3=[1];num4=[0.1];den4=[1];
[na,da]=series(num1,den1,num2,den2);
[nb,db]=feedback(na,da,num4,den4);
[nc,dc]=series(num3,den3,nb,db);
[num,den]=cloop(nc,dc,-1);printsys(num,den)
结果num/den =
5400
----------------------
2 s^2 + 2.5 s + 5401.5。

相关文档
最新文档