在 MATLAB 中计算简单积分的问题

Issues calculating simple integral in MATLAB

我想用 Matlab 计算以下积分:

integral x*sin(3x)*e^(x^3) dx from bound 1 to 5.

使用以下命令,但不回答我的积分。

syms x

f=x*sin(3*x)*exp(x^3);

int (x*sin(3*x)*exp(x^3),x,1,5)

我的代码哪里有问题?谁能帮帮我?

你的程序是正确的。问题是 Matlab 不知道原始函数的显式形式。它产生警告

Warning: Explicit integral could not be found

如果您将 x^3 更改为 x,例如,有一个显式积分(可能可以找到 integrating by parts,就像指数函数和三角函数的乘积一样) :

>> syms x
>> int(x*sin(3*x)*exp(x),x,1,5)
ans =
(exp(1)*(12*cos(3) - 9*sin(3)))/50 - (exp(5)*(72*cos(15) - 29*sin(15)))/50