Résumé de Cours de Sup et Spé T.S.I.

Quatrième Partie : Maple

37 Bases

Sous-sections


37 Bases

37.1 Manipulations de base

Remarque :   On ne confondra pas une expression et une fonction.
Par exemple : sin(t) est une expression de t, tandis que la fonction est : sin.

; ou :

Exécution d'une commande avec ou sans affichage du résultat.

> 12*13;

+ - * /

Somme, différence, produit ou quotient d'expressions.

> (x+2)/t;

** ou ^

Exponentielle.

> 12**13;

&*

Produit de matrices ou vecteurs.
Sans le &, Maple considère tous les produits comme commutatifs...
De plus l'usage deevalm est indispensable pour avoir un affichage effectif des lignes et colonnes.

> evalm(P*(-1)&*A&*P);

iquo irem

Quotient et reste de la division des entiers.

> iquo(1732,13);

quo rem

Quotient et reste de la division euclidienne des polynomes (il faut préciser la variable).

> r:=rem(x^5,x^2+1,x);

!

Factorielle.

> 123!;

binomial

Coefficients binomiaux comme $ \mathcal{C}_{n}^{2}$

> binomial(2,n);

=     <     >
< >
<=     >=

Opérateurs de comparaison,
souvent utilisés dans un si ... alors ... sinon,
ou dans une résolution d'équation ou inéquation.

> solve(x^2>1,x);

and or not

Opérateurs logiques,
souvent utilisés dans un si ... alors ... sinon.

> evalb(a=1 or b=0);

@

Composée de fonctions (qui ne sont pas des expressions ...).

> f2:=f@f;

:=

Affectation, permet de donner une valeur à une variable.

> a:=(x+1)/(x-1);

'variable'

Permet de libérer, désaffecter une variable.

> a:='a';

->

Définition rapide d'une fonction (qui n'est toujours pas une expression).

> f:=x->x^2-1;f(2);

''

Variable valant le dernier résultat calculé.

> p:=(x+1)/x;
> ''**2;


37.2 Constantes

Pi I infinity

Nombres $ \pi$, $ i$, et $ +\infty $, on fera attention aux majuscules !

> Pi,pi;
> evalf(Pi),evalf(pi);

37.3 Sommes et produits

sum product

Calcul de toute somme ou produit indicés.
On conseille d'utiliser des apostrophes.

> sum('1/(n^2)','n'=1..7);
> sum('p','n'=0..infinity);

37.4 Fonctions d'évaluation

Les fonctions d'évaluation sont nombreuses et importantes, elles forcent Maple à effectuer une évaluation de la quantité afin de ne pas rester en calcul formel...
Ceci est très important car l'éxécution d'une procédure ou d'un calcul n'est pas du tout la même selon que l'on travaille en calcul approché « flottant » ou en calcul formel « exact ».
Quand on veut au final du calcul approché, il faut se mettre en calcul approché le plus tôt possible...


eval

Evaluation générale d'une expression.
Cette instruction est surtout utilisée dans le corps des procédures pour forcer l'évaluation complète d'une expression.

> eval(Pi*3.14);

evalb

Evaluation d'une expression logique (booléenne), c'est une quantité vraie ou fausse, souvent utilisée dans un si... alors... sinon.

> evalb(x>=1);

evalf

Valeur approchée d'une expression, le nombre de chiffres significatifs est dans la variable Digits. Indispensable quand on ne veut pas que Maple reste inutilement en théorique.

> Digits:=50;
> evalf(Pi/2);

evalc

Evaluation d'un complexe en partie réelle et partie imaginaire.
Attention Maple considère a priori les variables libres comme complexes...

> evalc((2*I)^3);

evalm

Force l'évaluation d'un vecteur ou d'une matrice en ligne et colonnes,
ce que Maple ne fait pas de lui même.

> evalm(A&*B);

37.5 Transformation générale d'expressions

subs

Subsitue dans l'expression « p », l'expression « y » à la variable « x ».

> subs(x=y,p);

collect

Regroupe les termes d'une même puissance d'une expression par rapport à une variable.

> collect(p,x);

sort

Trie selon les puissances décroissantes une expression selon une variable.

> sort(p,x);

expand

Développe une expression polynomiale, trigonométrique,
exponentielle ou logarithmique.

> expand((x-a)**7);
> expand(sin(2*x));
> expand(ln((x+1)/(x-1)));
> expand(exp(x+2*y));

combine
options : trig exp ln power

Presque la fonction réciproque de expand. Regroupe les termes selon l'option choisie (linéarise avec trig...).

> combine(sin(x)^7,trig);

factor

Factorise une expression.
Il faut souvent ajouter les éléments utilisés dans la factorisation, qu'on peut chercher avec solve.

> factor(x**2-2);
> factor(x**2-2,sqrt(2));
> factor(x**2+2,sqrt(2));
> factor(x**2+2,{sqrt(2),I});

convert
options :
parfrac tan

Convert possède de nombreuses options pour transformer une expression, en particulier trigonométrique.
Avec l'option parfrac, il décompose en « éléments simples » une fraction rationnelle. Il vaut mieux auparavent factoriser complètement le dénominateur.

> convert(p,tan);
> convert(p,parfrac,x);

37.6 Simplification d'expressions

normal

Simplifie (un peu) les fractions rationnelles.
Comme pour « convert », on a intérèt à factoriser le dénominateur avant la demande de simplification.

> p:=(x^2-1)/(x^2+2*x+1);
> normal(p);

simplify

Essaye de simplier une expression, possède de nombreuses options... mais peut également s'utiliser sans option.

> simplify(p);


37.7 Structures de données

a..b

Intervalle de a à b. Utilisé dans les tracés de courbes et les intégrales par exemple.

> int(sin(t),t=0..Pi);
> plot(sin(t),t=0..Pi);

{a,b,c}
union
intersect

Ensemble formé de a, b et c, et opérateurs d'union et d'intersection d'ensembles.
Utilisé par exemple pour tracer plusieurs courbes sur un même graphe.

>E:=E union {a,b }
> plot({sin(t),cos(t)},t=0..Pi);

&lsqb#lbrack;a,b,c]

Liste formée de a, b et c. Utilisé par exemple pour tracer des courbes en paramétriques.

> plot([sin(t),cos(t),t=0..Pi],
x=-2..2,y=-2..2);



© Christophe Caignaert - Lycée Colbert - Tourcoing