今天来看看微积分,什么是微积分,好多人会给出自己的理解,我的理解就是,一个非规则几何体、面,太难算了,就把他给分,分成足够多的小块,然后就发现,每一个小块的面积相加就是整体的面积,分的过程就是微分,相加的过程就是积分。
用数值方法来积分的时候,主要是应用在函数不存在的时候,我们从实验中得到的一连串数据,没有办法刚好使用一些已知的函数来表示,那么这个时候就用其他的算法来计算了。
1、梯形法求积分:
这个是最简单的,使用梯形法,把所需要积分的图形,用许多的小梯形方块填满,这样就近似求解了。
module integeral
implicit none
real,PARAMETER::PI=3.1415926
contains
subroutine GenerateData(datas,width,func)
! 生成数列
real datas(:),width
real,external::func
real r
integer i,n
n=size(datas, dim=1)
width=PI/(n-1)
r=0
do i=1,n
datas(i)=func(r)
r=r+width
end do
end subroutine
real function Trape_Integral(datas,width)
implicit none
real datas(:)
real::width,sum
! sum:计算所有上底加下底除以2的和
integer i,n
n=size(datas, dim=1)

本文介绍了使用数值方法进行积分计算的基本原理和技术,包括梯形法和辛普森法,并提供了Fortran语言实现的具体代码示例。文中还探讨了不同精度设置对结果的影响。

2925

被折叠的 条评论
为什么被折叠?



