Решите жесткие дифференциальные уравнения — метод трапеций + формула дифференцирования назад
[t,y] = ode23tb(odefun,tspan,y0)
[t,y] = ode23tb(odefun,tspan,y0,options)
[t,y,te,ye,ie] = ode23tb(odefun,tspan,y0,options)
sol = ode23tb(___)
, где [t,y] = ode23tb(odefun,tspan,y0)
tspan = [t0 tf]
, интегрирует систему дифференциальных уравнений от t0
до tf
с начальными условиями y0
. Каждая строка в массиве решения y
соответствует значению, возвращенному в векторе - столбце t
.
Все решатели MATLAB® ODE могут решить системы уравнений формы , или проблемы, которые включают большую матрицу, . Решатели все использование подобные синтаксисы. Решатель ode23s
только может решить проблемы с большой матрицей, если большая матрица является постоянной. ode15s
и ode23t
могут решить проблемы с большой матрицей, которая сингулярна, известна как дифференциально-алгебраические уравнения (ДАУ). Задайте большую матрицу с помощью опции Mass
odeset
.
также использует настройки интегрирования, заданные [t,y] = ode23tb(odefun,tspan,y0,options)
options
, который является созданным использованием аргумента функции odeset
. Например, используйте AbsTol
и опции RelTol
, чтобы задать допуски абсолютной и относительной погрешности или опцию Mass
, чтобы обеспечить большую матрицу.
дополнительно находит, где функции (t, y), вызвал функции события, являются нулем. В выводе [t,y,te,ye,ie] = ode23tb(odefun,tspan,y0,options)
te
является временем события, ye
является решением во время события, и ie
является индексом инициированного события.
Для каждой функции события задайте, должно ли интегрирование отключить в нуле и имеет ли направление нулевого пересечения значение. Сделайте это путем установки свойства 'Events'
на функцию, такую как myEventFcn
или @myEventFcn
, и создания соответствующей функции: [value
, isterminal
, direction
] = myEventFcn
(t
, y
). Для получения дополнительной информации смотрите Местоположение События ОДУ.
возвращает структуру, которую можно использовать с sol = ode23tb(___)
deval
, чтобы оценить решение в любой точке на интервале [t0 tf]
. Можно использовать любую из комбинаций входных аргументов в предыдущих синтаксисах.
ode23tb
является реализацией TR-BDF2, неявной формулы Рунге-Кутта с шагом метода трапеций как его первая стадия и формула дифференцирования назад порядка два как его второй этап. Конструкцией та же матрица итерации используется в оценке обоих этапов. Как ode23s
и ode23t
, этот решатель может быть более эффективным, чем ode15s
для проблем с грубыми допусками [1], [2].
[1] Банк, Р. E. W. C. Корэн младший W. Fichtner, Э. Гросс, Д. Роуз и Р. Смит, “Переходное Моделирование Кремниевых Устройств и Схем”, Сделка IEEE CAD, 4 (1985), стр 436–451.
[2] Шемпин, L. F. и М. E. Осия, “Анализ и реализация TR-BDF2”, прикладная числовая математика 20, 1996.