Блок Derivative аппроксимирует производную входного сигнала по времени моделирования . Истинное значение производной аппроксимируется отношением , где — приращение входного сигнала, а — изменение во времени с момента предыдущего (основного) шага расчета.
Этот блок принимает один входной сигнал и выдает один выходной. Начальное значение выходного сигнала равно нулю.
Точное соотношение между входом и выходом блока:
где
— текущее время моделирования;
— время вычисления предыдущего значения, которое совпадает со временем последнего основного временного шага.
Выходной сигнал блока Derivative может быть чувствителен к динамике всей модели. Точность выходного сигнала зависит от размера шага расчета модели. Меньшие шаги позволяют получить более плавную и точную кривую на выходе блока. Однако, в отличие от блоков, которые имеют непрерывные состояния, решатель не выполняет меньших шагов, когда входные данные в этот блок быстро меняются. В зависимости от динамики управляющего сигнала и модели выходной сигнал блока может содержать неожиданные колебания. Эти колебания в первую очередь обусловлены ошибкой выходного сигнала и размером шага решателя.
Из-за этих особенностей структурируйте свои модели так, чтобы использовать интеграторы (например, блоки Integrator) вместо блоков Derivative. Блоки Integrator имеют состояния, которые позволяют решателю регулировать размер шага и повышать точность моделирования.
Если вам необходимо использовать блок Derivative с решателем с переменным шагом, то установите максимальный размер шага решателя на такое значение, чтобы блок Derivative мог делать вычисления с достаточной точностью. Чтобы определить это значение, вам может потребоваться запустить моделирование несколько раз с разными настройками решателя.
Если вход в этот блок представляет дискретный сигнал, то непрерывная производная входного сигнала выдает импульс при изменении значения входного сигнала. В ином случае она равна 0. В качестве альтернативы, вы можете определить дискретную производную дискретного сигнала, используя разность последних двух значений сигнала:
Взятие -преобразования этого уравнения приводит к:
Блок Discrete Derivative моделирует это поведение. Используйте этот блок вместо блока Derivative для аппроксимации производной дискретного сигнала по времени.