Suppose you have a linear Markov process, and you can write it as
x(t+1) = Ax(t).
Here x is the vector of values, and A is the transition matrix. Since this is linear, it can be solved analytically, and simulated numerically.
A nonlinear form of the above system is
x(t+1) = A[x(t)]x(t).
Here A[x(t)] is the transition matrix, whose entries depend on current x(t) values.
Due to the nonlinearity, this has not analytical solution. But, how can I run some simulations to see the evolution of such a system. For the simple case, I can use A[x(t)] = A(x(t)^0.5), or any other exponent.
Is there a way to do a simulation like this (e.g., 100 steps)?
$\begingroup$
$\endgroup$
Add a comment
|
1 Answer
$\begingroup$
$\endgroup$
If you make your A
matrix a function (but avoid starting with capital letters), like aMatrix[x_] := ...
then you can use Nest
:
Nest[aMatrix, x0, 100]
where x0
is the starting vector.