Contenuto principale

minreal

Realizzazione minima o cancellazione del polo zero

Descrizione

msys = minreal(sys) elimina gli stati non controllabili o non osservabili nei modelli stato-spazio o cancella le coppie con polo zero nelle funzioni di trasferimento o nei modelli a guadagno zero. L'output msys ha un ordine minimo e presenta le stesse caratteristiche di risposta del modello originale sys.

esempio

msys = minreal(sys,tol) specifica la tolleranza utilizzata per l'eliminazione degli stati o la cancellazione dei poli zero. Il valore predefinito è tol = sqrt(eps) e l'aumento di questa tolleranza costringe a ulteriori cancellazioni.

[msys,U] = minreal(___) restituisce inoltre, per il modello stato-spazio sys, una matrice ortogonale U tale che UAUT,UB,CUT è una decomposizione di Kalman di (A,B,C).

esempio

Esempi

comprimi tutto

Questo esempio mostra come calcolare una realizzazione minima di un modello di guadagno a polo zero.

Per questo esempio, si considerino i seguenti comandi che producono un modello di guadagno a polo zero non minimale cloop.

g = zpk([],1,1);
h = tf([2 1],[1 0]);
cloop = inv(1+g*h) * g
cloop =
 
        s (s-1)
  -------------------
  (s-1) (s^2 + s + 1)
 
Continuous-time zero/pole/gain model.
Model Properties

Per cancellare la coppia a polo zero in s=1, utilizzare la funzione minreal.

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

Questo esempio mostra come calcolare una realizzazione minima di un modello stato-spazio.

Per questo esempio, si consideri un modello SISO con 25 stati. Caricare il modello.

load('reduce.mat','gasf35unst');
size(gasf35unst)
State-space model with 1 outputs, 1 inputs, and 25 states.

Per calcolare la realizzazione minima, utilizzare la funzione minreal.

[msys,U] = minreal(gasf35unst);
11 states removed.

Questa sintassi restituisce un modello stato-spazio msys, insieme a una matrice ortogonale U, che viene utilizzata per la scomposizione di Kalman. Questa scomposizione determina gli stati non controllabili e non osservabili del modello stato-spazio originale. Quindi, per calcolare la realizzazione minima, minreal elimina questi stati non controllabili o non osservabili. Per impostazione predefinita, la funzione rimuove 11 stati da questo modello. Aumentando la tolleranza, è possibile forzare l'eliminazione di altri stati difficilmente non controllabili o non osservabili.

Aumentare la tolleranza del valore predefinito di 100 volte.

tol = sqrt(eps)*100;
[msys2,U2] = minreal(gasf35unst,tol);
16 states removed.

La funzione ora rimuove cinque ulteriori stati.

Argomenti di input

comprimi tutto

Modello di sistema dinamico da semplificare, specificato in uno dei seguenti modi.

  • Modelli numerici a tempo continuo o a tempo discreto, come i modelli ss, tf o zpk.

  • Modelli stato-spazio generalizzati o incerti, come i modelli genss o uss (Robust Control Toolbox). (Per utilizzare i modelli incerti è necessario disporre del software Robust Control Toolbox™).

    Per tali modelli, il software calcola la realizzazione minima della parte numerica del modello. Per ulteriori informazioni sulla scomposizione di questi modelli, vedere getLFTModel e Internal Structure of Generalized Models.

  • Modelli stato-spazio idss (System Identification Toolbox) identificati. (Per utilizzare i modelli identificati è necessario disporre del software System Identification Toolbox™).

  • Array di modelli di sistemi dinamici.

Tolleranza per la cancellazione dei poli-zero o l'eliminazione degli stati, specificata come valore scalare reale positivo.

Argomenti di output

comprimi tutto

Modello semplificato, restituito come un modello dello stesso tipo di sys.

Matrice ortogonale, restituita come matrice. Quando sys è un modello stato-spazio, U è una matrice Nx x Nx, dove Nx è il numero di stati in sys. Per i modelli di funzione di trasferimento e di guadagno a polo zero, la funzione restituisce U come una matrice vuota [].

Algoritmi

La cancellazione dei poli zero è una ricerca diretta tra i poli e gli zeri di corrispondenze entro i limiti di tolleranza. Le funzioni di trasferimento vengono prima convertite in forma di guadagno a polo zero.

Funzionalità alternativa

Riga di comando

reducespec

Attività di Live Editor

Reduce Model Order

Cronologia versioni

Introduzione prima di R2006a