pzmap(G+G) produces incorrect plot
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
Geraint Bevan
el 3 de Dic. de 2019
Comentada: Star Strider
el 3 de Dic. de 2019
Given a system with 2 zeros and 5 poles:
s = tf('s')
G = 8.75*(4*s^2+0.4*s+1)/((s/0.01+1)*(s^2+0.24*s+1)*(s^2/100+2*0.02*s/10+1))
pzmap(G+G) produces a pole zero map in which all the poles are cancelled by zeros, which is clearly incorrect. It is also different to the result of pzmap(2*G), which would be expected to be the same.
Can anyone explain this behaviour?
0 comentarios
Respuesta aceptada
Star Strider
el 3 de Dic. de 2019
The ‘+’ operator connects the two ‘G’ models in parallel. They do appear to have pole-zero cancellation as the result:
s = tf('s');
G = 8.75*(4*s^2+0.4*s+1)/((s/0.01+1)*(s^2+0.24*s+1)*(s^2/100+2*0.02*s/10+1))
GG = G+G
figure
pzmap(GG)
Calculating the minimum realisation solves the problem:
GGmr = minreal(GG)
figure
pzmap(GGmr)
2 comentarios
Star Strider
el 3 de Dic. de 2019
As always, my pleasure!
The ‘*’ operator would connect them in series.
Más respuestas (0)
Ver también
Categorías
Más información sobre Stability Analysis en Help Center y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!