Компьютерное моделирование физических явлений. Малютин В.М - 66 стр.

UptoLike

{{0,1},{1,0},{0,-1},{-1,0}}[[Table[Random[Integer, {1, 4}], {n}] ]]
По аналогии с расчетом одномерного блуждания, определите процедуру Walk2D,
результатом которой будет список местоположений при блуждании, n - шаг блуждания
решетки, который начинается в начале координат:
Walk2D[n_] := FoldList[Plus, {0, 0},
{{0,1},{1,0},{0,-1},{-1,0}}[[Table[Random[Integer, {1, 4}], {n}]]]]
Выполним:
Walk2D[30]
и получим один из вариантов координат нашего блуждания:
{{0, 0}, {-1, 0}, {-1, 1}, {0, 1}, {0, 2}, {-1, 2}, {0, 2}, {0, 1}, {-1, 1}, {-1, 2}, {0, 2}}
Мы можем получить снимок блуждания, используя графическую встроенную функцию Line,
которая прорисовывает линию между соседними точками блуждания.
ShowWalk2D[coords_, opts___]:=Show[Graphics[Line[coords],
opts, AspectRatio -> Automatic]]
Для n=4000:
ShowWalk2D[ Walk2D[4000] ]
прорисует, например:
Программа n-мерного случайного блуждания
Используя, такое средство математики, как анонимная функция, можно записать случайное
блуждание в n-мерном таким образом:
WalkND[n_,d_] := NestList[(#+(-1)^Table[Random[Integer],{d}])&,
Table[0,{d}],n]
Для трехмерного случайного блуждания из 3000 шагов построим график:
Show[Graphics3D[Line[WalkND[3000,3]]]]
66