Error in the integration result

Given the joint p.d.f.:
for -\infty < x, y < \infty
I'm trying to compute the expected value: by the following code:
syms x y
pi = sym('pi');
fxy = (1/pi)*exp(-((x-1)^2+2*y*(x-1)+2*y^2));
Exy = int(int(x*y*fxy,x,-inf,inf),y,-inf,inf)
However, I got the following solution
I started to wonder if this function is not integrable in the first place. However, the answer was no. I computed the same integral by Wolfram Alpha (no offense...) and got the following result:
Am I doing something wrong in my code? Do you have any idea how to obtian the same result in MATLAB? I appreciate your help.

 采纳的回答

Expected result after expand() and simplify() of fxy. Don't know why these operations are needed.
syms x y
Pi = sym(pi); % modified
fxy = (1/Pi)*exp(-((x-1)^2+2*y*(x-1)+2*y^2));
Exy = int(int(x*y*simplify(expand(fxy)),x,-inf,inf),y,-inf,inf)
Exy = 
Actually, the simplify() is not needed
syms x y
Pi = sym(pi); % modified
fxy = (1/Pi)*exp(-((x-1)^2+2*y*(x-1)+2*y^2));
Exy = int(int(x*y*expand(fxy),x,-inf,inf),y,-inf,inf)
Exy = 

1 个评论

I have no idea why we have to expand the polynomial before integration...but I'm glad to know it works in this way. Thanks!

请先登录,再进行评论。

更多回答(0 个)

类别

在 帮助中心 和 File Exchange 中查找有关 2-D and 3-D Plots 的更多信息

产品

版本

R2020a

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by