Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: English - Português - 日本語 - Русский

Please note that the recommended version of Scilab is 6.0.0. This page might be outdated.
See the recommended documentation of this function

Aide de Scilab >> Structures > tlist

tlist

Objet Scilab. Définition d'une liste typée

Séquence d'appel

tlist(typ,a1,....an )

Paramètres

typ

chaîne de caractères ou matrice de chaînes de caractères

ai

objet Scilab (matrice, liste, chaîne...).

Description

Crée une liste typée avec les éléments ai. L'argument typ spécifie le nom du type. L'utilisateur peut redéfinir les opérateurs et primitives de Scilab pour ces nouveaux objets à l'aide de fonctions Scilab (voir overloading). La seule différence entre les listes typées et les listes (voir list) est la valeur numérique du type (16 au lieu de 15).

typ(1) spécifie le nom du type (cette chaîne de caractères est utilisée dans les noms des fonctions surchargeant les opérateurs et primitives).

S'il est spécifié, typ(i) donne le nom formel de l'élément i+1 (voir plus bas dans les exemples).

Les opérations standard sur les listes fonctionnent similairement pour les listes typées (tlist).

extraction : [x,y,z...]=l(v) ou v est un vecteur d'indices; [x,y,z]=l(:) extrait tous les éléments.

insertion : l(i)=a

suppression : l(i)=null() supprime le i-ème élément de la tlist l. A noter que la sémantique de l.x=null() n'est pas définie, mais qu'il est possible de lui donner un sens par surcharge (voir overloading).

affichage

De plus si les composantes typ(2:n+1) sont spécifiées, les éléments peuvent être désignés par leur noms formels.

Voici quelques exemples d'utilisation des liste typées :

Dans Scilab, les systèmes dynamiques linéaires sont définis par une liste typée : le quadruplet [A,B,C,D] est représenté par la tlist Sys=tlist(['lss';'A';'B';'C';'D';'X0';'dt'],A,B,C,D,x0,'c') et cette tlist spécifique est créée par la fonction syslin.

Sys(2), Sys('A') ou Sys.A est la matrice d'état et Sys('dt') ou Sys.dt est le domaine temporel.

Une matrice rationnelle H est représentée par la tlist H=rlist(Num,Den,[])Num et Den sont deux matrices polynomiales et un système dynamique linéaire (en temps continu) peut être créé sous la forme d'une matrice de transfert H par syslin('c',H).

H(2), H('num') ou H.num est le numérateur de la matrice de transfert

Exemples

// tlist creation
t = tlist(["listtype","field1","field2"], [], []);
t.field1(1) = 10;
t.field1(2) = 20;
t.field2(1) = "Scilab";
t.field2(2) = "tlist";
t.field2(3) = "example";

// Fields contents display
disp(t.field1)
disp(t.field2)

// Generic tlist display
disp(t)

// Overloading display for this type of tlist
function %listtype_p(mytlist)
  f = fieldnames(mytlist);

  // typeof(mytlist) <=> f(1)
  mprintf("Displaying a tlist of type: %s\n", typeof(mytlist));

  mprintf("\n");

  mprintf("-- Field ''%s'' --\n", f(1));
  mprintf("Contents: %s\n", sci2exp(mytlist(f(1))));

  mprintf("\n");

  mprintf("-- Field ''%s'' --\n", f(2));
  mprintf("Contents: %s\n", sci2exp(mytlist(f(2))));
endfunction

// Display using overloading function
disp(t)

Voir aussi

  • null — suppression d'un terme d'une liste
  • percent — caractère spécial
  • syslin — définition d'un système dynamique linéaire
  • list — Objet Scilab, Définition d'une liste
  • mlist — Objet Scilab, définition d'une liste typée
Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Thu Oct 02 13:54:34 CEST 2014