Forums before death by AOL, social media and spammers... "We can't have nice things"
|    sci.math.symbolic    |    Symbolic algebra discussion    |    10,432 messages    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
|    Message 8,540 of 10,432    |
|    mdc.ferreira@campus.fct.unl.pt to All    |
|    Random walk    |
|    23 Mar 14 08:39:37    |
   
   RandomWalk[n_, d_] := NestList[(# + Table[Random[Real, {-1, 1}], {d}]) &,   
   Table[0, {d}], n];   
      
   ThreeDim = RandomWalk[5000, 3];ThreeDim = RandomWalk[5000, 3];   
      
   I defined a security boundary for a random walk:   
   p = 5000;(*steps*)   
   tc = 15;(*cube edge length*)   
   tp = 0.2;   
   random = Accumulate[   
   Join[{RandomReal[{-tc, tc}/2, 3]},   
   RandomVariate[NormalDistribution[0, tp], {p, 3}]]];   
   periodizedWalk = Mod[random, tc, -tc/2];   
   splitPeriodizedWalk =   
   Split[periodizedWalk, EuclideanDistance[#1, #2] < tc/2 &];   
   With[{cube = First[PolyhedronData["Cube"]]},   
   Graphics3D[{{Opacity[0.1], Scale[cube, tc]}, Line[random]},   
   Boxed -> False]]   
   and now i want to obtain a sample of the random times at which the random walk   
   crosses the boundary for the first time. Something like this:   
    W = {}; For[i = 1, i <= 5000, i++,   
    PosFinal = {0, 0}; EME = 1;   
    While[True,   
    PosFinal = PosFinal + step[Random[]];   
    If[Norm[PosFinal] > 15, Break[]];   
       
    EME=EME+1;   
    ];   
    W=Append[W,EME];   
   ]   
   but i want these two codes to be related and the second one that gives me the   
   sample of the random times at which the random walk crosses the boundary for   
   the first time is very slow, my pc takes too much time to run it. Would like   
   some help please    
   emoticon   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   
|
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
(c) 1994, bbs@darkrealms.ca