- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《MATLAB 程序设计实践》课程考核
一、编程实现以下科学计算算法,并举一例应用之。(参考书籍《精通MALAB科学计算》,王正林等著,电子工业出版社,2009年)
“矩形法、梯形法数值积分”
1.梯形法数值积分
A.算法说明:
梯形法数值积分采用的梯形公式是最简单的数值积分公式,函数在区间[a,b]上计算梯形法数值积分表达式为:
由于用梯形公式来求积分十分粗糙,误差也比较大,后来改进后提出了复合梯形公式:,其中,n为积分区间划分的个数;h为积分步长。
在MATLAB中编程实现的复合梯形公式的函数为:Combine Traprl.
功能:复合梯形公式求函数的数值积分。
调用格式:[I,step]=CombineTraprl(f,a,b,eps).
其中,f为函数名;
a为积分下限;
b为积分上限;
eps为积分精度;
I为积分值;
Step为积分划分的区间个数
B.流程图
C.复合梯形公式的MATLAB代码:
function[I,step]=CombineTraprl(f,a,b,eps)
%复合梯形公式求函数f在区间[a,b]上的定积分
%函数名:f
%积分下限:a
%积分上限:b
%积分精度:eps
%积分值:I
%积分划分的子区间个数:step
if(nargin==3)
eps=1.0e-4; %默认精度为0.0001
end
n=1;
h=(b-a)/2;
I1=0;
I2=(subs(sym(f),findsym(sym(f)),a)+subs(sym(f),findsym(sym(f)),b))/h;
while abs(I2-I1)eps
n=n+1;
h=(b-a)/n;
I1=I2;
I2=0;
for i=0:n-1 %第n次的复合梯形公式积分
x=a+h*i; %i=0 和n-1时,分别代表积分区间的左右端点
x1=x+h;
I2=I2+(h/2)*(subs(sym(f),findsym(sym(f)),x)+subs(sym(f),findsym(sym(f)),x1));
end
end
I=I2;
step=n;
D.应用举例:
复合梯形法求数值积分应用举例,利用复合梯形法计算定积分
流程图
b. 原程序代码:
[q,s]=CombineTraprl(1/(x^2-1),2,4) %精度为默认的10-4
结果
[q,s]=CombineTraprl(1/(x^2-1),2,4,1.0e-6) %精度为10-6
结果:
所以从复合梯形公式可以得出0.2939
2.矩形法数值积分的源程序
function[I,step]=CombineTraprl(f,a,b,eps)
% 复合矩形公式求函数f在区间[a,b]上的定积分
%函数名:f
%积分下限:a
%积分上限:b
%积分精度:eps
%积分值:I
%积分划分的子区间个数:step
if(nargin==3)
eps=1.0e-4; %默认精度为0.0001
end
n=1;
h=b-a;
I1=0;
I2=(subs(sym(f),findsym(sym(f)),a)+subs(sym(f),findsym(sym(f)),b))/h;
while abs(I2-I1)eps
n=n+1;
h=(b-a)/n;
I1=I2;
I2=0;
for i=0:n-1 %第年n次的复合矩形公式积分
x=a+h*i; %i=0 和n-1时,分别代表积分区间的左右端点
x1=x+h;
I2=I2+h*subs(sym(f),findsym(sym(f)),x1);
end
end
I=I2;
step=n;
应用举列:复合矩形法求数值积分应用举例,利用复合矩形法计算定积分
a.流程图
b.原程序代码:
[q,s]=CombineTraprl2(x^2,1,2) %精度为默认的10-4
结果:
二、科学计算和工程实际问题和举例
1.(题目)将100个学生5门功课的成绩存入矩阵P中,进行如下处理:
(1)分别求每门课的最高分、最低分及相应学生序号。
(2)分别求每门课的平均分和标准方差。
(3)5门课总分的最高分、最低分及相应学生序号。
(4)将5门课总分按从大到小顺序存入zcj中,相应学生序号存入xsxh。
流程图:
源程序代码:
clear
nu
文档评论(0)