Integral of a gaussian function wrong answer
4 次查看(过去 30 天)
显示 更早的评论
I am trying to calculate the integral of the following Gaussian function:
syms x A
assume(x,'real');
assume(A,'real');
assumeAlso(A>0);
% Expression to integrate
eq = x^14*exp(-x^2/2)*exp(-A*x);
% Integration
ans = int(eq,x,-inf,inf)
Matlab gives me an answer containing hypergeo and erf. However, there is a regular algebraic solution without the needs of hypergeo or erf. (For example type "integral of (x^14*exp(-x^2/2)*exp(-A*x)) from -inf to inf" into wolfram alpha to get algebraic solution)
Is there a way to get to the algebraic answer in Matlab?
0 个评论
采纳的回答
Karan Gill
2017-7-12
I could get the algebraic answer but it required calling "simplify" twice. Need to investigate this further.
>> syms x A
assume(x,'real');
assume(A,'real');
assumeAlso(A>0);
% Expression to integrate
eq = x^14*exp(-x^2/2)*exp(-A*x);
sol = int(eq,x,-Inf,Inf); % long expression
>> sol1 = simplify(sol,'Steps',500); % first simplify step
>> sol2 = simplify(sol1,'Steps',200) % second simplify step
sol2 =
2^(1/2)*pi^(1/2)*exp(A^2/2)*(A^14 + 91*A^12 + 3003*A^10 + 45045*A^8 + 315315*A^6 + 945945*A^4 + 945945*A^2 + 135135)
3 个评论
Karan Gill
2017-7-12
编辑:Karan Gill
2017-10-17
You can find the option in 4th example under simplify here. If the example is hard to find or read, that would be useful to know. Unfortunately, sometimes these options do get lost in longer doc pages.
Thanks,
Karan (Symbolic doc)
更多回答(1 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Calculus 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!