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


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:
Tue Oct 24 14:37:06 CEST 2023