Функции > Решение и оптимизация > Функции блока решения > Алгоритмы для ОДУ
  
Алгоритмы для ОДУ
Когда функцию odesolve вызывают в блоках решения, PTC Mathcad выполняет решение обыкновенных дифференциальных уравнений (ОДУ) с помощью одного из следующих методов.
Адамс/BDF - вызывается решатель Adams , использующий методы Адамса - Башфорта. Если функция odesolve обнаруживает, что система ОДУ является жесткой, она переключается на решатель BDF, использующий формулы обратного дифференцирования (BDF).
Фиксированный - вызывается решатель rkfixed , использующий метод Рунге - Кутты с постоянным шагом.
Адаптивный - вызывается решатель Rkadapt, использующий метод Рунге - Кутты с адаптивным шагом.
Radau - вызывается решатель Radau, использующий алгоритм Радо для систем, которые являются жесткими или имеют алгебраические ограничения. Метод Radau является единственным методом, позволяющим решать системы с алгебраическими ограничениями.
Дополнительные сведения
AdamsBDF - решатель по умолчанию для функции odesolve.
Некоторые решатели ОДУ используют TOL в качестве необязательного аргумента. Функция odesolve не использует этот аргумент. Если требуется указать значение TOL при вызове решателя, необходимо использовать решатель ОДУ напрямую. Можно также определить встроенную переменную TOL выше области блока решения.
Функция odesolve возвращает решение в виде функции независимой переменной. Чтобы вычислить эту функцию, odesolve сохраняет решения в ряде равноотстоящих точек интервала интегрирования, а затем выполняет интерполяцию между этими точками с помощью функции lspline. Число точек определяется необязательным аргументом intvls+ или его значением по умолчанию равным 1000. В адаптивных и жестких методах в областях с большей изменчивостью решения добавляется больше интервалов.
Для независимой переменной сплайн из odesolve ограничен указанным диапазоном. В результате численной производной не удается обработать концы диапазона, поскольку она не преобразуется обратно в одностороннюю производную. Численная производная остается двусторонней и должна вычислять значение функции на обеих сторонах ссылочного значения перед тем, как возвращать результат.