🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: sci.math.stat
Article #1

Re: generating correlated random numbers

#1
From: John Salmon
Date: Tue, 27 Oct 1992 07:38
51 lines
3002 bytes
I wrote:
>I'm looking for methods of creating correlated random variables.
>I am especially interested in "fast" methods.  I already know that
>given a covariance matrix C_{ij}, and a set of independent random variables,
>u_i, I can create a set of random variables y = Au, such that
>the covariance matrix of the y_i is C_{ij}.
> ...

Thanks for the responses so far!

A couple of people indicated that more information about the
problem might be helpful.  Of course, if I could reliably distinguish
between crucial and irrelevant details, I would have solved the problem
already :-).

The basic problem is to create an instance of a 3-dimensional
stochastic process, sampled at a large number of arbitrary points in
space.  I want the samples.  I.e., Given points (x_1, ..., x_n), I
want the values of the function f(x_i), where f is an instance of a
stochastic process with given correlation function \zeta(x).

If the points x_i were on a lattice, I could do it in Fourier space.
Indeed, even if the points were more-or-less uniformly distributed I
could probably interpolate from some oversampled lattice.
Unfortunately, the points are highly clustered in some areas and
sparse in other areas.  Laying down a lattice that covers the dense
areas would be far too expensive.

One can mathematically convert this problem into the one quoted above
involving the correlation matrix C_{ij} = \zeta(x_i - x_j).  With N of
10^7, the matrix elements of C would fill most of the disks in North
America.  Storing C_{ij} (or its Cholesky factorization) is clearly
out of the question.  I really need to get A.u without ever explicitly
computing the elements of A.  It's possible when the points are on a
lattice, which gives one hope that by some clever machinations it might
also be possible if the points aren't on a lattice.

For those who care, the problem arises from the generation of initial
conditions for very large astrophysical N-body simulations, where
the power-spectrum of initial fluctuations is imposed at some early
epoch, and then the system is allowed to evolve under the influence of
gravity.  The f(x_i) is the mass of the body at position x_i.  The
state-of-the-art uses x_i on a lattice, and I'd like to improve on that.

Thanks 
--
John Salmon		 Internet: johns@delilah.ccsf.caltech.edu
206-49 Caltech		 UUCP: johns%delilah.ccsf.caltech.edu@uunet.uu.net
Pasadena, CA 91125 USA	 Bitnet: johns@caltech.bitnet
(818)356-2907		 delilah.ccsf.caltech.edu=[131.215.145.137]
Technical Details
Message-ID: <JOHNS.92Oct26233814@delilah.ccsf>
Path: arc1-ca.pugleaf.net!sparky!uunet!europa.asd.contel.com!darwin.sura.net!sgiblab!bridge2!news.claremont.edu!nntp-server.caltech.edu!nntp-server!johns

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!sparky!uunet!europa.asd.contel.com!darwin.sura.net!sgiblab!bridge2!news.claremont.edu!nntp-server.caltech.edu!nntp-server!johns
From: johns@delilah.ccsf (John Salmon)
Newsgroups: sci.math.stat
Subject: Re: generating correlated random numbers
Message-ID: <JOHNS.92Oct26233814@delilah.ccsf>
Date: 27 Oct 92 07:38:14 GMT
Distribution: all
Organization: Caltech Concurrent Supercomputing Facility.
Lines: 51
NNTP-Posting-Host: delilah.ccsf.caltech.edu