数值计算课程PROJECT- 牛顿-柯特斯公式(Newton-Cotes Methods)
- 格式:pdf
- 大小:186.19 KB
- 文档页数:3
newton-cotes公式
Newton-Cotes 公式是一种数值积分方法,用于近似计算函数的
定积分。
在这个公式中,我们将定积分的区间划分成若干小区间,然
后在每个小区间上使用一个插值多项式来代替原函数。
这样,我们可
以通过求解这些插值多项式的定积分来近似计算原函数的定积分。
Newton-Cotes 公式可以用来计算不同阶数的插值多项式的定积分。
其中最简单的形式是梯形法则,通过将定积分区间划分成两个小
区间,然后在每个小区间上使用线性插值来计算定积分。
更高阶的 Newton-Cotes 公式包括 Simpson 法则和龙贝格-柯朗
尼法则。
这些公式使用更高次的插值多项式来近似计算定积分,从而
提高精度。
然而,Newton-Cotes 公式也有其限制。
随着小区间数量的增加,插值多项式的阶数也会增加,从而使得计算定积分所需的计算量增加。
此外,当函数在某些小区间上变化较大时,使用插值多项式可能会导
致较大的误差。
总之,Newton-Cotes 公式是一种常用的数值积分方法,适用于
近似计算函数的定积分。
通过选择合适的插值多项式阶数和定积分区
间划分方式,我们可以根据需要在精度和计算效率之间进行权衡。
牛顿柯特斯公式求定积分牛顿-柯特斯公式是数值分析中用于求定积分近似值的重要工具。
咱们先来说说定积分是啥,想象一下,你要计算一条曲线和坐标轴围成的面积,这就是定积分要解决的事儿。
比如说,有个函数 f(x) = x²,从 0 到 2 这个区间,你要算它和 x 轴围成的面积。
这时候,牛顿-柯特斯公式就派上用场啦。
我记得我上学那会,有一次老师在课堂上讲牛顿-柯特斯公式,那可真是让我头疼了好一阵子。
当时我就想,这一堆复杂的公式和符号,怎么能算出面积来呢?老师在黑板上不停地写着公式,还一边解释:“同学们,这个牛顿-柯特斯公式啊,其实就是把积分区间分成若干个小段,然后通过一些加权系数来近似计算定积分的值。
”我看着那些密密麻麻的算式,脑子一片混乱。
课后,我拿着课本,坐在教室里,一个人苦苦思索。
我尝试着按照老师讲的步骤,一步一步地去推导公式,可是总是在某个地方卡住。
后来,我找了班上数学好的同学一起讨论。
我们把公式写在纸上,一点点地分析,突然,就像黑暗中划过一道闪电,我好像明白了其中的关键。
原来,就是要把那些复杂的式子分解开,找到其中的规律。
咱们再回到牛顿-柯特斯公式本身。
它主要包括梯形公式、辛普森公式等等。
梯形公式呢,就像是把曲线下的面积近似看作一个个梯形的面积之和。
而辛普森公式则更精确一些,它把区间分成更多小段,形状更接近曲线。
比如说,还是那个 f(x) = x²的例子,用梯形公式计算从 0 到 2 的定积分,我们先把区间分成两段,[0, 1] 和 [1, 2]。
然后计算每个梯形的面积,相加起来就能得到近似值。
在实际应用中,牛顿-柯特斯公式的用处可大了。
比如在工程计算中,要计算各种复杂形状的面积、体积,或者在物理问题中,计算能量、功等等。
总之,牛顿-柯特斯公式虽然看起来复杂,但只要我们认真去理解,多做练习,就能掌握它的精髓,用它来解决各种求定积分的问题。
就像我当初在困惑中最终找到了解题的关键,只要不放弃,总能攻克难题!现在回想起来,还真是一段难忘的学习经历呢。
《数值计算方法》课程教学大纲一、课程基本信息二、课程教学目标数值计算方法是大规模科学模拟计算领域的一门重要的基础课,具有很强的应用性。
通过对本课程的学习及上机实习,使学生掌握掌握数值计算的基本概念、基本方法及其原理,培养应用计算机从事科学与工程计算的能力。
具体能力目标如下:具有应用计算机进行科学与工程计算的能力;具有算法设计和理论分析能力;熟练掌握并使用数学软件,处理海量数据,进行大型数值计算的能力。
三、教学学时分配《数值计算方法》课程理论教学学时分配表《数值计算方法》课程实验内容设置与教学要求一览表四、教学内容和教学要求第一章数值分析与科学计算引论(4学时)(一)教学要求1.了解误差的来源以及舍入误差、截断误差的定义;2.理解并掌握绝对误差、相对误差、误差限和有效数字的定义和相互关系;3.了解函数计算的误差估计,误差传播、积累带来的危害和提高计算稳定性的一般规律。
(二)教学重点与难点教学重点:误差理论的基本概念教学难点:误差限和有效数字的相互关系,误差在近似值运算中的传播(三)教学内容第一节数值分析的对象、作用与特点1.数学科学与数值分析2.计算数学与科学计算3. 计算方法与计算机4. 数值问题与算法第二节数值计算的误差1.误差的来源与分类2.误差与有效数字3. 数值运算的误差估计第三节误差定性分析与避免误差危害1.算法的数值稳定2.病态问题与条件数3. 避免误差危害第四节数值计算中算法设计的技术1.多项式求值的秦九韶算法2.迭代法与开方求值本章习题要点:要求学生完成作业10-15题。
其中概念题15%,证明题5%,计算题60%,上机题20%第二章插值法(12学时)(一)教学要求1.掌握插值多项式存在唯一性条件;2.熟练掌握Lagrange插值多项式及其余项表达式,掌握基函数及其性质;3.能熟练使用均差表和差分表构造Newton插值公式;4.能理解高次插值的不稳定性并熟练掌握各种分段插值中插值点和分段的对应关系;5.熟练掌握三次样条插值的条件并能构造第一和第二边界条件下的三次样条插值。
数值计算课程PROJECT
牛顿-柯特斯公式(Newton-Cotes Methods)
例题介绍:
请在MATLAB环境下编写牛顿-柯特斯公式,以求得π的近似值。
Instruction:
Using the Newton-Cotes method to solve all the following problems.
Solving the problems with MATLAB, printing out your MATLAB code, figures, as well as necessary problem-solving procedures on paper, and submit before final exam. (No late submission is accepted) Students must solve all these questions correctly to get 5 point extra credits, no partial credit is given. Plagiarizing from other’s work will be treated as 0.
Problems I: The value of π can be calculated from the integral 1
2121dx x π-=+⎰(a)Evaluate the integral by using rectangle method, using 60 subintervals.
(b)Evaluate the integral by using midpoint method, using 60 subintervals.
(c)Evaluate the integral by using trapezoidal method, using 60 subintervals.
(d)Evaluate the integral by using Simpson’s 1/3 method, using 60 subintervals.
(e)Evaluate the integral by using Simpson’s 3/8 method, using 60 subintervals.
(f)Compare the results and discuss the error from each method.
MATLAB CODE:
f = @(x) 2/(1 + x^2); n = 60; % #subintervals
a = -1; % min
b = 1; %max h = (b-a)/n;
xi = a:h:b;
part A: 长方形法则
la = 0;
for i=1:length(xi)-1
la = la + h*f(xi(i));
end
fprintf('A. Rectangle method approx: %f\n', la)
part B: 中点法则
lb = 0;
for i = 1:length(xi)-1
lb = lb + h*f((xi(i) + xi(i+1))/2);
end
fprintf('B. Midpoint method approx: %f\n', lb)
part C: 梯形法则
lc = 0;
for i=1:length(xi)-1
lc = lc + h*(f(xi(i)) + f(xi(i+1)))/2;
end
fprintf('C. Trap. method approx: %f\n', lc)
part D: 辛普森1/3法则
ld = (h/3)*(f(xi(1)) + f(xi(end)));
for i = 2:2:length(xi)-1
ld = ld + (h/3)*4*f(xi(i));
end
for i = 3:2:length(xi)-2
ld = ld + (h/3)*2*f(xi(i));
end
fprintf('D. Simpsons 1/3 method approx: %f\n', ld)
part E: 辛普森3/8法则
le = (3*h/8)*(f(xi(1)) + f(xi(end)));
for i = 2:3:length(xi)-1
le = le + (3*h/8)*3*(f(xi(i)) + f(xi(i+1)));
end
for i = 3:3:length(xi)-3
le = le + (3*h/8)*2*f(xi(i));
end
fprintf('E. Simpsons 3/8 approx: %f\n', le)
part F: 误差分析
fprintf('\nF.')
fprintf('Relative error for A is %f %%\n', abs(la-pi)*100/pi) fprintf('Relative error for B is %f %%\n', abs(lb-pi)*100/pi) fprintf('Relative error for C is %f %%\n', abs(lc-pi)*100/pi) fprintf('Relative error for D is %f %%\n', abs(ld-pi)*100/pi) fprintf('Relative error for E is %f %%\n', abs(le-pi)*100/pi)
--------------------------------------------------------
结果如下:(Command Window results below)
A. Rectangle method approx: 3.141407
B. Midpoint method approx: 3.141685
C. Trap. method approx: 3.141407
D. Simpsons 1/3 method approx: 3.141593
E. Simpsons 3/8 approx: 3.141301
F.
Relative error for Rectangle method is 0.005895
Relative error for Midpoint method is 0.002947
Relative error for Trapezoidal method is 0.005895
Relative error for Simpsons 1/3 is 0.000000
Relative error for Simpsons 3/8 is 0.009284。