I need to define a new process from for example Wiener process like $U(t)=f(W(t))$, (for example $f(x)=1+x^2$ ) and then calculate the average like $\langle U(t)U(s)\rangle$. Is it possible?
$\begingroup$ $\endgroup$
2 - $\begingroup$ yes for example simply raising the processes to powers does not work: WienerProcess[]^2 $\endgroup$richard– richard2014-06-02 13:31:00 +00:00Commented Jun 2, 2014 at 13:31
- $\begingroup$ Comment not an answer, in the documentation pages for the forthcoming Wolfram Language release (and the version of M10 on Raspberry Pi) you can see there is such functionality coming - reference.wolfram.com/language/ref/TransformedProcess.html $\endgroup$Charlotte Hadley– Charlotte Hadley2014-06-04 21:00:34 +00:00Commented Jun 4, 2014 at 21:00
Add a comment |
1 Answer
$\begingroup$ $\endgroup$
Possibly an overkill for this case but quite general :
define a simple process which returns the variable you want
procU = ItoProcess[\[DifferentialD]x[t] == \[DifferentialD]w[t], 1 + x[t]^2, {x, 0}, {t, 0}, w \[Distributed] WienerProcess[]] ; now you can use it as :
Mean[procU[t]] (* 1 + t *) CovarianceFunction[procU, s, t] (* 2 Min[s, t]^2 *)