I am trying to define an ITO process with random initial state but its only drawing once an uses it for all paths. Here is the code:

proc[\[Mu]_, \[Sigma]_] := 
     t] == \[Mu] \[DifferentialD]t + \[Sigma] \[DifferentialD]w[t], 
  x[t], {x, RandomVariate[NormalDistribution[0, 2]]}, t, 
  w \[Distributed] WienerProcess[]]

Any suggestions how to make this work? Thank you in advance.


  • $\begingroup$ I'll ponder this, my initial impression is no, since the process is evaluated before the ensemble is generated. Would simply generating a table of the random functions and then getting paths/etc. from those be a problem? $\endgroup$ – ciao May 30 '16 at 5:10
  • $\begingroup$ Yes but I was hoping there would be a trick ... $\endgroup$ – Edv Beq May 30 '16 at 5:18
  • $\begingroup$ See my (writing now) answer... $\endgroup$ – ciao May 30 '16 at 5:24

I don't believe this is directly possible - the process is evaluated before the random paths are generated. I'll ponder further, but if you want the same effect, try something like this:

ensemble1 = TemporalData[Table[RandomFunction[proc[1, 1], {0, 1}], 10]];

This will give you the same structure as

ensemble2 = RandomFunction[proc[1, 1], {0, 1},10]

that is, both examples give an ensemble of 10, but the former will give you the random starting positions:

Row[ListLinePlot[#, ImageSize -> 300] & /@ {ensemble1, ensemble2}]

enter image description here

|improve this answer|||||
  • $\begingroup$ Great. If you think of better solution I would be very interested to see it. Thank you. $\endgroup$ – Edv Beq May 30 '16 at 5:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.