【发布时间】:2023-03-03 23:49:01
【问题描述】:
我正在使用以下功能:
f(x) = a*(1+cos(3*x)) 其中 a 是常数/参数。
y(x) = exp(-b*f(x)) 其中 b 是另一个常数。
我需要计算定积分积分(0,2pi)y(x)dx。
我正在尝试为我们的研究小组实施另一篇研究论文。我知道输出必须包含第一类修改过的贝塞尔函数,它们是“a”的函数。 Matlab 只是拒绝评估这个积分。
以下是我的代码(Matlab):
syms x;
syms a;
syms b;
f_x = a*(1+cos(3*x));
y_x = exp(-b*f_x);
z_x = int(y_x, x, 0, 2*pi)
输出:
Warning: Explicit integral could not be found.
z_x =
int(1/exp(a*b*(cos(3*x) + 1)), x = 0..2*pi)
请求您协助解决这个问题!我确信积分在很多地方都包含像 I(a) 等贝塞尔函数。我需要在这里做任何预处理吗?我有点迫切需要这个解决方案。我很欣赏快速响应,这至少可以指出正确的方向。
【问题讨论】:
-
好吧,如果它们是 a 的函数,那么它们应该是 ab 的函数,因为 a 在表达式中只直接作为 ab 出现。无论如何,Alpha 在这里也失败了。
标签: matlab integration symbolic-math