《数学软件》实验报告数值微积分与方程数值求解.docx
- 文档编号:26890712
- 上传时间:2023-06-23
- 格式:DOCX
- 页数:20
- 大小:70.51KB
《数学软件》实验报告数值微积分与方程数值求解.docx
《《数学软件》实验报告数值微积分与方程数值求解.docx》由会员分享,可在线阅读,更多相关《《数学软件》实验报告数值微积分与方程数值求解.docx(20页珍藏版)》请在冰豆网上搜索。
《数学软件》实验报告数值微积分与方程数值求解
附件二:
实验项目列表
序号
实验项目名称
成绩
指导教师
1
MATLAB运算基础
2
MATLAB矩阵分析与处理
3
选择结构程序设计
4
循环结构程序设计
5
函数文件
6
MATLAB的绘图操作
7
数据处理与多项式计算
8
数值微积分与方程数值求解
9
符号计算基础与符号微积分
10
总评
附件三:
实验报告(八)
系:
专业:
年级:
姓名:
学号:
实验课程:
实验室号:
_实验设备号:
实验时间:
指导教师签字:
成绩:
1.实验项目名称:
数值微积分与方程数值求解
2.实验目的和要求
1.掌握利数据统计和分析的方法
2.掌握数值插值与曲线拟合的方法及其应用
3.掌握多项式的常用运算
3.实验使用的主要仪器设备和软件
方正商祺N260微机;MATLAB7.0或以上版本
4.实验的基本理论和方法
(1)sym(x):
定义符号变量
(2)det(X):
矩阵行列式的值
(3)polyder(P):
多项式的导函数
(4)[l,n]=quad(‘fnsme’,a,b,tol,trace):
求定积分
(5)直接解法:
x=A\b
(6)矩阵分解求法:
[L,U]=lu(A);x=U\(L\b)
(7)迭代解法:
[x,n]=jacobi(A,b,[0,0,0,0]',1.0e-6)
(8)[x,y]=line_solution(A,b):
线性方程组的通解
(9)fzero(filename,x0,tol,trace):
单变量非线性方程求解
(10)fsolve(filename,x0,option):
非线性方程组的求解
(11)[x,fval]=fminbnd(filename,x1,x2,option):
求(x1,x2)区间的极小值点x和最小值fval
(12)[x,fval]=fminsearch(filename,x0,option):
基于单纯形算法求多元函数极小值点x和最小值fval
(13)[t,y]=ode45(filename,tspan,y0):
龙格-库塔法求微分方程的数值解
(14)subplot(m,n,p):
子图函数
(15)plot(x,y):
绘图函数
5.实验内容与步骤
(描述实验中应该做什么事情,如何做等,实验过程中记录发生的现象、中间结果、最终得到的结果,并进行分析说明)
(包括:
题目,写过程、答案)
题目:
1.求函数在指定点的数值导数
functionds
x=input('请输入x的值:
');
p=6*x^2
>>x=sym('x');
>>f=det([x,x.^2,x.^3;1,2.*x,3.*x.^2;0,2,6.*x])
f=
2*x^3
>>f=[2,0,0,0];
>>p=polyder(f)
p=
600
>>ds
请输入x的值:
1
p=
6
>>ds
请输入x的值:
2
p=
24
>>ds
请输入x的值:
3
p=
54
2.用数值方法求定积分
(1)
的近似值。
(2)
(1)
functionf=f(t)
f=sqrt(cos(t.^2)+4.*sin(2.*t.^2)+1);
>>I1=quad('f',0,2*pi)
I1=
7.07340251349918+3.00935981377888i
(2)
functiong=g(x)
g=log(1+x)./(1+x.^2);
>>I2=quad('g',0,1)
I2=
0.27219823480111
3.分别用3种不同的数值方法解线性方程组
functionjfcz
input('直接解法');
A=[6,5,-2,5;9,-1,4,-1;3,4,2,-2;3,9,0,2];
b=[-4,13,1,11]';
x=A\b
input('矩阵分解求解');
[L,U]=lu(A);
x=U\(L\b)
input('迭代解法');
[x,n]=jacobi(A,b,[0,0,0,0]',1.0e-6)
function[y,n]=jacobi(A,b,x0,eps)
ifnargin==3
eps=1.0e-6;
elseifnargin<3
error
return
end
D=diag(diag(A));
L=-tril(A,-1);
U=-triu(A,1);
B=D\(L+U);
f=D\b;
y=B*x0+f;
n=1;
whilenorm(y-x0)>=eps
x0=y;
y=B*x0+f;
n=n+1;
end
>>szqj
直接解法
x=
-3.8333
0.5000
14.2500
9.0000
矩阵分解求解
x=
-3.8333
0.5000
14.2500
9.0000
迭代解法
x=
1.0e+307*
-2.3556
-Inf
-Inf
-Inf
n=
601
4.求非齐次线性方程的通解
functiontj
A=[2,7,3,1;3,5,2,2;9,4,1,7];
b=[6,4,2]';
[x,y]=line_solution(A,b);
x,y
function[x,y]=line_solution(A,b)
[m,n]=size(A);
y=[];
ifnorm(b)>0
ifrank(A)==rank([A,b])
ifrank(A)==n
disp('方程有唯一解x');
x=A\b;
else
disp('原方程组有无穷个解,特解为x,其其次方程组的基础解系为y');
x=A\b;
y=null(A,'r');
end
else
disp('方程组无解');
x=[];
end
else
disp('原方程组有零解x');
x=zeros(n,1);
ifrank(A) disp('原方程组有无穷个解,基础解系为y'); y=null(A,'r'); end end >>tj 原方程组有无穷个解,特解为x,其其次方程组的基础解系为y Warning: Rankdeficient,rank=2,tol=8.6112e-015. >Inline_solutionat11 Intjat4 x= -0.1818 0.9091 0 0 y= 0.0909-0.8182 -0.45450.0909 1.00000 01.0000 所以方程的通解为: x=k1 +k2 + 5.求代数方程的数值解 (1) ,在 =1.5附近的根。 (2)在给定的初值 =1, =1, =1下,求方程组的数值解。 functionf=f1(x) f=3*x+sin(x)-exp(x); >>fzero('f1',1.5) ans= 1.8900 functionf=f2(p) x=p (1); y=p (2); z=p(3); f (1)=sin(x)+y.^2+log(z)-7; f (2)=3*x+z.^y-z.^3+1; f(3)=x+y+z-5; >>x=fsolve('f2',[1,1,1],optimset('Display','off')) x= 0.59512.39622.0087 6.求函数在指定区间的极值 (1) 在(0,1)内的最小值。 (2) 在[0,0]附近的最小值点和最小值。 functionf=fm1(x) f=(x.^3+cos(x)+x*log(x))/exp(x); >>fminbnd('fm1',0,1) Warning: Logofzero. >Infm1at2 Infminbndat176 ans= 0.5223 functionf=fm2(u) x1=u (1); x2=u (2); f=2.*(x1.^3)+4.*x1.*(x2.^3)-10.*x1.*x2+x2.^2; >>[U,fmin]=fminsearch('fm2',[0,0]) U= 1.00160.8335 fmin= -3.3241 7.求微分方程的数值解 functionydot=szj(x,y) ydot=[(5*y (1)-y (2))/x;y (1)]; >>[x,y]=ode45('szj',[-1,1],[0,0]) x= -1.0000 -0.9500 -0.9000 -0.8500 -0.8000 -0.7500 -0.7000 -0.6500 -0.6000 -0.5500 -0.5000 -0.4500 -0.4000 -0.3500 -0.3000 -0.2500 -0.2000 -0.1500 -0.1000 -0.0500 -0.0000 0.0500 0.1000 0.1500 0.2000 0.2500 0.3000 0.3500 0.4000 0.4500 0.5000 0.5500 0.6000 0.6500 0.7000 0.7500 0.8000 0.8500 0.9000 0.9500 1.0000 y= 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 8.求微分方程的数值解,并绘制解的曲线。 functiony=sz(x,y) y=[y (2)*y(3);-y (1)*y(3);-0.51*y (1)*y (2)]; >>[x,y]=ode45('sz',[0,1],[0,1,1]) x= 0 0.0001 0.0001 0.0002 0.0002 0.0005 0.0007 0.0010 0.0012 0.0025 0.0037 0.0050 0.0062 0.0125 0.0188 0.0251 0.0313 0.0563 0.0813 0.1063 0.1313 0.1563 0.1813 0.2063 0.2313 0.2563 0.2813 0.3063 0.3313 0.3563 0.3813 0.4063 0.4313 0.4563 0.4813 0.5063 0.5313 0.5563 0.5813 0.6063 0.6313 0.6563 0.6813 0.7063 0.7313 0.7563 0.7813 0.8063 0.8313 0.8563 0.8813 0.9063 0.9313 0.9485 0.9657 0.9828 1.0000 y= 01.00001.0000 0.00011.00001.0000 0.00011.00001.0000 0.00021.00001.0000 0.00021.00001.0000 0.00051.00001.0000 0.00071.00001.0000 0.00101.00001.0000 0.00121.00001.0000 0.00251.00001.0000 0.00371.00001.0000 0.00501.00001.0000 0.00621.00001.0000 0.01250.99991.0000 0.01880.99980.9999 0.02510.99970.9998 0.03130.99950.9997 0.05630.99840.9992 0.08120.99670.9983 0.10600.99440.9971 0.13080.99140.9956 0.15540.98790.9938 0.17990.98370.9917 0.20420.97890.9893 0.22830.97360.9866 0.25220.96770.9836 0.27590.96120.9804 0.29930.95420.9769 0.32250.94660.9731 0.34530.93850.9691 0.36790.92990.9649 0.39020.92070.9604 0.41210.91110.9557 0.43370.90100.9508 0.45500.89050.9457 0.47580.87950.9405 0.49630.86810.9351 0.51640.85630.9295 0.53610.84410.9238 0.55540.83160.9180 0.57430.81870.9120 0.59270.80540.9060 0.61080.79180.8999 0.62840.77790.8937 0.64550.76370.8874 0.66230.74930.8811 0.67850.73460.8748 0.69440.71960.8684 0.70980.70440.8620 0.72470.68900.8556 0.73930.67340.8493 0.75330.65760.8429 0.76700.64170.8367 0.77610.63060.8324 0.78500.61950.8281 0.79370.60830.8238 0.80220.59710.8196 >>subplot(1,3,1); >>plot(x,y(: 1)) >>subplot(1,3,2); >>plot(x,y(: 2)) >>subplot(1,3,3); >>plot(x,y(: 3)) 6.实验心得(质疑、建议) (说明实验过程中遇到的问题及解决办法;新发现或个人的收获;未解决/需进一步研讨的问题或建议新实验方法等) 这次的实验,主要是对数值微积分与方程组的求解函数的应用。 在做题时,遇到不少问题。 开头的几道题目都是直接调用函数就能得出答案。 但在后面的几道题目中,让我花了不少时间。 尤其是求微分方程的数值解的题目。 开始时,我先研究书上习题的解答,不是很明白它的算法的思路,后来直接将书上的程序用MATLAB运行,结果发现对于书上那道二阶微分的题目,运算出错,让我更加不明白它的思路到底是什么样的。 后来,通过仔细看书,发现书本是将其降阶,化为一阶微分方程。 因为龙格-库塔函数只能解决一阶微分方程的数值解问题。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数学软件 数学 软件 实验 报告 数值 微积分 方程 求解