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

1 Ansicht (letzte 30 Tage)
may
may am 4 Jun. 2013
Kommentiert: Colin am 17 Mär. 2019
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)

Antworten (2)

Wayne King
Wayne King am 4 Jun. 2013
F = @(x)normpdf(x, 0, 1);
Q = integral(F,-Inf,Inf);
  5 Kommentare
may
may am 4 Jun. 2013
What is the difference between integral and int?
Colin
Colin am 17 Mär. 2019
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.

Melden Sie sich an, um zu kommentieren.


Wayne King
Wayne King am 4 Jun. 2013
Bearbeitet: Wayne King am 4 Jun. 2013
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 Kommentare
may
may am 5 Jun. 2013
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 am 5 Jun. 2013
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)

Melden Sie sich an, um zu kommentieren.

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by