필터 지우기
필터 지우기

Solving non linear delay differential equations with dde23

조회 수: 8 (최근 30일)
Jacobo Levy Abitbol
Jacobo Levy Abitbol 2015년 4월 23일
댓글: Torsten 2015년 4월 23일
i'm working on a delay differential equation that looks like this: f(y,z,y',z')(t)=a(y,z)(t)+b(y,z)(t-tau) g(y,z,y',z')(t)=c(y,z)(t)+d(y,z)(t-tau) The problem is, in MATLAB, dde23 only solves DDE when the differential terms are isolated (y'=F(t,y,ydel,z,zdel) , z'=G(t,y,ydel,z,zdel)).
Do you know if there's a way to work around it (or perhaps another available tool)? I've tried ddnsd assuming a null delay for delayed differential term but it only accepts non zero delays). Also trying to isolate y' and z' has revealed useless. Thank you

채택된 답변

Torsten
Torsten 2015년 4월 23일
Just solve the system
f(y,z,y',z')(t)=a(y,z)(t)+b(y,z)(t-tau) g(y,z,y',z')(t)=c(y,z)(t)+d(y,z)(t-tau)
for y',z' (two nonlinear equations in the unknowns y' and z').
A possible tool is MATLAB's fsolve.
Best wishes
Torsten.
  댓글 수: 2
Jacobo Levy Abitbol
Jacobo Levy Abitbol 2015년 4월 23일
Thank you for your quick answer, but wouldn't fsolve try to approximate y' and z'? (and therefore when there's an equilibrium in the system, it won't be able to represent the dynamical state of the system)
Torsten
Torsten 2015년 4월 23일
If
f(y,z,y',z')= y'^2+sin(z')
g(y,z,y',z')=log(y')+atan(z')
e.g., fsolve will numerically solve the system
y'^2+sin(z')=a(y,z)(t)+b(y,z)(t-tau)
log(y')+atan(z')=c(y,z)(t)+d(y,z)(t-tau)
for y',z' if you declare y' and z' as the unknowns (all other variables are given).
And this s exactly what is needed for dde23 to work.
Best wishes
Torsten.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Delay Differential Equations에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by