关于#matlab#的问题 算定积分,为何算出来结果完全不对

X=xlsread('fengsu.xlsx');
X(find(X==0))=[];
pd=fitdist(X,'weibull');
a=pd.A;b=pd.B
syms x
f = 0.5*(x^3).* ((b/a).*((x/a).^(b-1)).*exp(-(x/a).^b));
int(f,[0 inf])

先是用fitdist把Weibull的2个参数a,b算出来,然后算一个定积分,定积分的表达式,还有f(x)的表达式如图,结果乱七八糟一大坨,是哪里出错了吗,

img

img

已知a和b后是很容易求出定积分值的。

a = 1.5;
b = 2;
syms x
f = 0.5*(x^3).* ((b/a).*((x/a).^(b-1)).*exp(-(x/a).^b));
s = int(f,[0 inf]);
s = double(s)

结果:
s =

2.2433