Derivative
输入信号的时间导数。
类型: Derivative
图书馆中的路径:
|
说明
程序块 Derivative 近似计算输入信号 在仿真时间 内的导数。导数 的真实值近似于关系式 ,其中 是输入信号的增量, 是自上一个(主要)计算步骤以来的时间变化。
该模块接收一个输入信号并产生一个输出信号。输出信号的初始值为零。
程序块输入和输出之间的确切关系:
其中
-
- 是当前建模时间; -
- 上一数值的计算时间,与上一主要时间步的时间一致。
块 Derivative 的输出信号可能对整个模型的动态很敏感。输出信号的精度取决于模型计算的步长。步长越小,模块输出的曲线越平滑、越准确。然而,与具有连续状态的程序块不同,当程序块的输入快速变化时,求解器不会执行较小的步长。根据控制信号和模型的动态变化,程序块输出可能会出现意外波动。这些波动主要是由于输出信号的误差和求解器的步长造成的。
鉴于这些特点,在构建模型时应使用积分器(如块Integrator ),而不是块 Derivative 。Integrator 块具有允许求解器调整步长和提高仿真精度的状态。
如果需要将 Derivative 块与步长可变的求解器配合使用,请将求解器的最大步长设置为 Derivative 块能够以足够精度进行计算的值。要确定该值,可能需要使用不同的求解器设置多次运行仿真。
如果该程序块的输入是离散信号,则输入信号的连续导数会随着输入信号值的变化而产生脉冲。否则,它等于 "0"。另外,也可以使用离散信号最后两个值的差值来确定离散信号的离散导数:
对这个等式进行