积分matlab实现
上周有读者问到有关数值积分的问题,这里给大家介绍一些常见的用得到的数值积分例子;每篇博文就讲一种类型,方便大家阅读。
首先介绍数值积分的matlab指令:s=int(fun,v,a,b)。
其中,int表示integral数值积分,fun表示被积函数function,v代表variance积分变量,a和b分别是积分上下限。
只有一个积分变量
特别地,当积分变量只有一个的时候可以省略v这个参数。看例题:
代码如下:
a=1;
b=10;
syms y;
fun=exp(-y.^2)+log(y);
result=int(fun,a,b) %进行积分
eval(result) %保留四位小数
运行结果如下:
有两个或者多个积分变量
当积分表达式中存在两个或多个积分变量的时候(比如说带参数的积分),v这个积分变量就不能省略了。举例如下:
需要运行的程序如下:
syms x t;
a=1;
fun=2*t*x;
result=int(fun,x,a,sin(t))
积分结果为
计算二重积分
代码如下:
syms x y; %二重积分
fun=x.^2+y.^2;
result=int((int(fun,x,sqrt(y),2)),y,1,4)
eval(result)
积分结果: