0
$\begingroup$

I have a MATLAB code for differentiator , it last line command isstable determines whether system is stable or not. I was surprised by response of MATLAB as according to my understanding differentiator is unstable system

clc;clear;close all
C=0.1e-6
R=47e3
den=1
num=[-R*C 0]
sys=tf(num,den)
pzmap(sys)
%Comments on stability, 
isstable(sys)
$\endgroup$
2
  • 5
    $\begingroup$ That looks like a trivial FIR filter (1 coefficient, so just applying a gain), not a differentiator. If your input is bounded, your output will be bounded, so you have BIBO stability. $\endgroup$
    – Andy Walls
    Commented Aug 30 at 12:38
  • 2
    $\begingroup$ This also looks like a botched attempt to model a passive differentiator which is essentially a first order high pass which below the crossover looks like a differentiator. IT still is stable since above the crossover, it's flat. $\endgroup$
    – Hilmar
    Commented Aug 30 at 19:45

1 Answer 1

1
$\begingroup$

1.-

Short answer: Because a single shunt capacitor (not containing explosives indeed) is always stable.

Hilmar and Walls are both correct.

If you want to make it unstable try

num=1
den=[-R*C 1]
sys=tf(num,den)
pzmap(sys)
%Comments on stability,
isstable(sys)

sys =
 
       -1
  ------------
  0.0047 s - 1
 
Continuous-time transfer function.

 =
  logical
   0

2.-

General Answer

A system with all poles on the left hand side of the plane is always stable.

Read this MIT OW short lecture, just 2 pages

15 TRANSFER FUNCTIONS & STABILITY

enter image description here

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.