Решение жестких дифференциальных уравнений и дисковых полок - метод переменного порядка
[, где t,y] = ode15s(odefun,tspan,y0)tspan = [t0 tf], интегрирует систему дифференциальных уравнений , y) изt0 кому tf с начальными условиями y0. Каждая строка в массиве решений y соответствует значению, возвращенному в векторе столбца t.
Все решатели ODE MATLAB ® могут решать системы уравнений вида t, y) или задачи, которые включают массовую ' = f (t, y). Все решатели используют сходные синтаксисы. ode23s решатель может решить проблемы с массовой матрицей, только если массовая матрица постоянна. ode15s и ode23t может решать задачи с массовой матрицей, которая является сингулярной, известной как дифференциально-алгебраические уравнения (DAE). Задайте массовую матрицу с помощью Mass вариант odeset.
[ также использует настройки интеграции, определенные t,y] = ode15s(odefun,tspan,y0,options)options, который является аргументом, созданным с помощью odeset функция. Например, используйте AbsTol и RelTol для задания абсолютных и относительных допусков ошибок или Mass для предоставления матрицы массы.
[ дополнительно находит, где функции (t, y), называемые функциями события, равны нулю. В выходных данных ,t,y,te,ye,ie] = ode15s(odefun,tspan,y0,options)te - время события, ye является решением во время события, и ie - индекс инициируемого события.
Для каждой функции события укажите, должна ли интеграция завершаться нулем и имеет ли значение направление пересечения нуля. Для этого установите 'Events' свойство функции, например myEventFcn или @myEventFcnи создание соответствующей функции: [value,isterminal,direction] = myEventFcn(t,y). Дополнительные сведения см. в разделе Расположение события ОДУ.
ode15s - решатель переменного порядка (VSVO), основанный на числовых формулах дифференциации (NDF) порядков от 1 до 5. Опционально он может использовать формулы обратного дифференцирования (BDF, также известные как метод Gear), которые обычно менее эффективны. Как ode113, ode15s является многоступенчатым решателем. Использовать ode15s если ode45 неудачно или очень неэффективно, и вы подозреваете, что задача жесткая, или при решении дифференциально-алгебраического уравнения (DAE) [1], [2].
[1] Шампин, Л. Ф. и М. У. Райхельт, «The MATLAB ODE Suite», SIAM Journal on Scientific Computing, Vol. 18, 1997, pp. 1-22.
[2] Шампин, Л. Ф., М. У. Райхельт и Я. А. Кьерзенка, «Решение Index-1 DAE в MATLAB и Simulink», SIAM Review, том 41, 1999, стр. 538-552.