Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
6.1.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 >> Дифференциальное счисление, интегрирование > ode_discrete

ode_discrete

программа решения обыкновенных дифференциальных уравнений, моделирование дискретного времени

Синтаксис

y = ode("discrete",y0,k0,kvect,f)

Аргументы

y0

вещественный вектор или матрица (начальные условия).

t0

вещественный скаляр (начальное время).

f

внешняя функция, т.е. функция или символьная строка или список.

k0

целое число (начальное время).

kvect

вектор целочисленных значений.

Описание

С таким синтаксисом (первый аргумента равен "discrete") ode вычисляет рекурсивно y(k+1)=f(k,y(k)) из исходного состояния y(k0) и возвращает y(k) для k в kvect. kvect(1) должен быть больше либо равен k0.

Другие аргументы и другие опции те же самые, что и для ode, см. справку по ode.

Примеры

y1 = [1;2;3];
deff("yp = a_function(k,y)", "yp = A*y + B*u(k)")
A = diag([0.2,0.5,0.9]);  B = [1;1;1];  u = 1:10;  n = 5;
y = ode("discrete", y1, 1, 1:n, a_function);
y(:,2) - (A*y1+B*u(1))

// Теперь y вычисляется в [y3,y5,y7,y9]
y = ode("discrete", y1, 1, 3:2:9, a_function)

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

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

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:
Mon Jan 03 14:39:52 CET 2022