| 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? |
| Jul4-08, 05:54 AM | #2 |
|
|
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 |
|
|
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 |
|
|
You are right that
Code:
NIntegrate[ f[x], {x1, x, c}, {x2, x, c}, {x, c1, c} ]
Code:
NIntegrate[ f[x], {x, c1, c}, {x1, x, c}, {x2, x, c} ]
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 |
|
|
Code:
Needs["MultivariateStatistics`"] Code:
f[x_, c_] := NIntegrate[PDF[MultinormalDistribution[{5, 6}, {{1, 1}, {1, 2}}], {x1,
x2}], {x1, x, c}, {x2, x, c}]
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 | ||