问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

如何用matlab求积分?

发布网友 发布时间:2022-04-25 14:06

我来回答

2个回答

热心网友 时间:2023-10-07 16:01

于无法求得exp(x^2)的原函数,我们只能用数值算法来求解,可以用复化梯形公式、Romberg公式、Gauss公式等,有好多种。我用Matlab编了一个用Gauss公式求解积分的函数。

function S=GaussIntegrate()
%运用Gauss求积公式计算数值积分

%f为被积函数,Rho为权函数,二者均为符号函数
x=sym('x');
f=exp(x^2);
Rho=1;

%a,b分别为求积区间的左界和右界
a=1;
b=2;

%n表示求积结点的个数,是一正整数
n=8;

%本程序利用线性变换将区间[a,b]变换到[-1.1],
%同时令g=f*Rho为被积函数,然后利用
%古典的Gauss求积公式进行计算,此时直交多项式即为Legendre多项式

if n=0||n~=floor(n)
error('错误,n必须是一个非负整数!');
end;

if a>b
error('错误,区间的左界a一定不大于右界b!');
end;

%计算n次Legendre多项式
syms x;
P=1/(2^n*factorial(n))*diff((x^2-1)^n,n);
w=roots(sym2poly(P));

%计算数值积分
A=zeros(1,n);
S=0;
for k=1:n
A(k)=2/((1-w(k)^2)*(subs(diff(P),w(k))^2));

t=a+(b-a)/2*(w(k)+1);
g=(b-a)/2*subs(f*Rho,t);
S=S+A(k)*g;
end;

--------------------------------
我取了8个结点,计算精度就已经达到了小数点后8位,效率还是很高的。
注意:由于Matlab调用Maple的符号计算工具箱,第一次运行时会加载一小会,耐心等待。
以后再运行速度就很快了。

热心网友 时间:2023-10-07 16:02

一、符号积分
符号积分由函数int来实现。该函数的一般调用格式为:
int(s):没有指定积分变量和积分阶数时,系统按findsym函数指示的默认变量对被积函数或符号表达式s求不定积分;
int(s,v):以v为自变量,对被积函数或符号表达式s求不定积分;
int(s,v,a,b):求定积分运算。a,b分别表示定积分的下限和上限。该函数求被积函数在区间[a,b]上的定积分。a和b可以是两个具体的数,也可以是一个符号表达式,还可以是无穷(inf)。当函数f关于变量x在闭区间[a,b]上可积时,函数返回一个定积分结果。当a,b中有一个是inf时,函数返回一个广义积分。当a,b中有一个符号表达式时,函数返回一个符号函数。

2.数值积分的实现方法
基于变步长辛普生法,MATLAB给出了quad函数来求定积分。该函数的调用格式为:
[I,n]=quad('fname',a,b,tol,trace)
基于变步长、牛顿-柯特斯(Newton-Cotes)法,MATLAB给出了quadl函数来求定积分。该函数的调用格式为:
[I,n]=quadl('fname',a,b,tol,trace)
其中fname是被积函数名。a和b分别是定积分的下限和上限。tol用来控制积分精度,缺省时取tol=0.001。trace控制是否展现积分过程,若取非0则展现积分过程,取0则不展现,缺省时取trace=0。返回参数I即定积分值,n为被积函数的调用次数。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
干货| 手把手教你搭建一套OpenStack云平台 口碑最好的切菜刀 什么材质的菜刀最好用 菜刀的种类和用途 张九龄三首古诗词赏析(风格清淡,语言素练) word文字底纹颜色怎么设置在哪 东施效颦这则语言告诉人们一个怎样的道理,欲意又是什么呢 胜芳买房多少钱 胜芳谁最有钱 315儿童智能手表是哪个牌子 孕囊看男女准不准 MATLAB中怎么定义积分函数 matlab中的积分运算如何进行 matlab求解积分函数 MATLAB求积分? matlab输入函数求积分 matlab 矩形公式求积分 matlab如何表示积分 matlab 怎么快速算定积分 matlab 求积分 如何用matlab求取函数的不定积分与定积分 matlab中对符号表达式求微分和积分的函数是什么? Matlab怎么计算定积分? 如何用matlab对这个函数进行积分。 Matlab怎么计算定积分 matlab中几种求积分的方法 南京到四川旅游 九寨沟景区回南京市沿途风景名胜区 有9月22号从南京去成都玩九寨沟的人吗? 南京和九寨沟哪个好玩 南京梅花谷小九寨沟在什么地方自驾怎么走 k330次列车途经那几个站 江淮骏铃K330/M330/H330都是什么意思? 莫扎特奏鸣曲K330曲式分析 k330火车2020年5.28为什么没有? 手机购票为什么没有显示洛阳到菏泽的k330火车? k330次列车是不是经常晚点? 莫扎特奏鸣曲k330创作背景 洛阳到天津火车K330,天津到洛阳怎么没这个车? 莫扎特K330三个乐章风格,内涵有什么不同? k330从霸州到民权的列车有几点的 九月二十九号K330开往聊城市火车19.12是那个站座车? K330硬卧一个车厢有多少个床铺? 佛山顺德公交k330全程时间 k330公交车路线经碧桂园正苑吗 杭州公交K330哪里到哪里 联想锋行k330怎么样 K330十五车厢一共有多少人?求座位分布图。。。 龙江到广州南站k330最早头趟发车是几点? 联想锋行k330主机,主板是联想CIP67M,以前上的是i3 2120CPU,我今天换了个至强 e3 1230 v2的,开不了机了 莫扎特在创奏鸣曲K330时的背景和这首曲写给谁的?