       Slow mathematica program help

• To: mathgroup at smc.vnet.net
• Subject: [mg31023] Slow mathematica program help
• From: Ben Ridenhour <bridenho at bio.indiana.edu>
• Date: Wed, 3 Oct 2001 02:49:10 -0400 (EDT)
• Organization: Indiana University
• Sender: owner-wri-mathgroup at wolfram.com

```Hi,
I'm running the simulation that I have below, but it takes an extremely
long time to do only 100 loops.  First of all, I notice with each
progressive loop the time Mathematica takes to process the loop gets
exceedingly longer.  How can I cure this?  Also, I tried doing NIntegrate
with the default method (MultiDimensional), but this seemed to produce
erroneous results.  I therefore switched to Method->DoubleExponential,
which seems to produce the expected results but is much slower.  Is there
appreciated-- I've tried compiling functions etc... and nothing has seemed
to help, but perhaps I am doing it in the wrong way.
Ben Ridenhour

<<Statistics`DataManipulation`
data={};
vardata={};
Meanx=0;
Meany=1;
Varx=5;
Vary=5;
For[gen=0,gen<100,gen++,
Gaussx=(2 Pi Varx)^(-0.5) Exp[-(x-Meanx)^2/(2 Varx)];
Gaussy=(2 Pi Vary)^(-0.5) Exp[-(y-Meany)^2/(2 Vary)];
Wx=1/(1+Exp[.2(y-x)]);
Wy=1/(1+Exp[-.2(y-x)]);
Wbarx=NIntegrate[Gaussx Gaussy Wx,
{x,-Infinity,Infinity},
{y,-Infinity,Infinity},
Method->DoubleExponential];
Wbary=NIntegrate[Gaussx Gaussy Wy,
{x,-Infinity,Infinity},
{y,-Infinity,Infinity},
Method->DoubleExponential];
data=Append[data,{Meanx,Meany}];
vardata=Append[vardata,{Varx,Vary}];
Meanx=1/Wbarx NIntegrate[x Gaussx Gaussy Wx,
{x,-Infinity,Infinity},
{y,-Infinity,Infinity},
Method->DoubleExponential];
Meany=1/Wbary NIntegrate[y Gaussx Gaussy Wy,
{x,-Infinity,Infinity},
{y,-Infinity,Infinity},
Method->DoubleExponential];
Varx=1/Wbarx NIntegrate[(x-Meanx)^2 Gaussx Gaussy Wx,
{x,-Infinity,Infinity},
{y,-Infinity,Infinity},
Method->DoubleExponential];
Vary=1/Wbary NIntegrate[(y-Meany)^2 Gaussx Gaussy Wy,
{x,-Infinity,Infinity},
{y,-Infinity,Infinity},
Method->DoubleExponential];
];
data=Append[data,{Meanx,Meany}];
vardata=Append[vardata,{Varx,Vary}];
data >> 100genmeandata;
vardata >> 100genvardata;

```

• Prev by Date: Re: Urgent but simple problem III
• Next by Date: Labeled TreePlot
• Previous by thread: Specifying significant figures in FindMinimum
• Next by thread: Labeled TreePlot