Решатели SDDE
Рекомендуемые методы
Рекомендуемым методом для решения задач SDDE являются алгоритмы SDE
. Для SDE достаточно использовать тот же алгоритм, что и в решателе SDE
, а StochasticDelayDiffEq.jl преобразует его в SDDE-решатель. Рекомендации для решателей SDDE совпадают с рекомендациями для SDE, за исключением того, что рекомендуется использовать решатели только до сильного первого порядка. Также обратите внимание, что 1-й порядок в настоящее время доступен только при отсутствии члена запаздывания в функции диффузии : запаздывания в функции дрейфа совместимы со сходимостью первого порядка. Теоретические вопросы применения методов более высокого порядка (1,5+) в SDDE в настоящее время неизвестны.
Отметим, что адаптивная дискретизация по времени использует ту же технику отбраковки выборок с памятью, что и SDE, однако доказательство сходимости для SDDE неизвестно.
Пример
function hayes_modelf(du, u, h, p, t)
τ, a, b, c, α, β, γ = p
du .= a .* u .+ b .* h(p, t - τ) .+ c
end
function hayes_modelg(du, u, h, p, t)
τ, a, b, c, α, β, γ = p
du .= α .* u .+ γ
end
h(p, t) = (ones(1) .+ t);
tspan = (0.0, 10.0)
pmul = [1.0, -4.0, -2.0, 10.0, -1.3, -1.2, 1.1]
padd = [1.0, -4.0, -2.0, 10.0, -0.0, -0.0, 0.1]
prob = SDDEProblem(hayes_modelf, hayes_modelg, [1.0], h, tspan, pmul;
constant_lags = (pmul[1],));
sol = solve(prob, RKMil())