How can I find the integral of normpdf(X,1,0) from -inf to inf?

1 次查看(过去 30 天)
How can I find the integral of normpdf(x,1,0) from -inf to inf?
The followings did not work:
F = @(x)normpdf(x, 0, 1);
Q = quad(F,-Inf,Inf);
---------
syms x;
int('normpdf(x,0,1)',-inf,inf)

回答(2 个)

Wayne King
Wayne King 2013-6-4
F = @(x)normpdf(x, 0, 1);
Q = integral(F,-Inf,Inf);
  5 个评论
Colin
Colin 2019-3-17
F = @(x)normpdf(x, 0, 1);
Q = integral(F,-Inf,Inf);
This works nicely, but this:
F = @(x)normpdf(x, 350, 20);
Q = integral(F,-Inf,Inf);
gives
Q = 3.4540e-29
Seems likes it's not very robust.

请先登录,再进行评论。


Wayne King
Wayne King 2013-6-4
编辑:Wayne King 2013-6-4
integral() was introduced in R2012a. It is used to numerically evaluate an integral, not symbolically and integral() can be unused on unbounded sets like (-Inf,Inf)
Again, in your case you can use quad() far short of (-Inf,Inf) and get 1.
  5 个评论
may
may 2013-6-5
Thank you all for your replies.
I upgraded my MATLAB to 2013, so now I can use "Integral"
Now I want to find the following integral:
F = @(x)(normpdf(x, 0, 1)*normcdf(x, 0.2, 1.5)*normcdf(x, 0.2, 0.5));
Q = integral(F,-Inf,Inf);
But I get the following error:
Error using *
Inner matrix dimensions must agree.
Do you know what should I do to fix it?
may
may 2013-6-5
I think I fixed it
F = @(x)normpdf(x, 0, 1)
G= @(x)normcdf(x, 0.2,1.5)
H= @(x)normcdf(x, 0.2,0.5)
Q = integral(@(x)F(x).*G(x).*H(x),-Inf,Inf)

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Logical 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by