资源描述:
《重庆大学 数学实验 方程求解.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、重庆大学学生实验报告实验课程名称数学实验开课实验室DS1402学院UC联合学院年级2014专业班电气一学生姓名谭浩彬学号开课时间2014至2015学年第二学期总成绩教师签名数学与统计学院制开课学院、实验室:实验时间:年月日课程名称数学实验实验项目名称求解方程实验项目类型验证演示综合设计其他指导教师龚劬成绩实验目的[1]复习求解方程及方程组的基本原理和方法;[2]掌握迭代算法;[3]熟悉MATLAB软件编程环境;掌握MATLAB编程语句(特别是循环、条件、控制等语句);[4]通过范例展现求解实际问题的初步建模过程;通过该实验的学习,复习
2、和归纳方程求解或方程组求解的各种数值解法(简单迭代法、二分法、牛顿法、割线法等),初步了解数学建模过程。这对于学生深入理解数学概念,掌握数学的思维方法,熟悉处理大量的工程计算问题的方法具有十分重要的意义。实验内容1.方程求解和方程组的各种数值解法练习2.直接使用MATLAB命令对方程和方程组进行求解练习3.针对实际问题,试建立数学模型,并求解。基础实验2.将方程x5+5x3-2x+1=0改写成各种等价的形式进行迭代,观察迭代是否收敛,并给出解释。首先先观察其本身图像:x1=-3:0.01:3;x2=-0.8:0.01:-0.75;y1
3、=x1.^5+5*x1.^3-2*x1+1;y2=x2.^5+5*x2.^3-2*x2+1;subplot(2,2,1),plot(x1,y1),title('原图'),gridon,subplot(2,2,2),plot(x2,y2),title('放大'),gridon所以解在-0.76—-0.77之间构造迭代函数:用matlab实现如下:x(1)=-0.77;y(1)=-0.77;fori=2:20x(i)=(x(i-1)^5+5*x(i-1)^3+1)/2;y(i)=(-y(i-1)^5+2*y(i-1)-1)/(5*y(i-
4、1)^2);endk=1:20subplot(2,2,1),plot(k,x),title('f(1)');subplot(2,2,2),plot(k,y),title('f(2)');如图:经观察发现不收敛。设定迭代函数为:初始值设置为0.75观察发现收敛。3.求解下列方程组直接使用MATLAB命令:solve()和fsolve()对方程组求解。(1)symsxy[x,y]=solve('2*x-y-exp(-x)=0','2*y-x-exp(-y)=0','x','y')显示如下:x=0.5671y=0.5671(2)symsx1
5、x2x3symsx1x2x3[x1,x2,x3]=solve('x1^2-5*x2^2+7*x3^2+12','3*x1*x2+x1*x3-11*x1=0','2*x2*x3+40*x1=0','x1','x2','x3');x1=double(x1),x2=double(x2),x3=double(x3)显示如下:x1=1.0e+002*00000.0100-0.0031-3.8701-0.3270i-3.8701+0.3270ix2=-1.54921.5492005.00002.9579-0.3123+50.8065i-0.312
6、3-50.8065ix3=1.0e+002*000+0.0131i0-0.0131i-0.04000.02130.1194-1.5242i0.1194+1.5242i4.编写用二分法求方程根的函数M文件。主函数代码如下:m=input('m=');n=input('n=');y1=feval('fun3',m);y2=feval('fun3',n);k=(m+n)/2;y3=feval('fun3',k);while(y3>0.00001)if(y3*y1<0)n=k;elsem=k;endy1=feval('fun3',m);y2=
7、feval('fun3',n);k=(m+n)/2;y3=feval('fun3',k);enddisp('TheAnswerIs:'),y3fun3.m文件代码如下:functionf=fun3(x)f=exp(x)-0.9;7.使用fsolve计算方程组的解时,为验证初值是否对解有影响,采用随机产生的100组随机数作为初始值,依次进行求解。建立一个名为f的M文件,用于存放输入函数组functionFangcheng=f(x)Fangcheng=[x(1)+x(2)^2-13;log(2*x(1)+x(2))-x(1)^x(2)+2
8、];主函数A=rand(100,2)*5;forn=1:100a=[A(n,1)A(n,2)]f1=fsolve('f',a);x1=f1(1)x2=f1(2)end答案:第几次ax1x212.44003.41231.4