没有合适的资源?快使用搜索试试~ 我知道了~
Matlab8数值积分与数值微分.pdf
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 153 浏览量
2021-09-14
16:02:50
上传
评论
收藏 717KB PDF 举报
温馨提示
试读
14页
。。。
资源推荐
资源详情
资源评论
word
Matlab 数值积分与数值微分
Matlab 数值积分
1. 一重数值积分的实现方法
变步长辛普森法、高斯-克朗罗德法、梯形积分法
1.1 变步长辛普森法
Matlab 提供了 quad 函数和 quadl 函数用于实现变步长辛普森法求数值积分.调
用格式为:
[I,n]=Quad(fname,a,b,tol,trace)
[I,n]=Quadl(fname,a,b,tol,trace)
Fname 是函数文件名,a,b 分别为积分下限、积分上限;tol 为精度控制,默认为
1.0×10-6
,trace 控制是否展开积分过程,假如为0 如此不展开,非 0 如此展开,
默认不展开.
返回值 I 为积分数值;n 为调用函数的次数.
---------------------------------------------------------------------
例如:求
先建立函数文件
fesin.m
function f=fesin(x)
的值.
f=exp(-0.5*x).*sin(x+(pi/6));
再调用 quad 函数
[I,n]=quad(fesin,0,3*pi,1e-10)
I =
1 / 14
word
0.9008
n =
365
---------------------------------------------------------------------
例如:分别用 quad 函数和 quadl 函数求积分
的近似值,比拟函数调用的次数.
先建立函数文件
fesin.m
function f=fesin(x)
f=exp(-0.5*x).*sin(x+(pi/6));
format long
[I,n]=quadl(fesin,0,3*pi,1e-10)
I =
0.900840787818886
n =
198
[I,n]=quad(fesin,0,3*pi,1e-10)
I =
0.900840787826926
2 / 14
word
n =
365
---------------------------------------------------------------------
可以发现 quadl 函数调用原函数的次数比 quad 少,并且比 quad 函数求得的数值
解更准确.
1.2 高斯-克朗罗德法
Matlab 提供了自适应高斯-克朗罗德法的 quadgk 函数来求震荡函数的定积分,
函数的调用格式为:
[I,err]=quadgk(fname,a,b)
Err 返回近似误差 X 围,其他参数的意义与 quad 函数一样,积分上下限可以是-Inf
或 Inf,也可以是复数,假如为复数如此在复平面上求积分.
---------------------------------------------------------------------
例如:求积分
的数值.
先编写被积函数的 m 文件
fsx.m
function f=fsx(x)
f=x.*sin(x)./(1+cos(x).^2);
再调用 quadgk 函数
I=quadgk(fsx,0,pi)
I =
3 / 14
剩余13页未读,继续阅读
资源评论
苦茶子12138
- 粉丝: 1w+
- 资源: 6万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功