Contenuto principale

Array di modelli lineari

Utilizzando gli array LTI è possibile specificare e manipolare raccolte di modelli lineari come singole entità. Ad esempio, se si desidera variare i parametri Kb e Km per il motore DC e salvare i modelli stato-spazio che ne risultano, utilizzare questo codice.

K = [0.1 0.15 0.2]; % Several values for Km and Kb
A1 = [-R/L -K(1)/L; K(1)/J -Kf/J];
A2 = [-R/L -K(2)/L; K(2)/J -Kf/J];
A3 = [-R/L -K(3)/L; K(3)/J -Kf/J];
sys_lti(:,:,1)= ss(A1,B,C,D);
sys_lti(:,:,2)= ss(A2,B,C,D);
sys_lti(:,:,3)= ss(A3,B,C,D);

Il numero di input e di output deve essere lo stesso per tutti i modelli lineari incapsulati dalla matrice LTI, ma l’ordine del modello (il numero di stati) può variare da modello a modello all’interno di una singola matrice LTI.

L’array LTI sys_lti contiene i modelli stato-spazio per ciascun valore di K. Digitare sys_lti per vedere il contenuto dell’array LTI.

Model sys_lti(:,:,1,1)
======================
 
  a = 
                        x1           x2
           x1           -4         -0.2
           x2            5          -10
.
.
.
Model sys_lti(:,:,2,1)
======================
 
  a = 
                        x1           x2
           x1           -4         -0.3
           x2          7.5          -10
.
.
.
Model sys_lti(:,:,3,1)
======================
 
  a = 
                        x1           x2
           x1           -4         -0.4
           x2           10          -10
.
.
.
3x1 array of continuous-time state-space models.

È possibile manipolare l’array LTI come qualunque altro oggetto. Ad esempio,

step(sys_lti)

produce un grafico contenente le risposte a gradino per tutti e tre i modelli stato-spazio.

Risposte a gradino per un array LTI contenente tre modelli

Gli array LTI sono utili per l’esecuzione di analisi batch su un intero set di modelli. Per ulteriori informazioni, vedere Model Arrays.