现代数值分析.docx
《现代数值分析.docx》由会员分享,可在线阅读,更多相关《现代数值分析.docx(11页珍藏版)》请在冰点文库上搜索。
![现代数值分析.docx](https://file1.bingdoc.com/fileroot1/2023-6/14/e1ce05c6-d5bb-4eaa-b976-7ef1187e02c0/e1ce05c6-d5bb-4eaa-b976-7ef1187e02c01.gif)
现代数值分析
研硕16《化工数值方法及Matlab应用》试题
班级姓名成绩
1.(15分)数值计算方法的主要研究对象有哪些?
其常用基本算法主要包括哪三个方面?
举例说明Matlab在解决化工数值计算问题方面有什么样实用价值?
答:
(1)数值计算方法的主要研究对象为非线性方程求根,插值法、曲线拟合、数值积分、常微分方程(组)、初值问题求解、线性和非线性方程组求解。
(2)基本算法包括①离散化方法:
用差商代替导数、差分代替微分等,将连续的数学问题转化为离散问题。
②逼近方法:
用简单函数的值近似代替求解困难或形式未知的复杂函数的值。
③迭代法:
用一个固定公式反复计算,对较为粗糙的根的近似值进行加工直到满足精度要求的方法。
(3)Matlab在解决化工数值计算问题的实用价值有:
数值计算和符号计算功能;图形功能;MATLAB语言;功能性和学科性工具箱。
2.(10分)数值计算中的“曲线拟合”,一般有哪些方法?
请至少指出四种,并简述各自的基本特点。
答:
(1)拉格朗日插值:
,优点在于不要求数据点事等间隔的,缺点是数据点不易过多,当数据比较多时,差值函数有偏离原函数的风险;
(2)牛顿插值法:
它不仅克服了“增加一个节点时整个计算工作必须重新开始”的缺点,而且可以节省乘、除法运算次数。
同时,在牛顿插值多项式中用到的差分与差商等概念,又与数值计算的其他方面有着密切的关系。
(3)牛顿迭代法:
牛顿迭代法是求方程根的重要方法之一,其最大优点是在方程f(x)=0的单根附近具有平方收敛,而且该法还可以用来求方程的重根、复根,此时线性收敛,但是可通过一些方法变成超线性收敛。
(4)区间二分法:
优点:
算法简单,容易理解,且总是收敛的。
缺点:
收敛速度太慢,浪费时间,二分法不能求复根跟偶数重根。
(5)最小二乘法:
通过最小化误差的平方和寻找数据的最佳函数匹配。
利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小。
3.(15分)在298K下,化学反应2OF2=O2+2F2的平衡常数为0.410atm,如在298K下将OF2通入容器,当t=0时为1atm,问最后总压是多少?
取计算精度为10-3。
解:
首先写出求解问题的数学方程式。
假设气体是理想气体,由反应的化学计量式可知,
设氧的分压为
,平衡时有
。
平衡时,有
整理得
函数关系为
非线性方程求根问题,如何确定求解区间
?
由计算得
因此,有根区间为
,用求单根的二分法计算,求解得氧气分压。
编写二分法的MATLAB程序:
bisect.m
function[xstar,index,it]=bisect(fun,a,b,ep)
%fun为需要求根的函数;
%a,b为初始区间的端点;
%ep为精度,缺省值为1e-5'
%当(b-a)/2%xstar为当迭代成功时,输出方程的根,
%当迭代失败时,输出两端点的函数值;
%index为指标变量,
%index=1时,表明迭代成功,
%index=0时,表明初始区间不是有根区间;
%it为迭代次数.
ifnargin<4ep=1e-5;end
fa=feval(fun,a);fb=feval(fun,b);
iffa*fb>0
xstar=[fa,fb];index=0;it=0;
return
end
k=0;
whileabs(b-a)/2>=ep
x=(a+b)/2;fx=feval(fun,x);
iffx*fa<0
b=x;fb=fx;
else
a=x;fa=fx;
end
k=k+1;
end
xstar=(a+b)/2;index=1;it=k;
编写本题的求根函数,函数名为fun1.m.
functionf=fun1(x)
f=4*x^3-1.640*x^2+1.64*x-0.410;
调用二分法函数bisect.m求方程的根:
[xstar,index,it]=bisect('fun1',0.2,0.3,0.0005)
得到方程的根:
xstar=
0.2746
index=
1
it=
7
运行结果表明二分法迭代成功,即达到精度要求,共迭代计算7次。
最后总压为
4.(10分)下表给出11月8日某个城市郊区在5个小时中的测量温度。
请用MATLAB对表中的数据构造一个拉格朗日插值多项式,并估计在下午3:
15分时的温度值。
然后在同一坐标系中画出表中的数据和上述得到的多项式曲线。
下午时间
1
2
3
4
5
6
华氏温度
66.5
66
65
64
63
62.4
解:
编程程序如下:
命令运行结果如下:
下午3:
15分时的温度值近似取3:
25的温度值,64.7484华氏度。
5.(20分)在下列反应器中发生A向B的转化反应,由于转化率不高,需经精馏以获得规定纯度的B,而精馏塔中的残余物再返回反应器继续反应。
这是典型的化工过程。
现已知原料为纯A,其流量为FA0=100kmol/h,A向B的转化率为φA=50%,A和B的循环比分别为rA=rB=0.5。
试用Matlab求恰定方程组的方法求1、2、3处A、B各自的物流量。
答:
令A为1号,B为2号,
由反应器A和B的平衡得:
①
由精馏塔A和B的平衡得:
②
由A和B的循环比得:
③
现已知原料为纯A,其流量为FA0=100kmol/h,A向B的转化率为φA=50%,A和B的循环比分别为rA=rB=0.5,带入①②③且建立线性方程组得
为了便于计算令X1=F11,X2=F21,X3=F12,X4=F22,X5=F13和X6=F23
X1+X3=100
X1—X2=25
X3—X4=25
X2—X4=0
这是一个线性方程组转化为矩阵形式为
1010X1100
1-100X225
001-1X325
010-1X40
Matlab编程程序如下:
即F11=F21=50kmol/h,F12=F22=25kmol/h,F13=F23=25kmol/h
6.(30分)热力学实验测得如下关于氧气的压缩因子数据:
p,atm
0
20
40
60
80
100
120
z
1
0.98654
0.97420
0.96297
0.95286
0.94387
0.93599
请用MATLAB对z-p进行拟合并作出相应的拟合曲线,再用组合辛普生法求其逸度系数ψ。
逸度系数ψ的定义如下(注意:
在实际物理概念上有:
p=0时ψ=1)。
答:
对z-p的数据点,作图图像,然后根据图像选择多项式拟合,阶数为2,程序运行结果如下:
由绘制所得的图像可以看出拟合曲线通过了所有的数据点,拟合效果比较好,所得拟合函数为:
用组合辛普生法求其逸度系数ψ,运行程序如下:
结果显示逸度系数为0.9286