Problems associated with derivative blocks in simulink

3 views (last 30 days)
I encountered a problem with simulink derivative block when I was doing a simulation where third order derivatives of the input is required! However, I could not use three consecutive derivative blocks in simulink since I would get a huge number at t=0 resulted from numerical differentiation. This can be shown as follows
Instead of getting a smooth -cos(x) single I get
Is there a way to get rid of this problem?

Answers (1)

Rajanya
Rajanya on 30 Jan 2025
The flat line observed in the scope is mostly because of the Y-axis scale used. Because of the abrupt spike at t=0, which is natural because of numerical differentiation, the Y values reach in the order of 10^6, while the other values (at t>0) vary between 1 and -1, causing the line to appear flat on such a large scale margin.
Scaling the Y- axis properly makes the smooth -cos(x) curve visible (except the spike around t=0), as shown.
Also, to reduce the initial spike, the maximum step size used for simulation can be reduced from Configuration Settings > Solver > Solver details (for variable-step solvers) > Max step size.
Thanks.

Categories

Find more on Modeling in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!