quad积分函数的使用的四种方法

转自http://tieba.baidu.com/p/2080411419

示例:求y=2x^4在(1,2)的积分



方法一:fun使用function
编辑function.m

function
y=integrated(x)
y=2*x.*x.*x.^2; %注意.千万不能漏掉
end
主文件中执行:
f=quad(@integrated,1,2) %注意,@符号千万不能漏掉


如果想控制一个变量a,求y=2x^4+a 在(1,2)的积分
编辑function.m
function
y=integrated(x,a)
y=2*x.*x.*x.^2+a; %注意.千万不能漏掉
end
主文件中执行:比如a=2;则:
f=quad(@(x) integrated(x,2),1,2) 
%注意,@符号千万不能漏掉(x)表示,关于x的函数

方法二:fun使用inline函数

y1=inline('2*x.*x.*x.^2','x');%注意.号,及'x'关于x的函数
y=quad(y1,1,2) %此时不需要再 @y1  


方法三:fun直接使用@
y1=@(x) x.^2; %注意别漏点.号
y2=@(x ) 2*x.*x; %注意别漏点.号
y=@(x) y1(x).*y2(x); %注意@和(x)的使用,还有别漏.号
f=quad(y,1,2) %此时y不用@了

方法四:fun使用sym表达式
利用syms,需要使用subs函数替换一下
syms phy;
y1=2*phy*phy*phy^2; %不需要.号
y=@(x) subs(y1,phy,x); %替换phy为x
f=quad(y,1,2)

你可能感兴趣的:(matlab)