Processing math: 100%

Friday, November 27, 2015

Illustration of the Dyson Ornstein-Uhlenbeck process

I define the Dyson Ornstein-Uhlenbeck process as dXt=αXtdt+Hdt
with α>0 and H a random matrix from the Gaussian Unitary Ensemble of n×n Hermitian matrices. The eigenvalues λi(t) of Xt then have the following dynamics dλi=αλidt+ji1λiλjdt+dBi
where B1,,Bn are independent Brownian processes. In this post I illustrate the process (2) numerically.
Process (2) is a random process with mean version to zero because of the αλidt term. The eigenvalues λi(t) also repel one another because of the term ji1λiλj. I now illustrate this behaviour for α=20 and n=5. The code is quite similar to the code I used in the previous blog post. The only difference is that I use the following code to simulate Xt

(*Simulates a path of the Dyson Ornstein-Uhlenbeck process
in: The dimension of the matrices is size x size. 
T is the maximum time to simulate. 
NSteps is in how many steps you simulate. 
out: a list of matrices X_t*) 
SimulateOnePathOU[alpha_, Size_, T_, NSteps_] := Module[{dt = T/NSteps, t, H, path}, 
path = ConstantArray[0, NSteps + 1]; 
path[[1]] = ConstantArray[0, {Size, Size}];
For[t = 1, t <= NSteps, t++, H = RandomMatrixGUE[Size]; 
path[[t + 1]] = - alpha path[[t]] dt + path[[t]] + H Sqrt[dt]]; 
path] 

This produces the following graph
The eigenvalues  λ1,λ2,,λ5 as function of time
The paths λi(t) do not cross one another; they also do not spread out because each one tries to get back to zero. If I use the same value of α to simulate five independent Ornstein-Uhlenbeck processes, I get a picture like this
Here, the paths also do not spread out because they are driven back to zero, but the paths cross many times.

Related: Illustration of Dyson Brownian motion

No comments:

Post a Comment