I would like to simulate two processes, Ito Process "A" and Ito Process "B". What I need is to have only one path of process "B" but many paths of process "A" - however, I need all these paths of process "A" to be generated using the diffusion term that generated the single path of process "B". To clarify, say I have the following two stochastic differential equations that describe, respectively, process "A" and "B": \begin{equation} \begin{aligned} da_t &=\mu_1a_tdt+a_t \left(\sigma_1dZ_t+\sigma_2dW_t\right)\\ db_t &=\mu_2b_tdt+\sigma_3dZ_t \end{aligned} \end{equation} where $Z_t,W_t$ are standard Brownian motions (Wiener processes). I would therefore first like to sample one path of the process driven by the second equation and then (or possibly at the same time) sample many paths of the process driven by the first equation using the same (realized) path of $Z_t$. The difference among these paths would then come only from $W_t$. Is there an easy way to do this? I tried the following, that does allow me to use the same $Z_t$ for both processes "A" and "B" but obviously I need new path of "B" to get a new path of "A".
proc=ItoProcess[{\[DifferentialD]a[t]==\[Mu]1 a[t]\[DifferentialD]t+a[t](\[Sigma]1 \[DifferentialD]Z[t]+\[Sigma]2 \[DifferentialD]W[t]),\[DifferentialD]b[t]==\[Mu]2 b[t]\[DifferentialD]t+\[Sigma]3 \[DifferentialD]Z[t]},{a[t],b[t]},{{a,b},{1,1}},{t,0},{W\[Distributed]WienerProcess[],Z\[Distributed]WienerProcess[]}]
ItoProcess[{{\[Mu]1 a[t],\[Mu]2 b[t]},{{\[Sigma]2 a[t],\[Sigma]1 a[t]},{0,\[Sigma]3}},{a[t],b[t]}},{{a,b},{1,1}},{t,0}]
One possible way I can think of would be to generate a path of $Z_t$ first, recover the values, and then manually feed them to both processes but I am not sure whether that would work well within ItoProcess
and RandomFunction
.