Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
5.4.1 - Русский

Change language to:
English - Français - 日本語 - Português -

Please note that the recommended version of Scilab is 2025.0.0. This page might be outdated.
See the recommended documentation of this function

Scilab help >> Дифференциальное счисление, интегрирование > odeoptions

odeoptions

установка опций для программ решения ОДУ

Последовательность вызова

odeoptions()

Описание

Эта функция интерактивно отображает команды, которые должны выполняться для установки различных опций для программ решения ОДУ. Контекстная переменная %ODEOPTIONS устанавливает опции.

Функция ode проверяет существует ли эта переменная и, если она она существует, то использует её. Для использования значений по умолчанию вы должны очистить эту переменную. Чтобы создать эту переменную вы должны выполнить инструкцию %ODEOPTIONS=odeoptions().

Переменная %ODEOPTIONS является вектором со следующими элементами:

[itask, tcrit, h0, hmax, hmin, jactyp, mxstep, maxordn, maxords, ixpr, ml, mu].

Значение по умолчанию: [1,0,0,%inf,0,2,500,12,5,0,-1,-1].

Значение элементов описывается ниже.

  • itask устанавливает режим интегрирования:
    • 1: нормальное вычисление в определённые моменты времени
    • 2 : вычисления в точках сетки (указанных в первой строке вывода функции ode)
    • 3 : один шаг на одной внутренней точке сетки и возврат
    • 4 : нормальное вычисление без превышения tcrit
    • 5 : один шаг без превышения tcrit и возврат
  • tcrit критическое время, используемое только если itask равняется 4 или 5, как описано выше
  • h0 первый подбираемый шаг
  • hmax максимальный размер шага
  • hmin минимальный размер шага
  • jactype устанавливает свойства матрицы Якоби:
    • 0: функциональные итерации, матрица Якоби не используется (только для методов "adams" или "stiff")
    • 1: заданная пользователем полная матрица Якоби
    • 2: внутренне рассчитанная полная матрица Якоби
    • 3: внутренне рассчитанная диагональная матрица Якоби (только для методов "adams" или "stiff")
    • 4: заданная пользователем ленточная матрица Якоби (см. ml и mu ниже)
    • 5: внутренне рассчитанная ленточная матрица Якоби (см ml и mu ниже)
  • maxordn максимально разрешённый нежёсткий порядок, не больше 12
  • maxords максимально разрешённый жёсткий порядок, не больше 5
  • ixpr уровень печати, 0 или 1
  • ml, mu

    Если jactype равен 4 или 5, то ml и mu являются нижней и верхней половинными полосами ленточной матрицы Якоби, где лентой являются i,j с i-ml <= j <= ny-1.

    Если jactype равен 4, тогда функция Якоби должна возвращать матрицу J, которая имеет размерность ml+mu+1 x ny (где ny=dim вектора y в ydot=f(t,y)) так что первый столбец J составлен из mu нулей, за которыми следуют df1/dy1, df2/dy1, df3/dy1, ... (1+ml возможно ненулевых элементов), второй столбец составлен из mu-1 нулей, за которыми следуют df1/dx2, df2/dx2 и т. д.

Примеры

В следующем примере мы решим обыкновенное дифференциальное уравнение dy/dt=y^2-y sin(t)+cos(t) с начальным условием y(0)=0, требуя , чтобы решение хранилось в каждом значении сетки.

function ydot=f(t, y)
    ydot=y^2-y*sin(t)+cos(t)
endfunction
%ODEOPTIONS=[2,0,0,%inf,0,2,500,12,5,0,-1,-1];
y=ode(0,0,%pi,f);
plot(y(1,:),y(2,:))
clear %ODEOPTIONS

Смотрите также

  • ode — программа решения обыкновенных дифференциальных уравнений
Report an issue
<< odedc Дифференциальное счисление, интегрирование Основные функции >>

Copyright (c) 2022-2024 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Tue Apr 02 17:37:54 CEST 2013