Matlab 上的函数集成

Function integration on Matlab

我正在尝试将代码从 Mathematica 重写到 Matlab。

Mathematica 原代码为:

好的,直到这里没问题,因为我可以在任何我想要的地方计算 TT[x] 函数 (x, x+1, ...) 并执行数值积分。

我想在 Matlab 上做同样的事情,但我的问题来了:

TT = simplify(T);
Fx = 7.734*10^(-2)*vpaintegral(TT,x+1,0,Mu)
Result = double(Fx)

使用 sym/vpaintegral 时出错(第 131 行) 无法针对 'x + 1' 进行积分。积分变量必须是 符号变量.

我做错了什么?可以在 Mathematica 上而不是在 Matlab 上正确评估和集成函数,还有其他方法吗?如果我引入 'x' 而不是 'x + 1' 积分就可以完美地工作,否则就不可能。

提前致谢!

你为什么不把TT换成subs(TT,x,y-1),然后在新符号y上积分,例如,我把下面函数中的cos(x)换成y并进行整合

syms x y
f=3/4*(1+cos(x))^2
vpaintegral(subs(f,cos(x),y),y,0,1)