
Problems associated with derivative blocks in simulink
1 view (last 30 days)
Show older comments
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?
0 Comments
Answers (1)
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.

For information on how to scale the axes, you can refer the following documentation - https://www.mathworks.com/help/dsp/ug/configure-time-scope.html#mw_83f3e357-7391-43ed-8601-48070614d75b:~:text=Style%20Properties.-,Axes%20Scaling%20Properties,-The%20Axes%20Scaling
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.
0 Comments
See Also
Categories
Find more on General Applications 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!