Does cummax works in a sde solver?

42 次查看(过去 30 天)
Salvatore Bianco
Salvatore Bianco 2024-6-23,17:14
编辑: Torsten 2024-6-24,8:55
I want to model a 2-dimension SDE where the drift and the diffusion are:
% solve the system
F = @(t, X) [mu*pi(y-(X(2)-z)+(X(1)-v)+max(y, cummax(X(2)-X(1)))-y, X(2))-c(y-(X(2)-z) ...
+(X(1)-v)+max(y, cummax(X(2)-X(1)))-y, X(2)); muz*X(2)];
G = @(t, X) [sigma*pi(y-(X(2)-z)+(X(1)-v)+max(y, cummax(X(2)-X(1)))-y, X(2)) 0; 0 sigmaz*X(2)];
X = sde(F, G, "StartState", x);
[X, T] = simByEuler(X, n, 'DeltaTime', dt);
Here, pi is some function that I have defined before in the code. My question is: does here cummax works on all previous values of X(2)-X(1), or it takes it as a scalar at every iteration? In particular
max(y, cummax(X(2)-X(1)))
should represent the process .
Thank you so much for your attention, I hope I made myself clear.

回答(1 个)

Torsten
Torsten 2024-6-23,18:04
编辑:Torsten 2024-6-23,18:31
My question is: does here cummax works on all previous values of X(2)-X(1), or it takes it as a scalar at every iteration?
It takes it as a scalar in each iteration because X(2)-X(1) is a scalar.
I'm not an expert in SDEs, but it seems that your equation does not belong to the class that can be solved using "sde".
  2 个评论
Salvatore Bianco
Salvatore Bianco 2024-6-24,8:29
So, there is a method I can use that keeps track of all previous values?
Torsten
Torsten 2024-6-24,8:53
编辑:Torsten 2024-6-24,8:55
I think even if there were a way to keep track of them, your equation cannot be solved with "sde" because F and G in the underlying equation can only depend on X_t, not on X_s for s < t.
But as said: I'm not an expert in this field - I might be mistaken. (And I also don't know how to keep track of them.)

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Stochastic Differential Equation (SDE) Models 的更多信息

产品


版本

R2024a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by