I am no expert on SDE but I've been messing around with MMA's built in functions and it makes it quite easy to do some simple simulations. I bumped into this system of equations (below) in a paper and was trying to tweak the documentation center equations to simulate it.
It describes biological growth of biomass $X$, in a reactor that is fed substrate $S$, and the growth of bacteria is defined by $(dX)_g$
$$(dX)_g= \mu S/(K_j+S) *Xdt+\sigma dW,$$
$$dX=(dX)_g-Q_eXdt+(Q_rX_r-Q_oX)dt+\sigma_i dW$$
$$dS=-1/Y (dX)_g+Q_f(S_f-S)dt+\sigma_j dW $$
And $W, W_i, W_j$ are Wiener processes, $\sigma$s are volatility and $\mu$ is defined as the specific growth rate but represents drift.
Where the coefficients: $S_f, X_r, Y, Q_o,Q_f,Q_r,Q_e$ are scalars and constants (I can provide what they stand for is requested).
My approach was to define $(dX)_g$ first, simulate it and call it in the equations for $dX$ and $dS$: Qe = 10; Qr = 10; Xr = 30; Qo = 10; [Sigma] = 10; [Sigma]2 = 20; [Mu] = 0.25; Y = 0.25; Qf = 10; Sf = 300; Ks = 200;
a = ItoProcess[\[DifferentialD]xg[t] == \[Mu]*s[t]/(Ks + s[t])*x[t] \[DifferentialD]t + \[Sigma] \[DifferentialD]w[t], xg[t], {xg, 25}, t, w \[Distributed] WienerProcess[]];
aproc = RandomFunction[%, {0., 5., 0.01}]
And then call the function aproc
I defined above in the two equations for $dX$ and $dS$:
b = ItoProcess[\[DifferentialD]s[t] == -1/Y (\[Mu]*s[t]/(Ks + s[t])*x[t] \[DifferentialD]t + \[Sigma] \[DifferentialD]w[t]) +Qf (Sf - s[t]) \[DifferentialD]t + \[Sigma] \[DifferentialD]w[t], {s[t], x[t]}, {s, 200}, t, w \[Distributed] WienerProcess[]];
bproc = RandomFunction[%, {0., 5., 0.01}];
c = ItoProcess[\[DifferentialD]x[t] == (\[Mu]*s[t]/(Ks + s[t])*x[t] \[DifferentialD]t + \[Sigma] \[DifferentialD]w[t]) - Qe*x[t] \[DifferentialD]t +(Qr*Xr - Qo*x[t]) \[DifferentialD]t + \[Sigma] \[DifferentialD]w[t], {x[t],s[t]}, {x, 100}, t, w \[Distributed] WienerProcess[]];
cproc = RandomFunction[%, {0., 5., 0.01}];
but I need to add the $(dX)_g$ into the equation before Qe*x[t] \[DifferentialD]t
I tried defining its SDE separately and simulating it with RandomFunction
then inserting it into the $dX$ equation above and clearly saw that's not the way to do this...
So my question is: How do I write the system of SDE above? And perhaps shed some insight as to whether the ItoProcess
is what I want to use?