******************************** Mode d'emploi de MuPAD Light (www.SciFace.com) (non exhaustif) ******************************** --------------------------------------------------------------------------------------------- Le document texte qui suit, est adapté du document original se trouvant à l'adresse ________________________________________________________________________________________ http://www2.ac-lille.fr/hazard-armentieres/maths/mupad/Mode%20d'emploi%20de%20Mupad.html ________________________________________________________________________________________ auquel ont été ajoutés, en vrac, quelques renseignements utiles, par frederic.diaz@ac-besancon.fr ---------------------------------------------------------------------------------------------- Présentation de MuPAD sur le site de l'Académie de Lille http://www2.ac-lille.fr/hazard-armentieres/maths/mupad/Presentation_de_mupad.htm Sur ce site figurent les liens utiles pour TELECHARGER MuPAD light 2.5 ainsi que pour aller ENREGISTRER une licence à usage personnel. ---------------------------------------------------------------------------------------------- Adresses e-mail du site scilab, créateur de MuPAD Light info@sciface.com Information Générale support@sciface.com Service client and Support distribution@sciface.com Distribution des produits bugs@sciface.com Bug Reports ------------------------------------------- Adresse du CNDP, où a été développée une distribution des logiciels scientifiques Scilab, MuPAD Light, Caml. http://www.cndp.fr/lesScripts/bandeau/bandeau.asp?bas=http://www.cndp.fr/maths/suite/accueil.htm --------------------------------------------------------------- Site MuPAD sur l' Association Française des Utilisateurs du Libre http://www.aful.org/wws/arc/mupad/ ---------------------------------------------------------------------------------------------- MuPAD light est la version allégée gratuite pour usage personnel, d'un logiciel professionnel de calcul numérique et formel, commercialisé par la société allemande SciLab. L'entrée des ordres dans MuPAD Light se fait en mode texte, ce qui est un peu inconfortable pour le débutant. Ces Ordres peuvent être issus d'un copier-coller avec un éditeur. Il est conseillé de désactiver, dans l'éditeur l'option "Edition Retour à la ligne automatique" afin de pouvoir travailler sur des lignes longues. ************************************************************************** * Rappels sur les principaux * * raccourcis clavier utilisés * * *************************************** * * * * * * * * Basculer entre l'éditeur de texte et la fenêtre MuPAD : Alt tab * * Fermer la fenêtre active (par exemple la fenêtre Vcam : Alt F4 * * * * Sauver le fichier sous le bloc notes : Alt F puis E * * * * Aller tout à la fin d'un fichier ou d'une fenêtre MuPAD : Ctrl Fin * * * * Aller au début d'une ligne : home * * Sélectionner une ligne entière du début à la fin : maj Fin * * * * Aller à la fin d'une ligne : Fin * * Sélectionner une ligne entière de la fin au début : maj home * * * * Copier : Ctrl C * * Coller : Ctrl V * ************************************************************************** Sous MuPAD Light, une ligne validée représente une commande. Après l'appui de la touche Entrée le logiciel essaie d'exécuter la commande. Il affiche le résultat ou un message d'erreur. L'appui de shift enter permet d'aller à la ligne sans exécuter la commande. On peut traîner ou copier (clic droit)en provenance de l'aide, toute ligne débutant par un " >> " vert. Le résultat de la dernière commande exécutée peut être réutilisé en le nommant %. Après l'affichage résultant du traitement de la commande il n'est plus possible de modifier les lignes affichées. Pour réutiliser une ligne précédente ou la modifier il faut la copier par Edit et Copier ou Ctrl C puis la coller par Edit et Coller ou Ctrl V. Attention à ne pas confondre les symboles = , := , :: . Respecter les majuscules et minuscules, les ( , ), [ , ] .. On peut écrire plusieurs commandes sur une ligne en les séparant par le symbole ; ou le symbole : (dans ce cas toutes les commandes sont bien exécutées mais seul le résultat de la dernière est affiché) La feuille de calcul de Mupad Light ne peut pas être sauvegardée. Il faudra passer par un enregistrement des ordres dans un fichier en format .txt au moyen d'un copier coller L'affichage d'un graphique détruit le précédent. On peut enregistrer le graphique par File puis Save as. ---------------------------------------------------------------------------------------------- SOMMAIRE ---------------------------------------------------------------------------------------------- 1- Créer un ensemble énuméré 2- Créer un intervalle 3- Opérations sur les ensembles 4- Fixer le type d'une variable, affecter une valeur à une variable 5- Vérifier qu'un nombre est d'un type donné 6- Évaluer une expression pour une (des) valeurs particulières de la (des) variable(s) 7- Créer une fonction 8- Créer la courbe représentative d'une fonction sur un intervalle 9- Tracer la courbe représentative d'une fonction sur un intervalle 10- Définir une "Scène" contenant la ou les courbes représentatives d'un ou plusieurs fonctions 11- Afficher une scène 12- Autre commande d'affichage du graphique d'une ou plusieurs fonctions 13- Créer un point 14- Créer une liste de points 15- Afficher un point ou une liste de points 16- Créer une courbe paramétrée 17- Tracer une courbe paramétrée 18- Développer une expression 19- Développer et réduire un polynôme 20- Simplifier une expression quelconque 21- Simplifier une expression 22- Factoriser un polynôme ou un quotient de polynômes 23- Simplifier un quotient de polynômes 24- Résoudre une équation 25- Résoudre un système d'équations 26- Résoudre un système d'équations linéaires 27- Résoudre une inéquation, un système d'inéquations à une inconnue 28- Déterminer une limite 29- Calculer une dérivée 30- Déterminer une primitive 31- Calculer une intégrale 32- Résoudre un équation différentielle 33- Statistiques 34- Arithmétique ---------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------- 1- Créer un ensemble énuméré **************************** e:= {1,-3,5}crée l'ensemble formé des éléments 1, -3 et 5. f:= {} crée un ensemble vide ---------------------------------------------------------------------------------------------- 2- Créer un intervalle ********************** i:= Dom::Interval(-2,5) crée l'intervalle ]-2;5[ j:= Dom::Interval(-Infinity,4) crée]-¥ ; 4[ k:= Dom::Interval([3,7.2]) crée l'intervalle [3;7,2] l:= Dom::Interval([5],8) crée l'intervalle [5,8[ m:= Dom::Interval(-3.7,[2]) crée l'intervalle ]-3,7;2] ---------------------------------------------------------------------------------------------- 3- Opérations sur les ensembles ******************************* Si e1 et e2 sont deux ensembles, e:= e1 intersect e2 crée l'ensemble e = e1 inter e2 f:= e1 union e2crée l'ensemble f = e1 union e2 g:= e1 minus e2crée l'ensemble g = e1 \ e2 ---------------------------------------------------------------------------------------------- 4- Fixer le type d'une variable, affecter une valeur à une variable ******************************************************************* assume (x,Type::Positive) définit la variable x comme un réel strictement positif On peut aussi définir les types suivants: Complex , Imaginary , Integer , NegInt , NegRat , Negative , nNegInt , nNegRat , nNegative , nZero , Numeric , Odd , PosInt , PosRat , Positive , Prime , Rational , Real. PI est le nombre p E est le nombre e I est le nombre imaginaire tel que I2 = -1. Si x est un nombre complexe, Re(x) est la partie réelle de x Im(x) est la partie imaginaire de x conjugate(x) est le complexe conjugué de x abs(x) est le module de x rectform(x) est la forme cartésienne du complexe x si a et b sont les parties réelle et imaginaire d'un nombre complexe x arg(a,b) est l'argument du complexe x unassume (x) ne fixe plus le type de x x:= sqrt(2) affecte la valeur à la variable x qui va la conserver jusqu'à une autre affectation delete(x) efface la valeur de x ---------------------------------------------------------------------------------------------- 5- Vérifier qu'un nombre est d'un type donné ******************************************** is (-2,Type::Negint) vérifie que -2 est un entier strictement négatif ---------------------------------------------------------------------------------------------- 6- Evaluer une expression pour une (des) valeurs particulières de la (des) variable(s) ************************************************************************************** subs( ln(a^(3*sin(x*PI/4))),x=2,a=E) remplace x par 3 et a par E dans l'expression sans évaluer les fonctions eval( subs( ln(a^(3*sin(x*PI/4))),x=3,a=E) ) évalue l'expression numérique DIGITS:=20fixe le nombre de chiffres significatifs à 20 (la valeur par défaut est 10) float(3*sqrt(2)/2) donne une approximation décimale ---------------------------------------------------------------------------------------------- 7- Créer une fonction ********************* f:=x-> sqrt(x^3-1)/(x*(sin(x))^3) crée la fonction définie par (l'ensemble de définition n'est pas donné) f(PI/2) rend l'image par f du nombre f(a) rend l'image par f du nombre a g:=x-> piecewise([x<-1,x^3],[x>=-1 and x<1,3*x+2],[x>=1,(3*x^2+7)/2]) crée la fonction g définie par intervalles telle que On utilise les opérations habituelles +, - , *, /, ^, !, sqrt, abs, sin, cos, tan, ln, exp, arccos, arcsin, arctan... La composée d'une fonction f par une fonction g s'obtient par g @ f. ---------------------------------------------------------------------------------------------- 8- Créer la courbe représentative d'une fonction sur un intervalle ****************************************************************** Si f est la fonction préalablement définie, cf:= plot::Function2d(f(x),x = -2..2) crée la courbe représentative de f pour x Î [-2;2] cf:= plot::Function2d(f(x),x = -2..2,y = 0..1) crée la courbe représentative de f pour x Î [-2;2] ne montrant que les points dont l'ordonnée est dans l'intervalle [0;1]. On peut définir ou redéfinir certaines caractéristiques de la courbe: cf::range:= x = 2..5modifie l'intervalle de valeurs de x en [2;5] cf::yrange:= 0..10modifie l'intervalle des ordonnées en [0,10] cf::yrange:= Automaticadapte automatiquement l'intervalle des ordonnées aux valeurs de f(x) calculées cf::Color:=[Flat,RGB:: CoralLight]fixe la couleur de la courbe en corail Les couleurs disponibles sont: MarsOrange, CoralLight, BlueMedium, RoseMadder, EnglishRed, FleshOchre, DarkOrange, DodgerBlue, OrchidDark, LightBeige, Turquoise, Burlywood, Raspberry, RosyBrown, MistyRose, Gainsboro, Goldenrod, Chocolate, Firebrick, SlateGrey, RoyalBlue, LightGrey, VioletRed, SlateGray, CyanWhite, LightGray, PinkLight, RawSienna, SteelBlue, LawnGreen, SlateBlue, MintCream, BlueLight, OliveDrab, LimeGreen, OrangeRed, GoldOchre, GreenPale, GreenDark, PeachPuff, DeepOchre, IndianRed, KhakiDark, LampBlack, AliceBlue, Titanium, PermanentRedViolet, Cornsilk, CadmiumYellowLight, Honeydew, Seashell, Lavender, Cerulean, WarmGrey, Moccasin, Eggshell, WarmGray, NavyBlue, RawUmber, ColdGrey, SapGreen, ColdGray, DeepPink, SeaGreen, UltramarineViolet, Thistle, Antique, SpringGreenMedium, SkyBlue, HotPink, Magenta, Peacock, DimGrey, DimGray, OldLace, Yellow, Purple, Tomato, AquamarineMedium, Violet, Maroon, NaplesYellowDeep, Carrot, Salmon, Bisque, Floral, Navajo, Sienna, Orange, Indigo, Orchid, ChromeOxideGreen, CobaltVioletDeep, Cobalt, TurquoiseMedium, Banana, AureolineYellow, AlizarinCrimson, Ivory, Brown, Azure, Ghost, White, Smoke, Olive, VioletRedMedium, Melon, Wheat, Linen, Sepia, Flesh, SlateBlueMedium, Coral, Green, Brick, Khaki, CadmiumRedLight, Peach, Cadet, Black, Beige, CornflowerBlue, PermanentGreen, Snow, LightGoldenrod, GoldenrodLight, Plum, Navy, Peru, Mint, SlateGreyLight, Grey, Zinc, Gray, SlateGrayLight, Pink, SteelBlueLight, Cyan, SlateBlueLight, Blue, Gold, OliveGreenDark, BlanchedAlmond, SeaGreenMedium, TurquoiseBlue, CadmiumRedDeep, TurquoisePale, TurquoiseDark, MadderLakeDeep, CadmiumYellow, GreenishUmber, LavenderBlush, ViridianLight, GoldenrodPale, GoldenrodDark, CadmiumOrange, ManganeseBlue, SlateGreyDark, VioletRedPale, CinnabarGreen, SlateGrayDark, Red, SlateBlueDark, SeaGreenLight, PrussianBlue, PurpleMedium, MidnightBlue, CadmiumLemon, VanDykeBrown, OrchidMedium, LemonChiffon, SkyBlueLight, GeraniumLake, EmeraldGreen, SeaGreenDark, YellowBrown, Ultramarine, YellowLight, YellowOchre, YellowGreen, GreenYellow, BurntSienna, SpringGreen, ForestGreen, LightSalmon, BrownOadder, VenetianRed, SaddleBrown, CobaltGreen, SkyBlueDeep, Chartreuse, MarsYellow, TerreVerte, SandyBrown, BurntUmber, Aquamarine, BlueViolet, PowderBlue, BrownOchre, IvoryBlack, VioletDark, PapayaWhip. cf::Discont:= FALSE ne respecte pas les discontinuités de la courbe (la valeur par défaut est TRUE) cf::Grid:= [200]fixe le nombre de points de courbe à 200 (la valeur par défaut est [100] ) cf::LineSyle:= DashedLinestrace la courbe en tirets (la valeur par défaut est SolidLines) cf::LineWidth:= 15fixe l'épaisseur du trait de la courbe à 15 pixels (la valeur par défaut est 1) Remarque: La commande cf:= plot::Function2d(f(x), x = -2..2,y = 0..1, Color=[Flat,RGB:: CoralLight], Grid= [200], LineWidth= 15) définit également la courbe cf Attention! les symboles := sont remplacés par = Pour effectuer une modification il vaut mieux faire un "copier-coller" et modifier l'option souhaitée de la courbe. ---------------------------------------------------------------------------------------------- 9- Tracer la courbe représentative d'une fonction sur un intervalle ******************************************************************* Si cf est la courbe représentative de la fonction f définie ci-dessus, plot(cf) trace cette courbe dans une fenêtre graphique appelée Graphics-Vcam Light. Il est possible de zoomer sur le graphique, le copier, l'imprimer et le sauvegarder. ---------------------------------------------------------------------------------------------- 10- Définir une "Scène" contenant la ou les courbes représentatives d'un ou plusieurs fonctions *********************************************************************************************** k:=x->3*sin(x) h:=x->2*(cos(x))^2 ck:= plot::Function2d (k(x),x=-PI..PI,y=-3..3, Color=[Flat,RGB:: VioletRed]) ch:= plot::Function2d (h(x),x=-PI..PI,y=0..2, Color=[Flat,RGB:: AureolineYellow]) s:= plot::Scene(ck,ch) crée une scène pour y tracer les courbes ck et ch simultanément. La scène peut être modifiée par diverses options dont les suivantes: (après une modification il faut relancer plot(s) pour voir le résultat) s::Arrows:= TRUE affiche des flèches à l'extrémité des axes (la valeur par défaut est FALSE) s::Axes:= Corner affiche les axes dans le coin inférieur droit du graphique s::Axes:= Box entoure le graphique d'un rectangle et affiche les axes dans le coin inférieur droit s::Axes:= None n'affiche pas les axes s::Axes:= Origin affiche les axes passant par le point définit par AxesOrigin s::AxesOrigin:=[-PI,0] fixe les coordonnées du point d'intersection des axes (la valeur par défaut est Automatic) s::AxesScaling:=[Lin,Lin] ou [Lin,Log] ou [Log,Lin] ou [Log,Log] fixe le type d'échelle sur les axes (la valeur par défaut est [Lin,Lin]) s::BackGround:= RGB:: Honeydew fixe la couleur du fond (la valeur par défaut est RGB::White) s::FontSize:= 10 fixe la taille des caractères (la valeur par défaut est 8) s::ForeGround:= RGB::Firebrick fixe la couleur des axes et des caractères (la valeur par défaut est RGB::Black) s::Ticks:= [Steps = PI/2, Steps =0.1] fixe le pas des graduations affichées sur les axes (la valeur par défaut est Automatic) s::Ticks:= [Steps = [PI,11], Steps = [0.5,4]]fixe le pas des graduations affichées sur les axes et le nombre de traits de graduation entre deux graduations affichées s::GridLines:= Automatic trace un quadrillage correspondant à tous les traits de graduation définis par Ticks (la valeur par défaut est None) s::GridLines:= [Steps = PI/5,Steps = 0.02]fixe maillage du quadrillage s::GridLinesColor:= RGB:: OliveDrab fixe la couleur du quadrillage (la couleur par défaut est RGB::Gray) s::GridLinesWidth:= 2 fixe l'épaisseur des traits du quadrillage (la valeur par défaut est 1) s::GridLinesStyle:= SolidLines trace le quadrillage en traits continus (la valeur par défaut est DashedLines) s::Labeling:= FALSE n'affiche pas de nom pour les axes (la valeur par défaut est TRUE) s::Labels:= ["d","h"] noms donnés aux axes (la valeur par défaut est ["x","y"] s::Title:="Equation trigonométrique"donne un titre au graphique (la valeur par défaut est "") s::TitlePosition:=Below affiche le titre sous la courbe (la valeur par défaut est Above) s::Scaling:=Constrained affiche les courbes dans un repère orthonormal (la valeur par défaut est UnConstrained) s::LineStyle:= DashedLines affiche les courbes en tirets (la valeur par défaut est SolidLines) s::LineWidth:= 20fixe l'épaisseur des traits des courbes à 20 pixels (l'épaisseur par défaut est 1) Remarque: La commande s:= plot::Scene(ck , ch, BackGround = RGB:: Honeydew , FontSize =10 , ForeGround = RGB::Firebrick , Ticks = [Steps = [PI,11] , Steps = [0.5,4]] , GridLines= Automatic , GridLinesColor= RGB:: OliveDrab , GridLinesWidth = 2 , GridLinesStyle = SolidLines , Title = "Equation trigonométrique", TitlePosition = Below , LineWidth = 20) définit de la même manière la scène. Attention! les symboles := sont remplacés par = Pour effectuer une modification il vaut mieux faire un "copier-coller" et modifier l'option souhaitée de la scène. ---------------------------------------------------------------------------------------------- 11- Afficher une scène ********************** Si s est une scène, plot(s) affiche cette scène dans une fenêtre graphique appelée Graphics-Vcam Light. ---------------------------------------------------------------------------------------------- 12- Autre commande d'affichage du graphique d'une ou plusieurs fonctions ************************************************************************ La commande plotfunc2d( k(x) , h(x) , x = -PI..PI, BackGround = RGB:: Honeydew , FontSize =10 , ForeGround = RGB::Firebrick , Ticks = [Steps = [PI,11] , Steps = [0.5,4]] , GridLines= Automatic , GridLinesColor= RGB:: OliveDrab , GridLinesWidth = 2 , GridLinesStyle = SolidLines , Title = "Equation trigonométrique", TitlePosition = Below , LineWidth = 20) affiche également la courbe représentative des fonctions k et h (On ne peut pas fixer les caractères de chaque courbe) Attention! les symboles := sont remplacés par = Pour effectuer une modification il vaut mieux faire un "copier-coller" et modifier l'option de scène souhaitée. ---------------------------------------------------------------------------------------------- 13- Créer un point ****************** p:= plot::Point(-2 , 1.8) crée le point de coordonnées (-2 ; 1,8) p:= plot::Point([-2 , 1.8]) crée le point de coordonnées (-2 ; 1,8) p:: Color:= [Flat,RGB:: CinnabarGreen] fixe la couleur du point p::PointStyle:= Circles fixe la forme du point en cercle (la valeur par défaut est FilledSquares) p::PointStyle:= FilledCircles fixe la forme du point en disque p::PointSyle:= Squares fixe la forme du point en carré p::PointWidth:=40 fixe la taille du point à 20 pixels (la valeur par défaut est 30) Remarque: La commande p:= plot::Point(-2 , 1.8, Color=[Flat,RGB:: CinnabarGreen], PointStyle = FilledCircles, PointWidth =40) définit de la même manière le point. Attention! les symboles := sont remplacés par = Pour effectuer une modification il vaut mieux faire un "couper-coller" et modifier l'option du point souhaitée. ---------------------------------------------------------------------------------------------- 14- Créer une liste de points ***************************** Si p1, p2, p3 sont des points préalablement définis par p1::plot::Point(…) alors lp:= plot::Pointlist (p1,p2,p3) crée la liste des points p1, p2,p3. On peut définir une liste de points dont les coordonnées sont calculées: lpc := plot::Pointlist (plot::Point (cos(n*PI/12) , sin(n*PI/12) ) $n=-12..11) crée une liste de points dont les coordonnées dépendent de l'entier n prenant les valeurs entières de -12 à 11 Comme pour Point il est possible de fixer la couleur, le style, la taille des points. ---------------------------------------------------------------------------------------------- 15-Afficher un point ou une liste de points ******************************************* On affiche les points par l'intermédiaire d'un scène. La scène peut aussi contenir des courbes représentatives de fonctions et des courbes paramétrées. sp:=plot::Scene(lpc) crée une scène avec les points de la liste de points lpc sp:=plot::Scene(lpc,ck,ch) crée une scène avec les points de la liste de points lpc et les courbes ck et ch On peut compléter la scène avec les options de Scene. plot(sp) affiche la scène dans une fenêtre graphique appelée Graphics-Vcam Light ---------------------------------------------------------------------------------------------- 16- Créer une courbe paramétrée ******************************* cp:=plot::Curve2d( [2*cos(t),3*sin(t)], t=0..4*PI) crée la courbe paramétrée pour t Î [0;4p ] Les options de Curve sont les mêmes que celle de Function2d. ---------------------------------------------------------------------------------------------- 17- Tracer une courbe paramétrée ******************************** Si cp est une courbe paramétrée, plot(cp) affiche cette courbe dans une fenêtre graphique appelée Graphics-Vcam Light. On peut aussi intégrer la courbe dans un scène et afficher la scène. ---------------------------------------------------------------------------------------------- 18- Développer une expression ***************************** expand ((x^2+1)*(x-3)^5) développe l'expression expand (cos(a+PI/3)) développe l'expression selon les règles trigonométriques ---------------------------------------------------------------------------------------------- 19- Développer et réduire un polynôme ************************************* collect ((2*x+y)^2-(x-y)^3,x) développe le polynôme en x collect ((2*x+y)^2-(x-y)^3,y) développe le polynôme en y collect ((2*x+y)^2-(x-y)^3,y) développe le polynôme en y et factorise les coefficients des yn. ---------------------------------------------------------------------------------------------- 20- Simplifier une expression quelconque **************************************** simplify ((cos(x))^2+sin(2*x)+cos(x-PI/2)) simplifie l'expression simplify ((cos(x))^2+sin(2*x)+cos(x-PI/2),cos) simplifie l'expression selon les règles impliquant les cosinus. simplify ((sqrt(4+2*sqrt(3)))/(sqrt(3)-1),sqrt) simplifie l'expression selon les règles impliquant les racines carrées Les autres cibles possibles sont sin, ln, exp. ---------------------------------------------------------------------------------------------- 21- Simplifier une expression ***************************** combine ((x*y)^3*(x*y^2)) simplifie un produit de puissances combine ((sin(a))^2*cos(b)-(cos(b))^2,sincos) simplifie l'expression selon les règles transformant un produit de sinus et cosinus en somme Les autres cibles possibles sont arctan, exp, ln. ---------------------------------------------------------------------------------------------- 22- Factoriser un polynôme ou un quotient de polynômes ****************************************************** factor (x^4-7*x^2+12) factorise en produit de polynômes à coefficients entiers factor ((x^3-8)/(x^3-6*x^2+12*x-8)) factorise numérateur et dénominateur et simplifie ---------------------------------------------------------------------------------------------- 23- Simplifier un quotient de polynômes *************************************** normal (x/(x^2-4)+(5*x+1)/(3*x-6)) simplifie l'expression rationnelle à coefficients entiers ---------------------------------------------------------------------------------------------- 24- Résoudre une équation ************************* solve (x^3=8,Domain=Dom::Real)résout l'équation polynômiale d'inconnue x dans l'ensemble des réels solve (y^3=a,y,Domain=Dom::Complex)résout l'équation polynômiale d'inconnue y dans l'ensemble des complexes Les autres domaines sont Dom::Rational et Dom::Integer solve(sin(x)=1/x)ne rend pas de solution numeric::solve(sin(x)=1/x,x=0..PI)rend une valeur approchée d'une solution dans l'intervalle donné ---------------------------------------------------------------------------------------------- 25- Résoudre un système d'équations *********************************** solve ({x^2+y^2-6*x-4*y+12=0,x-y-2=0},{x,y},Domain=Dom::Real) résout le système d'inconnue (x,y) dans þ ---------------------------------------------------------------------------------------------- 26- Résoudre un système d'équations linéaires ********************************************* linsolve ({3*x+y+z=4,x+5*y-z=12,2*x+4*y+3*z=7},{x,y,z}) résout le système linéaire d'inconnue (x,y,z) ---------------------------------------------------------------------------------------------- 27- Résoudre une inéquation, un système d'inéquations à une inconnue ******************************************************************** solve (x^3+2*x^2-x-2<=0,x) résout l'inéquation d'inconnue x dans þ solve ({a^2>3,a<5},a) résout le système d'inéquations d'inconnue a dans þ ---------------------------------------------------------------------------------------------- 28- Déterminer une limite ************************* limit (sin(x)/x,x=0) détermine la limite en 0 de la fonction limit (sin(x)/(cos(x)-1),x=0,Right) détermine la limite à droite en 0 de la fonction limit (sqrt((x-5)^2)/(x-5),x=5,Left) détermine la limite à gauche en 5 de la fonction limit ((4*x^2-7*x)/(3*x^2+5) ,x=-infinity) détermine la limite en -¥ de la fonction ---------------------------------------------------------------------------------------------- 29- Calculer une dérivée ************************ f:= x-> x^3*sin(2*x+a)/(x+a) diff (f(x),x) rend l'expression de f '(x) subs(diff(f(x),x), x=2*k) rend l'expression de f '(2k) f ' (2*k) rend l'expression de f '(2k) ---------------------------------------------------------------------------------------------- 30- Déterminer une primitive **************************** int (5*x/(4*x^2-7)^3,x) détermine une primitive de la fonction par rapport à x ---------------------------------------------------------------------------------------------- 31- Calculer une intégrale ************************** int (3*x/((x-1)^2),x=2..3) calcule l'intégrale de la fonction sur l'intervalle donné float((int((sin(t))^2/(t+1),t=0..2))) calcule une valeur approchée de l'intégrale ---------------------------------------------------------------------------------------------- 32- Résoudre un équation différentielle *************************************** solve (ode(2*y'(x)+3*y(x)=cos(x),y(x))) résout l'équation différentielle d'inconnue la fonction y solve (ode({y''(x)+2*y'(x)+5*y(x)=sin(x),y(0)=0,y'(0)=0},y(x))) résout l'équation différentielle avec conditions initiales ---------------------------------------------------------------------------------------------- 33- Statistiques **************** random() rend un nombre entier de 12 chiffres aléatoire r:=random(-20..30) fait de r une fonction génératrice de nombres entiers aléatoires entre -20 et 30 r( ) produit un nombre entier aléatoire entre -20 et 30 r( ) $i = 1..10 produit 10 nombres entiers aléatoires entre -20 et 30 s1:=stats::sample([r() $i = 1..5]) crée la série statistique s1 à une variable constituée de 6 nombres alétoires créés par la fonction génératrice r ci-dessus. s1:=stats::sample([8.3,5.2,-6.7,2.4]) crée la série statistique s1 à une variable stats::mean(s1) rend la moyenne de la série statistique s1 stats::median(s1) rend la médiane de la série statistique s1 stats::a_quantil(0.25,s1) rend le premier quartile de la série statistique s1 stats::variance(s1) rend la variance de la série statistique s1 s:=stats::stdev(s1) rend l'écart-type de la série statistique s1 s2:=stats::sample([[1.5,4.2],[2.1,4.9],[2.8,7.2]]) crée la série statistique à deux variables s2 print(s2) affiche la série statistique s2 en deux colonnes stats::linReg(s1) rend un tableau [a,b] tel que la droite de régression linéaire de y (deuxième colonne ) en x (première colonne) ait pour équation y = a + bx ---------------------------------------------------------------------------------------------- 34- Arithmétique **************** ifactor (7007) décompose l'entier en produit de facteurs premiers gcd(90,165,105) rend le plus grand diviseur commun igcdex(90,165) rend le pgcd de 90 et 165 et des nombres u et v tels que pgcd = 90*u + 165*v ilcm(132,66,42) rend le plus petit multiple commun 45 mod 7 rend le reste dans la division euclidienne de 45 par 7 45 div 7 rend le quotient dans la division euclidienne de 45 par 7 ---------------------------------------------------------------------------------------------- ****************************************************** * Annexe Aide Mémoire pour MuPAD et travaux en cours * ****************************************************** info(plot) donne accès à la liste des instructions correspondantes. Syntaxe minimale pour une représentation graphique exemple : représentation graphique de f définie par x->10x3-x pour des valeurs de x comprises entre -2 et 5 cf:=plot::Function2d((10*x^3-x,x=-2..5)) : plot (cf) --------------------------------------------------------------- REPRESENTATIONS GRAPHIQUES PLUS ÉLABORÉES On définit la fonction f, puis la courbe cf, puis la scène s sur laquelle apparaît la courbe cf Syntaxe développée : f:=150*exp((ln(1/2)/0.4)*x)*cos(6.2832*x/0.4) cf:=plot::Function2d((f,x=0..3,y=-150..150),Color=[Flat,RGB:: Black],Grid=[200]) s:= plot::Scene(cf) s::Labels:=["t (s)"," angle (°)"] s::GridLines:= [Steps = 0.4,Steps = 50] fixe le maillage du quadrillage s::GridLinesStyle:= SolidLines les traits du quadrillage seront en traits continus s::Ticks:= [Steps = [0.2,1], Steps = [50,4]] sur x echelles tous les 0.2, 1 graduation intermédiaire (= 2 intervalles de 0.1 chacun) sur y echelles tous les 50, 4 graduations intermédiaires (= 5 intervalles de 10 chacun) s::BackGround:= RGB::White fixe l'arrière plan de la scène en blanc s::GridLinesStyle:= SolidLines les traits du quadrillage seront en traits continus plot (s) ---------------------------------------------------------------------------------------------- SYNTAXE CONDENSÉE D'UNE REPRÉSENTATION GRAPHIQUE ÉLABORÉE ********************************************************* f:=150*exp((ln(1/2)/0.4)*x)*cos(6.2832*x/0.4) cf:=plot::Function2d((f,x=0..3,y=-150..150),LineWidth=12,Color=[Flat,RGB:: Black],Grid=[400]) s:= plot::Scene(cf,BackGround= RGB::White,Labels=["temps (s)"," angle ( °)"],Ticks= [Steps = [0.2,1], Steps = [50,4]],GridLines= [Steps = 0.4,Steps = 50],GridLinesStyle= SolidLines,GridLinesWidth=10,GridLinesColor=RGB:: Black) : plot (s) REM : les := sont remplacés par des = quand on les enchaîne dans une même ligne d'ordres. ---------------------------------------------------------------------------------------------- DERIVEES PRIMITIVES ET INTEGRALES ********************************* f:= x-> 2*x^3-5*x+2 définit la fonction f(3) donne la valeur de f(3) diff(f(x),x) donne sa fonction dérivée de mme que f'(x) int(f(x),x) donne sa fonction primitive int(f(x),x=2..3) calcule l'intégrale (somme de 2 à 3 de f(x) dx) Autre syntaxe possible (moins rigoureuse et déconseillée) f:=2*x^3-5*x+2 définit la fonction (en fait, pas exactement...) diff(f,x) donne sa fonction dérivée int(f,x) donne sa fonction primitive int (f,x=2..3) calcule l'intégrale (somme de 2 à 3 de f(x) dx) REM : Dans cette notation, on ne définit pas rigoureusement une fonction, mais une variable f liée à la variable indépendante x. Une conséquence est que f(3) ne sera pas calculable. ---------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------- ----------------------------------------------------------------------------------------------