MathGroup Archive 1999

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Simulation

  • To: mathgroup at smc.vnet.net
  • Subject: [mg19411] Re: [mg19353] Simulation
  • From: "Mark E. Harder" <harderm at ucs.orst.edu>
  • Date: Mon, 23 Aug 1999 13:57:20 -0400
  • Sender: owner-wri-mathgroup at wolfram.com

Roberto,
    First, replace the Random[Integer,...] function with a user-defined
function ranStep, which returns -1 and 1 1/6 of the time and 0 the remainder
of the times (Press, et.al. "Numerical Recipes in Fortran" describe this
method of converting a uniform random distribution to one with unequal
probabilities):

ranStep[]:=If[
  Random[Real,{0.,1.}]<N[1/6],Return[-1],
   If[Random[Real,{0.,1.}]>N[5/6],Return[1],Return[0] ] ]

Then use it in the statement you already wrote:


data=Table[NestList[#+0.01*ranStep[]&,5,100]]

Out[113]=
{5,5,4.99,4.99,4.99,4.99,4.99,4.99,4.99,4.99,4.99,4.99,4.99,4.99,4.99,5.,5.,

4.99,4.98,4.98,4.98,4.98,4.98,4.98,4.98,4.98,4.98,4.97,4.97,4.97,4.97,4.97,

4.98,4.98,4.97,4.97,4.96,4.96,4.96,4.96,4.96,4.96,4.97,4.97,4.96,4.95,4.95,

4.95,4.95,4.95,4.95,4.95,4.96,4.96,4.96,4.95,4.95,4.95,4.94,4.94,4.94,4.94,

4.93,4.93,4.93,4.93,4.93,4.93,4.94,4.94,4.94,4.94,4.94,4.94,4.94,4.94,4.95,

4.96,4.97,4.97,4.98,4.98,4.98,4.98,4.99,4.99,4.99,4.99,4.99,4.98,4.97,4.98,
  4.97,4.97,4.96,4.96,4.97,4.96,4.96,4.95,4.95}

-mark



-----Original Message-----
From: Roberto Diego <r-diego at develnet.es>
To: mathgroup at smc.vnet.net
Subject: [mg19411] [mg19353] Simulation


>Hi there,
>
>I need help on how the expression:
>
>data=Table[NestList[#+0.01*Random[Integer,{-1,1}]&,5,1000]];
>
>could be modified in order to get -1 with probability 1/6, 0 with p 4/6 and
>1 with p 1/6 instead of 1/3,1/3,1/3
>
>Thanks a lot
>
>Roberto Diego
>Sociedad de Bolsas
>
>
>



  • Prev by Date: Re: Pattern example
  • Next by Date: Re: Simulation
  • Previous by thread: Simulation
  • Next by thread: Re: Simulation