der

Производная по времени возврата от операнда

Синтаксис

der(x)
x.der

Описание

equations раздел может содержать der оператор, который возвращает производную по времени от своего операнда:

der(x) = x.der = x˙ = dxdt

der оператор принимает любое числовое выражение в качестве своего аргумента:

  • der применяется к выражениям, которые являются непрерывными, возвращает их производную по времени

  • der применяется к time аргумент возвращает 1

  • der применяется к выражениям, которые являются параметрическими или постоянными, возвращает 0

  • der применяется к счетным операндам, возвращаемым к 0. Для примера, der(a<b) возвращает 0, даже если a и b переменные.

Возврат модуля der - модуль его операнда, разделенная на секунды.

Можно гнездиться der операторы, чтобы задать производные более высокого порядка. Для примера, der(der(x))является производной по времени второго порядка x.

Действуют следующие ограничения:

  • Вы не можете сформировать нелинейные выражения выхода из der. Для примера, der(x)*der(x) приведет к ошибке, поскольку эта система больше не является линейно неявной.

  • Чтобы компонент компилировался, количество дифференциальных уравнений должно равняться количеству дифференциальных переменных.

Примеры

Этот пример показывает реализацию для простой динамической системы:

x˙=1x

Файл Simscape™ выглядит следующим образом:

component MyDynamicSystem
  variables
    x = 0;
  end
  equations
    x.der == (1 - x)*{ 1, '1/s' };  % x' = 1 - x
  end
end

Причина, по которой вам нужно умножить на { 1, '1/s' } является ли это (1-x) не является единым, в то время как левая сторона (x.der) имеет модули 1/с. Обе стороны оператора уравнения должны иметь одинаковые модули.

См. также

Введенный в R2008b