Matlab怎么计算定积分
1、以f(x)=e^2x+sin(x+π/3) ,积分下限:a=0,积分上限:b=π/4 为例。首先,建立被积函数M文件;点击New,选择Function;
2、在编辑器中输入指令:function f=f(x);f=exp(2*x).*sin(x+pi/3);(注意,用 .* )
3、保存函数文件到自己的工作路径,比如G:\matlab\work。
输入指令:cd G:\matlab\work,是该路径成为当前路径。
4、matlab中计算积分的两种指令:
1.F=quad('fname',a,b,tol,trace) Simpson数值积分法
2.F=quad8('fname',a,b,tol,trace) Newton-Cotes数值积分法
其中: fname是被积函数表达式或函数名,a,b分别是上下限,tol可以控制积分精度,省略则取0.001;trace=1则用图形表示积分过程,trace=0,没有图形。
两者 比较,quad8精度更高。
5、调用积分函数squad进行计算。输入指令: F=quad('f(x)',0,pi/4),如图,回车后可得到计算结果1.8612。其他函数,只要修改函数文件中的表达式即可。
2017-04-21
符号解:例如f=t^2*exp(-t);a=0,b=1
>> clear
>> syms t%定义符号变量
>> f=t^2*exp(-t);
>> int(f,t,0,1)
ans =
2 - 5*exp(-1)
数值解:例如例如f=t^2*exp(-t^3);a=0,b=1
>> clear
>> t=0:0.0001:1;%中间的0.0001是步长
>> f=t.^2.*exp(-t.^3);%求节点处的函数值。这一句的"^"和"*"前面的"."表示对应元素乘方、相乘。因为t是向量,只有方阵才可以乘方,矩阵乘法也必须满足相应的维数关系
>> sum(f*0.0001)%节点处的函数值相当于矩形的高,步长相当于矩形的宽,乘积再求和就得到总面积的近似值。
ans =
0.2107
matlab求积分有好几种形式
1:知道被积函数表达式、积分区间,只求值——trapz()
这是最简单的一种,使用trapz()函数进行梯形数值积分
X = 0:1:2;
Y = X.^2;
Q = trapz(X,Y)
积分值的精度取决于对积分区间的细化程度