Reducing fast dynamic poles in a transfer function.
    6 views (last 30 days)
  
       Show older comments
    
    Edward Simpson Songel
 on 27 Feb 2021
  
    
    
    
    
    Commented: Edward Simpson Songel
 on 28 Feb 2021
            Imagine I have a tf that looks something like this:  G(s) = 1/((s+70)*(s+5)) 
Is there some sort of command that can return a transfer fucntion that get's rid of the fastest dynamic pole? 
In the example given above my output would be something like this: G(s)=1/(s+5).
Thanks in advance.
0 Comments
Accepted Answer
  Paul
      
      
 on 27 Feb 2021
        
      Edited: Paul
      
      
 on 27 Feb 2021
  
      Maybe freqsep() is what you want:
>> G=tf(1,conv([1 5],[1 70]))
G =
         1
  ----------------
  s^2 + 75 s + 350
Continuous-time transfer function.
>> [Gs,Gf]=freqsep(G,10)
Gs =
  0.01538
  -------
   s + 5
Continuous-time transfer function.
Gf =
  -0.01538
  --------
   s + 70
Continuous-time transfer function.
>> bode(Gs,h);
The dc gain of Gs will need to be adjusted to match the dc gain of G if you intend to use Gs as a low frequency approximation to G. This doc page is a good source for starters.  There are also additional pages in Robust Control Toolbox for model reduction.
2 Comments
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!