minreal
Realización mínima o cancelación de polos y ceros
Sintaxis
sysr = minreal(sys)
sysr = minreal(sys,tol)
[sysr,u] = minreal(sys,tol)
... = minreal(sys,tol,false)
... = minreal(sys,[],false)
Descripción
sysr = minreal(sys)
elimina el estado no controlable o no observable en los modelos de espacio de estados, o cancela los pares polo-cero en las funciones de transferencia o en los modelos de cero-polo-ganancia. La salida sysr
tiene un orden mínimo y las mismas características de respuesta que el modelo original sys
.
sysr = minreal(sys,tol)
especifica la tolerancia utilizada para la eliminación del estado o la cancelación de los polos y ceros. El valor predeterminado es tol = sqrt(eps)
y el aumento de esta tolerancia obliga a realizar cancelaciones adicionales.
[sysr,u] = minreal(sys,tol)
devuelve una matriz ortogonal U
tal que (U*A*U',U*B,C*U')
es una descomposición de Kalman de (A
,B
,C
), para el modelo de espacio de estados sys
.
... = minreal(sys,tol,false)
y ... = minreal(sys,[],false)
desactivan la salida detallada de la función. De forma predeterminada, minreal
muestra un mensaje que indica el número de estados eliminados de un modelo de espacio de estados sys
.
Ejemplos
Los comandos
g = zpk([],1,1); h = tf([2 1],[1 0]); cloop = inv(1+g*h) * g
generan el modelo no mínimo de cero-polo-ganancia cloop
.
cloop = s (s-1) ------------------- (s-1) (s^2 + s + 1) Continuous-time zero/pole/gain model.
Para cancelar el par polo-cero en s = 1, introduzca
cloopmin = minreal(cloop)
Este comando genera el siguiente resultado:
cloopmin = s ------------- (s^2 + s + 1) Continuous-time zero/pole/gain model.
Algoritmos
La cancelación de polos y ceros es una búsqueda directa a través de los polos y ceros que busca coincidencias dentro de la tolerancia. Las funciones de transferencia se convierten primero a formato de cero-polo-ganancia.
Historial de versiones
Introducido antes de R2006a
Consulte también
Model Reducer | balreal
| modred
| sminreal