type est une fonction qui a un argument et qui renvoie le
type de cet argument par exemple :
double ou DOM_FLOAT, integer ou DOM_INT, complex ou DOM_COMPLEX,
identifier ou DOM_IDENT, vector ou DOM_LIST, func ou DOM_FUNC
expression ou DOM_SYMBOLIC, rational ou DOM_RAT, string ou DOM_STRING.
Il y a 20 types différents qui sont représentés par un entier entre 1
et 20.
type permet de tester une erreur d’entrée.
On tape :
On obtient :
On tape :
On obtient :
On tape :
On obtient :
On tape :
On obtient :
On tape :
On obtient :
Remarque : utilisation de type pour les graphes
voir aussi 3
Si le graphe dépend d’une fonction utilisateur, il faut que la fonction soit
définie même lorsque le(s) paramètre(s) a (ont) une valeur formelle, ce
qui peut se faire en testant le type du paramètre, comme dans l’exemple
suivant, f est définie en testant du type du paramètre par :
f(x):= { if (type(x)==identifier) return 'f'(x); while(x>0){ x--; } return x; }:;
Ainsi f(x) renvoie f(x) et f(3.1) renvoie -0.9.
ou bien
g(x):= { if (type(x)!=vector) return 'g'(x); if (type(x)==identifier) return 'g'(x); while(x[0]>0){x[0]:=x[0]-1; } return x; }:;
Ainsi g(x) renvoie g(x), g([x,y,z]) renvoie g([x,y,z])
et g([1.1,2,3]) renvoie [-0.9,2,3].
Par exemple si G:=plotfunc(g(x), le test permet d’utiliser le graphe G de g dans des commandes comme translation(1+i,G)...