Thread Closed

Calculating Integral in Mathematica

 
Share Thread Thread Tools
Jul4-08, 05:05 AM   #1
 

Calculating Integral in Mathematica


I have a function f(x) which is defined as

[tex]f(x) = \int_{x}^{c} \int_{x}^{c} f(x_1,x_2) dx_1 dx_2 [/tex]

where c is a known constant and f(x1,x2) is a multivariate Gaussian. Unfortunetaly there is no closed form solution for f(x).
My problem is I want to numerically calculate

[tex] \int_{c_1}^{c} f(x) dx [/tex]

where again c_1, and c are known constants.
How do I numerically evaluate such an integral in Mathematica? I get errors every time saying "x is not a valid limit of integration".
Any ideas, how I would input the above into Mathematica to get a numerical solution?
 
PhysOrg.com
PhysOrg
science news on PhysOrg.com

>> 'Whodunnit' of Irish potato famine solved
>> The mammoth's lament: Study shows how cosmic impact sparked devastating climate change
>> Curiosity Mars rover drills second rock target
Jul4-08, 05:54 AM   #2
 
Blog Entries: 5
Recognitions:
Homework Helper Homework Help
Science Advisor Science Advisor
NIntegrate[ f[x], {x, c1, c} ]
where c1 and c are numerical values or constants (like Pi, 2*E, 33.401 etc).
 
Jul4-08, 06:21 AM   #3
 
Unfortunately f(x) has no closed form solution (so the expression for f(x) still has the symbols x1, x2) and thus evaluating "NIntegrate[ f[x], {x, c1, c} ]" just gives the error the "Integrand ..... is not numerical at...".

I've also tried "NIntegrate[ f[x], {x1, x, c}, {x2, x, c}, {x, c1, c} ]", but this gives the error "x1 = x is not a valid limit of integration. "

I'm sure there's some way to do it, but just can't figure it out?
 
Jul4-08, 07:50 AM   #4
 
Blog Entries: 5
Recognitions:
Homework Helper Homework Help
Science Advisor Science Advisor

Calculating Integral in Mathematica


Can you post some code, in particular be a little more specific about f(x1, x2) ?
 
Jul4-08, 08:20 AM   #5
 
Basically, f(x1,x2) is a multivariate Normal pdf. An example in Mathematica code would be:

f(x) = "Integrate[PDF[MultinormalDistribution[{5,6}, {{1,1}, {1,2}}], {x1,x2}], {x1,x,c},{x2,x,c}]"

For any particular value of x and c (c is a known constant) I can numerically evaluate the above expression, however, I want to evaluate the above expression for all possible values of x, where x is a countinous number, and hence I need to integrate the above expression for all possible values of x (say, x ranges from 0-10 in the above example)
 
Jul4-08, 10:19 AM   #6
 
Blog Entries: 5
Recognitions:
Homework Helper Homework Help
Science Advisor Science Advisor
You are right that
Code:
NIntegrate[ f[x], {x1, x, c}, {x2, x, c}, {x, c1, c} ]
doesn't work, but I think that
Code:
NIntegrate[ f[x], {x, c1, c}, {x1, x, c}, {x2, x, c} ]
does. At least it gives an answer... apparently the integration is in a different order than you'd expect.

E.g.
Code:
NIntegrate[PDF[MultinormalDistribution[{5, 6}, {{1, 1}, {1, 2}}], {x1, x2}], {x, 5, 10}, {x1, x, 10}, {x2, x, 10}]

0.365427
 
Jul4-08, 11:17 AM   #7
 
Quote by jimmy1 View Post
Basically, f(x1,x2) is a multivariate Normal pdf. An example in Mathematica code would be:

f(x) = "Integrate[PDF[MultinormalDistribution[{5,6}, {{1,1}, {1,2}}], {x1,x2}], {x1,x,c},{x2,x,c}]"

For any particular value of x and c (c is a known constant) I can numerically evaluate the above expression, however, I want to evaluate the above expression for all possible values of x, where x is a countinous number, and hence I need to integrate the above expression for all possible values of x (say, x ranges from 0-10 in the above example)
Of course, make sure you load the package with the MultinormalDistribution:
Code:
Needs["MultivariateStatistics`"]
Then turn your code into a function:

Code:
f[x_, c_] :=  NIntegrate[PDF[MultinormalDistribution[{5, 6}, {{1, 1}, {1, 2}}], {x1, 
    x2}], {x1, x, c}, {x2, x, c}]
Now you say that you want to evaluate this repeatedly for different values of x, you could use a table:

Code:
Table[f[x,20],{x,1,10,0.1}]
 
Jul4-08, 02:39 PM   #8
 
Cool, thanks guys! I've used your suggestions and I think I've got it now, just need to test the result a bit more. Anyway, cheers for the help!
 
Thread Closed
Thread Tools


Similar Threads for: Calculating Integral in Mathematica
Thread Forum Replies
An integral that Mathematica won't solve... Math & Science Software 20
Divergent Integral and Mathematica Math & Science Software 1
Gaussian integral in Mathematica Math & Science Software 2
Mathematica 5 - Integral Plot Math & Science Software 0