Matlab无法计算无限积分?
问题描述:
大家好。所以我正在研究随机微积分,偶尔我们需要计算一些复杂分布的积分(从无穷大到无穷大)。在这种情况下,它是Matlab无法计算无限积分?
与正确的答案。这是我投入Matlab的代码(和我有符号数学工具箱),这Matlab的根本无法处理:
>> syms x t
>> f = exp(1+2*x)*(1/((2*pi*t)^0.5))*exp(-(x^2)/(2*t))
>> int(f,-inf,inf)
ans =
-((2^(1/2)*pi^(1/2)*exp(2*t + 1)*limit(erf((2^(1/2)*((x*1i)/t - 2i))/(2*(-1/t)^(1/2))), x, -Inf)*1i)/(2*(-1/t)^(1/2)) - (2^(1/2)*pi^(1/2)*exp(2*t + 1)*limit(erf((2^(1/2)*((x*1i)/t - 2i))/(2*(-1/t)^(1/2))), x, Inf)*1i)/(2*(-1/t)^(1/2)))/(2*pi*t)^(1/2)
这个答案在最后看起来像nonesense,而钨(通过其免费工具),即送我是上面图片的答案。我错过了在matlab中做这样的集成的基础知识,以至于基础的数学工作页面没有涵盖?请有人帮我理解我的错误处理方式吗?
答
的int()
第二个参数必须要集成在变量(它看起来像t
在这种情况下):
syms x t
f = exp(1+2*x)*(1/((2*pi*t)^0.5))*exp(-(x^2)/(2*t))
int(f,'t',-inf,inf) % <- integrate over t
这样做,我得到另一个答案nonesense, ANS = 分段(x in Dom :: ImageSet(x * 1i,x,R_)&in(x^2,'real'),exp(2 * x + 1)*(Inf_limit(t^*(x^2/t)^(1/2)-t ^(1/2)* erfc((x^2 /(2 * t))^(1/2))*(x^2/t )^(1/2)+ .... (输出太长,无法在此评论中发布) 这里发生了什么问题? – Coolio2654