控制工程中的程序设计..docx

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《控制工程中的程序设计》 大作业 班级: 学号: 姓名: 2015 年 5 月 1 日 1. (20分)考虑以下迭代公式: 其中a、b为正数,要求: 编写程序求迭代的结果,迭代的终止条件为|xn+1-xn|≤10-5,迭代初值x0=1.0,迭代次数不超过500次。 如果迭代过程收敛于r,那么r的准确值是,当(a,b)的值取(1,1)、(8,3)、(10,0.1)时,分别对迭代结果和准确值进行比较。 a=input(a=); %输入a的值 b=input(b=); %输入b的值 x=1.0; %迭代变量,确定初值 n=0;%初始迭代次数 while abs(x-a/(b+x))1e-5 %终止条件 if n=500 %迭代次数限制 x=a/(b+x); n=n+1; end end n x r(1)=(-b+sqrt(b*b+4*a))/2 r(2)=(-b-sqrt(b*b+4*a))/2 %输出r的准确值 s=r-x %迭代结果和准确值进行比较 实验结果: 1. a=1 b=1 n = 12 x = 0.6180 r = 0.6180 -1.6180 r = 0.6180 -1.6180 s = -0.0000 -2.2361 2. a=8 b=3 n = 12 x = 1.7016 r = 1.7016 -1.6180 r = 1.7016 -4.7016 s = 0.0000 -6.4031 3. a=10 b=0.1 n = 423 x = 3.1127 r = 3.1127 -4.7016 r = 3.1127 -3.2127 s = -0.0000 -6.3254 2. (15分)一系统可用下列方程组来表示: 从键盘输入m1、m2和θ的值,求a1、a2、N1和N2的值。其中g取9.8,输入θ时以角度为单位。 要求:定义一个求解线性方程组AX=B的函数文件,然后在命令文件中调用该函数文件。 函数fc.M文件: function X= fc(A,B) %fc fc是求解线性方程的函数 %A A是未知矩阵的系数矩阵 X=A\B; 命令M文件: clc; m1=input(m1=);%输入m1的值 m2=input(m2=);%输入m2的值 theta=input(theta=);输入theta的值 x=theta*pi/180; g=9.8 A=[m1*cos(x) -m1 -sin(x) 0 m1*sin(x) 0 cos(x) 0 0 m2 -sin(x) 0 0 0 -cos(x) 1];%输入矩阵A B=[0;m1*g;0;m2*g]; %输入矩阵B X=fc(A,B) 实验结果: m1=1 m2=1 theta=30 X = 7.8400 3.3948 6.7896 15.6800 3. (20分) 绘制极坐标曲线ρ=a*sin(b+nθ),并分析参数a、b、n对曲线形状的影响。 theta=0:pi/100:2*pi; a=input(输入a=); %输入a的值 b=input(输入b=); %输入b的值 n=input(输入n=); %输入n的值 rho=a*sin(b+n*theta);%极半径 polar(theta,rho,r)%绘制二维极坐标图形。 采用控制变量法的办法,固定两个参数,变动第三个参数观察输出图象的变化。 结果: a=b=n=2 a=b=n=3 a=b=c=4 a=2,b=3,c=2 a=2,b=4,c=2 a=2,b=5,c=2 a=3,b=2,c=2 a=4,b=2,c=2 a=5,b=2,c=2 分析结果: 由这9个图知道, 当a,n固定时,图形的形状也就固定了,b只影响图形的旋转的角度; 当a,b固定时,n只影响图形的扇形数,特别地,当n是奇数时,扇叶数就是n,当是偶数时,扇叶数则是2n个; 当b,n固定时,a影响的是图形大小,特别地,当a是整数时,图形半径大小就是a。 4. (15分)若一个数等于它的各个真因子之和,则称该数为完数,如 6=1+2+3,所以6是完数。求[1,500]之间的全部完数。 for m=1:500 sum=0; %sum初始化

文档评论(0)

586334000 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档