Main Content

minreal

Minimalrealisierung oder Pol-Nullstellen-Aufhebung

Syntax

sysr = minreal(sys)
sysr = minreal(sys,tol)
[sysr,u] = minreal(sys,tol)
... = minreal(sys,tol,false)
... = minreal(sys,[],false)

Beschreibung

sysr = minreal(sys) eliminiert unkontrollierbare oder unbeobachtbare Zustände in Zustandsraummodellen oder hebt Pol-Nullstellen-Paare in Transferfunktionen oder Null-Polstellen-Verstärkungsmodellen auf. Die Ausgabe sysr ist von minimaler Ordnung und hat die gleichen Antwortmerkmale wie das ursprüngliche Modell sys.

sysr = minreal(sys,tol) gibt die Toleranz an, die für die Eliminierung von Zuständen oder die Aufhebung von Pol-Nullstellen verwendet wird. Der Standardwert ist tol = sqrt(eps) und eine Erhöhung dieser Toleranz führt zu zusätzlichen Aufhebungen.

[sysr,u] = minreal(sys,tol) liefert für das Zustandsraummodell sys eine orthogonale Matrix U, sodass (U*A*U',U*B,C*U') eine Kalman-Zerlegung von (A, B, C) ist

... = minreal(sys,tol,false) und ... = minreal(sys,[],false) deaktivieren die ausführliche Ausgabe der Funktion. Standardmäßig zeigt minreal eine Meldung an, die die Anzahl der aus einem Zustandsraummodell sys entfernten Zustände angibt.

Beispiele

Die Befehle

g = zpk([],1,1);
h = tf([2 1],[1 0]);
cloop = inv(1+g*h) * g

ergeben das nichtminimale Null-Polstellen-Verstärkungsmodell cloop.

cloop =
 
        s (s-1)
  -------------------
  (s-1) (s^2 + s + 1)
 
Continuous-time zero/pole/gain model.

Zur Aufhebung des Pol-Nullstellen-Paars bei s = 1, geben Sie Folgendes ein:

cloopmin = minreal(cloop)

Dieser Befehl liefert das folgende Ergebnis:

cloopmin =
 
        s
  -------------
  (s^2 + s + 1)
 
Continuous-time zero/pole/gain model.

Algorithmen

Die Pol-Nullstellen-Aufhebung ist eine einfache Suche durch die Pol- und Nullstellen nach Übereinstimmungen, die innerhalb der Toleranz liegen. Die Transferfunktionen werden zunächst in die Form der Null-Polstellen-Verstärkung umgewandelt.

Alternative Funktionen

Live Editor Task

Reduce Model Order

Versionsverlauf

Eingeführt vor R2006a