# Precise definition of Wiener process

**URL:** <https://discourse.julialang.org/t/precise-definition-of-wiener-process/118213>\
**Category:** General Usage\
**Tags:** question\
**Created:** [August 15, 2024, 7:47am UTC](https://discourse.julialang.org/t/precise-definition-of-wiener-process/118213 "2024-08-15T07:47:22Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![acubed](https://avatars.discourse-cdn.com/v4/letter/a/b19c9b/32.png) [@acubed](https://discourse.julialang.org/u/acubed)\
**Post date:** [August 15, 2024, 7:47am UTC](https://discourse.julialang.org/t/precise-definition-of-wiener-process/118213/1 "2024-08-15T07:47:22Z")

</div>

Having used `DifferentialEquations` for two years, I have understood that I still do not understand the precise definiton of Wiener process.

I try to solve the following system of SDEs,

```julia
function determ_dyn!(du, u, p, t)
    omega, A, B = p
    du[1] = B+A*cos(omega*t)
    du[2] = 0
    nothing
end

function noise!(du, u, p, t)
    omega, A, B = p
    du[1] = 1/(2*1im)*(exp(1im*u[1])*u[2]-conj(u[2])*exp(-1im*u[1]))
    du[2] = -1/2*(1-abs(u[2])^2)*exp(-1im*u[1])
    nothing
end

```

and write

```julia
t0 = 100
A = 0.5
B = 1.0
omega = 1.0
u0 = [2*pi*rand(), 0.2*rand()+1im*0];
tspan = (0., t0)
p = (omega, A, B)

prob = SDEProblem(determ_dyn!, noise!, noise=WienerProcess(0.8, 0.1), u0, tspan, p)
sol = solve(prob);

```

I assume that `noise=WienerProcess(0.8,0.1)` corresponds to the Wiener process with drift \mu=0.8 and volatility \sigma=0.1. But I cannot find in documentation how to define Wiener process with non-zero mean.

---

<div class="post-metadata">

**Author:** ![dlakelan](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/dlakelan/32/8491_2.png) [@dlakelan](https://discourse.julialang.org/u/dlakelan)\
**Post date:** [August 15, 2024, 12:22pm UTC](https://discourse.julialang.org/t/precise-definition-of-wiener-process/118213/2 "2024-08-15T12:22:29Z")

</div>

Using nonstandard analysis (in which we have truly infinitesimal numbers such as dt) I suspect the Weiner process you mention is the process such that x(0)=0 and x(t+dt) = x(t) + .8 dt + Normal(0,sigma\*sqrt(dt))

That is, the increments of the process come from a linear extrapolation plus a random normal increment whose VARIANCE grows linearly with time.

This is consistent with the sum of independent random variables having variance equal to the sum of the variances and the number of random variables in an interval of time proportional to the size of the time interval.

I’ve found nonstandard analysis to be a much more simple intuitive view of analysis in general and stochastic stuff in particular.

However, I haven’t read the docs on the Julia stuff so I could be misinterpreting.

---

<div class="post-metadata">

**Author:** ![Tamas\_Papp](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/tamas_papp/32/25949_2.png) [@Tamas\_Papp](https://discourse.julialang.org/u/Tamas_Papp)\
**Post date:** [August 15, 2024, 12:37pm UTC](https://discourse.julialang.org/t/precise-definition-of-wiener-process/118213/3 "2024-08-15T12:37:29Z")

</div>

> [@acubed](#):
>
> But I cannot find in documentation how to define Wiener process with non-zero mean.

Technically, those are no longer [Wiener processes](https://en.wikipedia.org/wiki/Wiener_process), if you have a nonzero mean and non-unit volatility, you have an [Itô process](https://en.wikipedia.org/wiki/It%C3%B4_calculus#It%C3%B4_processes).

---

<div class="post-metadata">

**Author:** ![acubed](https://avatars.discourse-cdn.com/v4/letter/a/b19c9b/32.png) [@acubed](https://discourse.julialang.org/u/acubed)\
**Post date:** [August 15, 2024, 3:10pm UTC](https://discourse.julialang.org/t/precise-definition-of-wiener-process/118213/4 "2024-08-15T15:10:51Z")

</div>

But according to Wiki, see [Wiener process - Wikipedia](https://en.wikipedia.org/wiki/Wiener_process#Related_processes) , I conclude that is called a Wiener process with drift. In addition, at least in Wolfram Mathematica Wiener process by definition has two parameters, mean & variance.

---

<div class="post-metadata">

**Author:** ![Tamas\_Papp](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/tamas_papp/32/25949_2.png) [@Tamas\_Papp](https://discourse.julialang.org/u/Tamas_Papp)\
**Post date:** [August 15, 2024, 3:20pm UTC](https://discourse.julialang.org/t/precise-definition-of-wiener-process/118213/5 "2024-08-15T15:20:54Z")

</div>

Yes, terminology is a muddle. Textbooks I am familiar with usually define “the” Wiener process and just transform to Itô from there.

---

<div class="post-metadata">

**Author:** ![acubed](https://avatars.discourse-cdn.com/v4/letter/a/b19c9b/32.png) [@acubed](https://discourse.julialang.org/u/acubed)\
**Post date:** [August 15, 2024, 4:29pm UTC](https://discourse.julialang.org/t/precise-definition-of-wiener-process/118213/6 "2024-08-15T16:29:00Z")

</div>

Make sense, thank you
