Re: N-dimensional NIntegrate
- To: mathgroup at smc.vnet.net
- Subject: [mg79219] Re: N-dimensional NIntegrate
- From: antononcube <antononcube at gmail.com>
- Date: Sat, 21 Jul 2007 04:29:20 -0400 (EDT)
- References: <f7hrme$s03$1@smc.vnet.net><f7kecj$551$1@smc.vnet.net>
I would like to point out that in Jens-Peer Kuska's example code using
version 6.0 if one uses "AdaptiveMonteCarlo" or
"AdaptiveQuasiMonteCarlo", convergence is reached (i.e. no messages):
In[233]:= myFun[x_] := Exp[-x.x/2]
With[{n = 3},
vec = Table[Subscript[x, i], {i, 1, n}] ;
NIntegrate[myFun[vec],
Evaluate[Sequence @@ ({#, -Infinity, Infinity} & /@ vec)],
Method -> "AdaptiveQuasiMonteCarlo"]
]
Out[234]= 15.6809
On Jul 18, 2:10 am, Jens-Peer Kuska <ku... at informatik.uni-leipzig.de>
wrote:
> Hi,
>
> myFun[x_] := Exp[-x.x/2]
>
> With[{n=3},
> vec = Table[Subscript[x, i], {i, 1, n}]
> NIntegrate[myFun[vec],
> Evaluate[Sequence @@ ({#, -Infinity, Infinity} & /@ vec)],
> Method -> "QuasiMonteCarlo"]
> ]
>
> this gives an error message about the convergence but
> this has nothing to do with the method
> to setup the integration variables.
>
> Regards
> Jens
>
> mfed... at gmail.com wrote:
> > Hi everyone,
>
> > I want to define an N-dimensional definite integral---numerical
> > integration rather than symbolic.
>
> > Eg,
>
> > compute integral of f(x) dx
>
> > where x can be an N-vector. I want to define the integral for general
> > N. (Obviously before evaluating the integral, I'll specify N.) I
> > can't think how to define the range of integration in a neat way in
> > the general case. Eg if the variables are x_{1}, x_{2}, ... x_{N},
> > how can I specify that the integration range is
> > (say) R^{N}?
>
> > Something like
>
> >NIntegrate[ f(x), {x_{1}, -inf, inf}, {x_{2}, -inf, inf}, ..., {x_{N},
> > -inf, inf} ]
>
> > is what I want... would be neat to have x defined as a list or
> > something.
>
> > There must be a neat way to do this. Sorry for being such an
> > amateur.
>
> > Cheers,
> > MF