résumé (actions élémentaires de MAPLE)

Embed Size (px)

DESCRIPTION

programmation en Maple

Citation preview

  • Actions lmentaires de MAPLE

    HAMMAMI Mohamed Page 1

    Etude de fonctions une seule variable relle

    Commande et Syntaxe Rle Nom_fct :=varexpression ;

    Dfinir une fonction une seule variable var limage dun point x0 est donne par f(x0).

    unapply Nom_fct :=unapply(E , var)

    Convertir lexpression E en une fonction une seule variable var.

    evalb evalb(f(x) = -f(x)) evalb(-f(x) = -f(x))

    Etudier la parit de la fonction f

    singular singular(f(x))

    Dterminer lensemble des points singuliers de la fonction f. (points dans les quels la fonction nest pas dfinie)

    iscont iscont(f(x) , x = a..b) iscont(f(x) , x = a..b , closed)

    Vrifier la continuit de la fonction f dans lintervalle

    ouvert ,a b . Le paramtre closed permet la vrification dans

    lintervalle ferm ,a b .

    discont discont(f(x))

    Dterminer lensemble des points de discontinuit de la fonction f.

    limit limit(f(x) , x = a (fini ou infini)) limit(f(x) , x = a , left) limit(f(x) , x = a , right)

    Calculer la limite de la fonction f au point a. Le paramtre left pour calculer la limite gauche et right pour la limite droite.

    D D(f) (D@@n)(f)

    Dterminer la fonction drive f .

    Loprateur @@ permet de dterminer la fonction drive

    n-ime nf .

    D(f)(x0) et (D@@n)(f)(x0) donnent les drives au point

    x0.

    diff diff(f(x) , x) diff(f(x) , x$n)

    Dterminer lexpression de la drive f x . Loprateur $ permet de dterminer lexpression de la

    drive n-ime nf x .

    int int(f(x) , x) int(f(x) , x = a..b)

    Dterminer la primitive (expression) ou lintgrale (valeur) dune fonction f.

    taylor taylor(f(x) , x = a , ord)

    Dterminer un dveloppement limit de la fonction f au voisinage de a et lordre ord

    asympt asympt(f(x) , x)

    Dterminer un dveloppement asymptotique de la

    fonction f.

    plot plot(f) plot(f , a..b) plot(f , a..b , c..d) plot(f(x) , x) plot(f(x) , x = a..b) plot(f(x) , x = a..b , c..d) plot({f , g , h , })

    Reprsenter graphiquement la fonction f. La reprsentation peut tre soit partir de la fonction (f) ou lexpression (f(x)). a..b est laxe des abscisses et c..d laxe des ordonnes. (MAPLE prend par dfaut -10..10 comme axe des

    abscisses)

  • Actions lmentaires de MAPLE

    HAMMAMI Mohamed Page 2

    Etude de fonctions deux variables relles

    Les diffrents outils (commandes de MAPLE) proposs pour manipuler les fonctions

    numriques une seule variable relle sont valables galement pour les fonctions deux

    variables relles (dfinition de la fonction, points singuliers, limites, dveloppements limits

    et asymptotique etc.). Dans ce TP on se focalisera sur les commandes prsentant une syntaxe

    diffrente lorsque la fonction est deux variables.

    Dans la suite on suppose que g est une fonction numrique deux variables x et y.

    Commande et Syntaxe Rle g :=(x,y)expression ;

    Dfinir la fonction g. limage dun couple (x0,y0) est donne par g(x0,y0).

    unapply Nom_fct :=unapply(E , (x,y))

    Convertir lexpression E en une fonction deux variables (x,y).

    D D[1](g) D[2](g) D[1,2](g) (D[1]@@n)(g) (D[2]@@m)(g)

    Dterminer les fonctions drives par rapport x (la

    premire variable, y (la deuxime variable) et par

    rapport x et y.

    Loprateur @@ permet de dterminer les fonctions drives n-ime.

    D[1,2](g)(x0,y0) donne limage dun couple (x0,y0) de la fonction drive par rapport x et y.

    diff diff(g(x,y) , x) diff(g(x,y) , x) diff(g(x,y) , x , y) diff(g(x,y) , x$n) diff(g(x,y) , y$m) diff(g(x,y) , x$n , y$m)

    Dterminer les drives partielles par rapport x, y

    et x et y.

    Loprateur $ permet de dterminer les drives partielles n-ime.

    int int(int(g(x,y) , x) , y) int(int(g(x,y) , x = a ..b) , y = c..d)

    Dterminer les intgrales doubles.

    plot3d plot3d(g , a..b , c..d) plot3d(g(x,y) , x = a..b , y = c..d) plot3d({f , g , h , } a..b , c..d)

    Reprsenter graphiquement la fonction g. La reprsentation peut tre soit partir de la fonction

    (g) ou lexpression (g(x,y)). a..b est laxe des abscisses et c..d laxe des ordonnes.

  • Actions lmentaires de MAPLE

    HAMMAMI Mohamed Page 3

    Etude de fonctions variables complexes

    Les diffrents outils (commandes de MAPLE) proposs pour manipuler les fonctions

    numriques une seule variable relle sont valables galement pour les fonctions deux

    variables relles (dfinition de la fonction, points singuliers, limites, dveloppements limits

    et asymptotique etc.).

    La commande prsentant une syntaxe diffrente est celle de reprsentation graphique

    (commande de changement graphique dans le plan complexe).

    Dans la suite on suppose que h est une fonction variable complexe z.

    Commande et Syntaxe Rle h :=zexpression ;

    Dfinir la fonction h. limage dun point complexe z0 est donne par

    h(z0).

    unapply Nom_fct :=unapply(E , var)

    Convertir lexpression complexe E en une fonction variable complexe var.

    conformal with(plots) conformal(h , a..b) with(plots) conformal(h(z) , z = a..b)

    Reprsenter graphiquement la fonction h. (changement graphique dans le plan complexe)

    La reprsentation peut tre soit partir de la fonction

    (h) ou lexpression (h(z)). a..b est laxe complexe des abscisses.

    Manipulation des nombres complexes avec MAPLE

    Un nombre complexe scrit sous la forme .a b I avec I en MAPLE reprsente le nombre

    imaginaire tel que 2 1I .

    Plusieurs commandes de manipulations des nombres complexes sont fournies par MAPLE.

    Dans la suite on suppose que c est un nombre complexe.

    Commande et Syntaxe Rle Re Re(c)

    Donner la partie relle dun nombre complexe.

    Im Im(c)

    Donner la partie imaginaire dun nombre complexe.

    abs abs(c)

    Donner le module dun nombre complexe.

    argument argument(c)

    Donner largument dun nombre complexe.

    conjugate conjugate(c)

    Donner le conjug dun nombre complexe.

    polar polar(c)

    Donner les coordonnes polaires (module et argument) dun nombre complexe.

    evalc evalc(c) evalc(polar( ,r ))

    Mettre un nombre complexe ou les coordonnes polaires ,r

    (module et argument) sous la forme .a b I .

  • Actions lmentaires de MAPLE

    HAMMAMI Mohamed Page 4

    Les suites avec MAPLE

    Une suite est dfinie et manipule comme tant une fonction une seule variable.

    Commande et Syntaxe Rle VAR :=nexpression ; Exemple : w :=n2*n^2 + 2 ;

    Dfinir une suite explicite.

    w(k) seq(w(i) , i = 1..m)

    Donne un terme dune suite.

    La commande seq donne la suite des termes

    rsolve t :=rsolve({sys de rcurrence},u(n))

    Dterminer le terme gnral t (expression en n) de la suite rcurrente u.

    unapply u :=unapply(t , n)

    Convertir lexpression t (terme gnral de la suite u) en une suite.

    sum sum(w(k) , k = a..b)

    Calculer une somme ou une srie entire.

    product product(w(k) , k = a..b)

    Calculer un produit.

    limit L:=limit(w(n) , n = +infinity) ; if type(L , infinity) then print(la suite est divergente) else print(la suite est convergente) ;

    Calculer la limite en + linfinie. Remarque : avec la commande type on peut tudier

    la convergence de la suite.

  • Actions lmentaires de MAPLE

    HAMMAMI Mohamed Page 5

    Les polynmes

    Un polynme est dfini et manipul comme tant une expression, qui dans lequel peut

    intervenir une ou plusieurs variables. Une telle expression est de type polynom.

    Commande et Syntaxe Rle VAR :=expression ; Exemple :

    P :=(x^2 + 1)^5 ; Q :=X^3*Y^2 + X^2 + X Y + 1 ;

    Dfinir un polynme.

    subs subs(x = a , P) subs({X = a , Y = b} , Q)

    eval eval(P , x = a) eval (Q , {X = a , Y = b})

    Evaluer un polynme en une valeur a ou b donnes.

    expand expand(P)

    Mettre un polynme sous la forme dvelopp.

    sort sort(expand(P)) sort(Q , X) sort(Q , Y)

    Donner la forme dveloppe et ordonne selon les

    puissances dcroissantes.

    Remarque 1 : la commande sort sapplique sur les polynmes dvelopps.

    Remarque 2 : dans le cas des expressions de plusieurs

    variables il faut indiquer la variable du polynme

    comme deuxime paramtre.

    factor factor(expression) factor(expression , complex) Exemple :

    factor(x^2 1) ; factor(x^2 + 1 , complex) ;

    Mettre une expression (polynme) sous la forme

    factorise.

    Remarque : le paramtre optionnel complex permet

    la factorisation dans le corps des complexes.

    collect collect(expression , terme)

    Regrouper les coefficients dun mme terme dune expression.

    simplify simplify(expression)

    Simplifier si possible une expression.

    degree degree(P) degree(Q , X) degree(Q , Y)

    Dterminer le degr (plus haut degr) dun polynme. Remarque : dans le cas des expressions de plusieurs

    variables il faut indiquer la variable du polynme

    comme deuxime paramtre.

    ldegree ldegree(P) ldegree(Q , X) ldegree(Q , Y)

    Dterminer le plus bas degr dun polynme. Remarque : dans le cas des expressions de plusieurs

    variables il faut indiquer la variable du polynme

    comme deuxime paramtre.

    lcoeff lcoeff(P) lcoeff(Q , X) lcoeff(Q , Y)

    Dterminer le coefficient dominant dun polynme. Remarque : dans le cas des expressions de plusieurs

    variables il faut indiquer la variable du polynme

    comme deuxime paramtre.

  • Actions lmentaires de MAPLE

    HAMMAMI Mohamed Page 6

    tcoeff tcoeff(P) tcoeff(Q , X) tcoeff(Q , Y)

    Dterminer le coefficient du terme du plus bas degr

    dun polynme. Remarque : dans le cas des expressions de plusieurs

    variables il faut indiquer la variable du polynme

    comme deuxime paramtre.

    coeff coeff(P , x , i) coeff(Q , X , i) coeff(Q , Y , i)

    Dterminer le coefficient dun terme de degr i dun polynme.

    coeffs coeffs(expand(P) ) coeffs(Q , X) coeffs(Q , Y)

    Dterminer la squence de tous les coefficients dun polynme.

    Remarque 1 : la commande coeffs sapplique sur les polynmes dvelopps.

    Remarque 2 : dans le cas des expressions de plusieurs

    variables il faut indiquer la variable du polynme

    comme deuxime paramtre.

    quo quo(P1 , P2 , VAR) Exemple :

    quo(P , x - 1 , x) ; quo(Q , X + Y , X) ; quo(Q , X + Y , Y) ;

    Dterminer le quotient de la division euclidienne de

    P1 par P2 par rapport la variable VAR.

    rem rem(P1 , P2 , VAR) Exemple : rem(P , x - 1 , x) ; rem (Q , X + Y , X) ; rem (Q , X + Y , Y) ;

    Dterminer le reste de la division euclidienne de P1 par P2 par rapport la variable VAR.

    gcd gcd(P1 , P2)

    Dterminer le PGCD des deux polynmes P1 et P2.

    lcm lcm(P1 , P2)

    Dterminer le PPCM des deux polynmes P1 et P2.

    divide divide(P1 , P2)

    Vrifier si P1 et P2 sont divisibles ou non. (P1 est divisible par P2)

  • Actions lmentaires de MAPLE

    HAMMAMI Mohamed Page 7

    Les fractions rationnelles

    Une fraction rationnelle est dfinie et manipule comme tant une expression.

    Une telle expression est de type ratpoly.

    Commande et Syntaxe Rle VAR:=expression ; Exemple :

    F :=(x^2 2*x + 1)^3 / (x^3 1)^2 ;

    Dfinir une fraction rationnelle.

    subs subs(x = a , F)

    eval eval(F , x = a)

    Evaluer une fraction rationnelle en une valeur a donne.

    numer numer(F)

    Donner le numrateur dune fraction rationnelle.

    denom denom(F)

    Donner le dnominateur dune fraction rationnelle.

    normal normal(F)

    Simplifier si possible une fraction rationnelle.

    convert convert(F , parfrac , x) convert(F , parfrac , x , complex)

    Dcomposer une fraction rationnelle en lments

    simples.

    Remarque : le paramtre optionnel complex permet

    la dcomposition dans le corps des complexes.

  • Actions lmentaires de MAPLE

    HAMMAMI Mohamed Page 8

    Rsolution des quations, inquations et systmes dquations

    algbriques

    Commande et Syntaxe Rle solve solve(quation , inconnue)

    Rsoudre une quation.

    Remarque 1 : linconnue est optionnelle dans le cas o lquation comporte une seule variable.

    Remarque 2 : lgalit 0 est aussi optionnelle.

    Remarque 3 : le rsultat de la rsolution dune quation est la squence des racines.

    solve solve(inquation , inconnue) solve(inquation , {inconnue})

    Rsoudre une inquation.

    Remarque 1 : linconnue est optionnelle. Remarque 2 : le rsultat de la rsolution dune inquation peut tre donn sous forme

    dintervalles ou encadrement.

    solve solve({eq1 , eq2 , } , {inc1 , inc2 , })

    Rsoudre un systme dquations.

    fsolve Donner des solutions flottantes.

    isolve Donner des solutions entires.

  • Actions lmentaires de MAPLE

    HAMMAMI Mohamed Page 9

    Algbre Linaire

    I. Les vecteurs

    Commande et Syntaxe Rle vector V1 :=vector(taille) ; V2 :=vector([lments]) ; V3 :=vector(taille , Nom_fct) ;

    Crer un vecteur (tableau une dimension).

    Remarque 1 :

    On peut initialiser un vecteur par une liste des

    lments.

    Remarque 2 :

    On peut initialiser un vecteur par une fonction

    prdfinie de MAPLE.

    Remarque 3 :

    Laccs un lment dun vecteur se fait par son

    indice et laffichage avec la commande print.

    Vector V :=Vector([lments]) ;

    Donne le format mathmatique dun vecteur (format sur lequel les commandes prdfinies de lalgbre linaire oprent).

    II. Les matrices

    Commande et Syntaxe Rle

    matrix M1 :=matrix(L , C) ; M2 :=matrix(L , C , [lments]) ; M3 :=matrix(L , C , Nom_fct) ;

    Crer une matrice (tableau deux

    dimensions).

    L : nombre de lignes. C : nombre de colonnes.

    Remarque 1 :

    On peut initialiser une matrice par une liste

    des lments.

    Remarque 2 :

    On peut initialiser une matrice par une

    fonction prdfinie de MAPLE.

    Remarque 3 :

    Laccs un lment dune matrice se fait par son indice de ligne suivi de son indice de

    colonne et laffichage avec la commande

    print. M4 :=matrix(L , C , Valeur) ; Initialiser une matrice par llment Valeur.

    Matrix M :=Matrix(L , C) ;

    Donne la matrice nulle.

    Matrix M5 :=Matrix(n , n , shape = identity) ;

    Donne la matrice identit dordre n.

    Matrix M6 :=Matrix(n , n , shape = diagonal) ;

    Donne une matrice diagonale.

    Matrix M7 :=Matrix(n , n , shape = symmetric) ;

    Donne une matrice symtrique.

    Matrix M8 :=Matrix(n , n , shape = antisymmetric) ;

    Donne une matrice antisymtrique.

  • Actions lmentaires de MAPLE

    HAMMAMI Mohamed Page 10

    Commande et Syntaxe Rle , , * , &* , ^ Ces oprateurs permettent les oprations algbriques

    sur les matrices. : somme. : diffrence. * : multiplication par un scalaire.

    &* : produit matriciel.

    ^ : puissance.

    with(linalg); Charger la bibliothque de lalgbre linaire.

    evalm evalm(M) ;

    Evaluer une matrice.

    matadd matadd(M1 , M2) ;

    Somme de deux matrices.

    scalarmul scalarmul(M1 , scalaire) ;

    Multiplication dune matrice par un scalaire.

    multiply multiply(M1 , M2) ;

    produit de deux matrices.

    Commande et Syntaxe Rle

    det det(M) ;

    Donne le dterminent dune matrice.

    trace trace(M) ;

    Donne la trace dune matrice.

    transpose transpose(M) ;

    Donne la transpos dune matrice.

    inverse inverse(M) ;

    Donne linverse dune matrice.

    rank rank(M) ;

    Donne le rang dune matrice.

    kernel kernel(M) ;

    Donne le noyau dune matrice.

    colspace colspace(M) ;

    Donne limage dune matrice.

    Commande et Syntaxe Rle

    charpoly charpoly(M , variable) ;

    Donne le polynme caractristique dune matrice. Remarque :

    variable reprsente la variable du polynme.

    eigenvals eigenvals(M) ;

    Donne les valeurs propres dune matrice. (la squence des racines du polynme caractristique).

    eigenvects eigenvects(M) ;

    Donne une squence de listes contenant les vecteurs

    propres dune matrice. Remarque :

  • Actions lmentaires de MAPLE

    HAMMAMI Mohamed Page 11

    Le rsultat de la commande eigenvects est une squence de listes dont chaque liste contient dans

    lordre la valeur propre, son ordre de multiplicit et le vecteur propre associ (contenu dans un ensemble).

    N.B : on rappelle quon peut rcuprer les vecteurs propres en utilisant les commandes manipulant les

    squences, les listes et les ensembles.

    jordan jordan(M) ; jordan(M , P) ;

    Donne la rduction de jordan dune matrice.

    Remarque 1 :

    Cette commande permet de diagonaliser une matrice

    si la matrice est diagonalisable et donne une matrice

    triangulaire suprieure sinon.

    Remarque 2 :

    P reprsente la matrice de passage.

    linsolve linsolve(M , V) ;

    Rsoudre le systme linaire .M X V .

    M : matrice des coefficients ,i ja du systme linaire.

    V : vecteur second membre. X : vecteur des inconnus.

    III. Complments

    Commande et Syntaxe Rle diag diag(Val1 , Val2 , ) ;

    Donne une matrice diagonale avec Val1 , Val2 , les coefficients diagonaux.

    map map(Nom_fct , M) ;

    Appliquer une fonction prdfinie de MAPLE sur

    tous les lments dune matrice.

    equal equal(M1 , M2) ;

    Vrifier si deux matrices sont identiques ou non.

    concat concat(V1 , V2 , ) ;

    Donne une matrice par concatnation des vecteurs V1 , V2 , . N.B :

    La concatnation est en colonne.

    augment augment(M1 , M2 , ) ;

    Donne une matrice par concatnation des matrices

    M1 , M2 , . N.B :

    La concatnation est en colonne.

    genmatrix genmatrix(S , [var1 , var2 , ]) ;

    Gnrer une matrice partir dun systme dquations (var1 , var2 , reprsente les variables du systme).

    geneqns geneqns(M , [var1 , var2 , ]) ;

    Gnrer un systme dquations partir dune matrice. (var1 , var2 , reprsente les variables du systme).

    rowdim rowdim(M) ;

    Donne le nombre de lignes dune matrice.

    coldim coldim(M) ;

    Donne le nombre de colonnes dune matrice.

  • Actions lmentaires de MAPLE

    HAMMAMI Mohamed Page 12

    row row(M , i) ; row(M , i..k) ;

    Extraire une ou plusieurs lignes dune matrice.

    col col(M , j) ; col(M , j..k) ;

    Extraire une ou plusieurs colonnes dune matrice.

    swaprow swaprow(M , i , j) ;

    Permuter les lignes i et j dune matrice.

    swapcol swapcol(M , i , j) ;

    Permuter les colonnes i et j dune matrice.

    hilbert hilbert(n) ;

    Donne la matrice dHilbert dordre n.

    vandemonde vandermondet([e1 , e2 , ]) ;

    Donne la matrice de Vandermonde partir des

    lments e1 , e2 , .

    charmat charmat(M , var) ;

    Donne la matrice caractristique dune matrice. (matrice dont son dterminant est le polynme

    caractristique)

  • Actions lmentaires de MAPLE

    HAMMAMI Mohamed Page 13

    Equations diffrentielles

    Lobjet de ce TP est de voir les possibilits que nous offre MAPLE pour la rsolution des

    quations diffrentielles. Il sera galement loccasion de parler de rsolution formelle et

    rsolution numrique dune quation diffrentielle.

    La rsolution avec MAPLE se fait en gnral laide de la commande dsolve.

    I. Rsolution formelle

    Dans cette partie nous cherchons rsoudre nos quations diffrentielles dune manire

    exacte : c'est--dire que nous exprimons les solutions des quations laide de fonctions

    usuelles.

    Commande et Syntaxe Rle dsolve dsolve(ED , inconnue) ; dsolve({ED , CI} , inconnue) ;

    Rsoudre formellement une quation diffrentielle.

    N.B :

    ED : lquation diffrentielle. CI : les conditions initiales.

    rhs rhs(E)

    Rcuprer le membre droit dune expression de relations.

    Remarque 1 :

    Le rsultat de la rsolution formelle dune quation diffrentielle est une expression dgalit tel que le membre droit reprsente lexpression de la solution.

    Remarque 2 :

    On rappelle que la commande unapply permet de convertir une expression en une fonction et la

    commande plot pour une ventuelle reprsentation graphique.