2
a=2;
b=9;

syms x
I0=besseli(0,a*x/b);

F(x)=(x/b)*exp(-(x^2+a^2)/(2*b));
FUN=x*F(x);

mean=quad(FUN,0,100)

そして、私はこのエラーを受け取ります:

Error using fcnchk (line 107)
If `FUN` is a MATLAB object, it must have an feval method.

Error in quad (line 57)
f = fcnchk(funfcn);
4

1 に答える 1

1

FUNへの引数quadは関数でなければなりませんが、代わりにシンボリック式を提供しています。

FUN = matlabFunction(x*F(x))を使用して式を関数に変換してみてください。

この投稿も参照してください。

于 2013-10-31T17:15:27.330 に答える