Calcul numérique (avec Maple)

Slides:



Advertisements
Présentations similaires
Premier programme en C :
Advertisements

Portée des variables VBA & Excel
Sensibilisation à l’Algorithmique
Sensibilisation à l’Algorithmique et structure de données
GEF 243B Programmation informatique appliquée Types dérivés, structures et tableaux §
Approfondissement du langage
Les fonctions de XPath et XSLT
1 Révisions. 2 Tableaux non contraints Déclaration du type : type Tvecteur = tableau ( intervalle dentiers) de entiers type Tvecteur is array (integer.
Calcul numérique (avec Maple)
Calcul numérique (avec Maple)
8. Les tableaux P. Costamagna – ISEN N1.
MATLAB Initiation à Matlab.
Algorithme et programmation
Les sous-programmes Chapitre n° 5: Objectifs : Activité:
Lycée Louis Vincent SEANCE 6 Python Les listes Lundi 25 novembre 2013.
Initiation au système d’information et aux bases de données
INTRODUCTION A MATLAB ENVIRONNEMENT MATLAB.
Initiation au système d’information et aux bases de données
Cours 7 - Les pointeurs, l'allocation dynamique, les listes chaînées
Structures de données linéaires
Tableau croisé dynamique sous Excel (TCD).
Création d’un programme :
Chap 4 Les bases de données et le modèle relationnel
Outils de Programmation
O UTILS DE P ROGRAMMATION Mr. BENDIB. I MAA, LAMIS Laboratory, Université de Tébessa.
Python La programmation objet
Complément Le diagramme des classes
Les pointeurs Modes d’adressage de variables. Définition d’un pointeur. Opérateurs de base. Opérations élémentaires. Pointeurs et tableaux. Pointeurs et.
Structures de données IFT Abder Alikacem La classe string Département dinformatique et de génie logiciel Édition Septembre 2009 Département dinformatique.
Le langage Javascript pour le web
Xpath XML Path language par Yves Bekkers
Une nouvelle structure de données : les tableaux
Principes de programmation (suite)
1 SQL: Requêtes, Programmation et Triggers Chapitre 5, Sections 15.5.
Chapitre 1 Le Sens des nombres
Contrôle de types Les types en programmation Expressions de types Un contrôleur de types Equivalence de types Conversions de types Généricité.
1 PHP 1.Langage PHP 1.1. Types de base, variables et constantes 1.2. Opérateurs et expressions 1.3. Instructions 1.4. Fonctions 2.Accès aux bases de données:
IFT 6800 Atelier en Technologies d’information
Les concepts et les méthodes des bases de données
Chapitre 9 Les sous-programmes.
COURS DE PROGRAMMATION ORIENTEE OBJET :
Standard Template Library
CSI 1502 Principes fondamentaux de conception de logiciels
Calcul des groupes d'homologie d’objets discrets
Tableaux Introduction aux tableaux à une dimension. Déclaration, stockage, initialisation et accès en lecture ou en écriture aux composantes d’un tableau.
PHP 2° PARTIE : FONCTIONS ET FORMULAIRE
Animateur : Med HAIJOUBI
Le langage C Structures de données
TP n°3 Javascript Contrôle de formulaire
JavaScript Nécessaire Web.
- énergie bornée (tend vers 0 lorsque
Les variables et les types standard des données
1 Structures des données. 2  Le tableau permettait de désigner sous un seul nom un ensemble de valeurs de même type, chacune d'entre elles étant repérée.
 Syntaxe du langage PHP
Structures de données avancées : Concepts du Multidimensionnel D. E ZEGOUR Institut National d ’Informatique.
Structures simples et tableaux Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Sélection de colonnes (la projection)
Tableur 1.Concept : Un tableur permet de manipuler des données, de le présenter, de les trier et d'effectuer automatiquement des calculs sur des nombres.
Cours LCS N°4 Présenté par Mr: LALLALI
1 Système d’exploitation Les scripts csh 1 ère Année Année Tienté HSU.
 Formulaires HTML : traiter les entrées utilisateur
1 PHP 5 Notions fondamentales (niveau 1 – cours #2) Formation continue – Cégep de Sainte-Foy.
Les bases de l’algorithmique
Comprendre le SGBDR Microsoft Access – partie 2
Scripts et fonctions Instructions de contrôle
Philippe Gandy - 8 septembre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc.
Introduction au langage PL/SQL
A la découverte d’Excel Certificat Informatique et Internet.
A.Aarabi ´. ´ Objectifs Faciliter la prise en main du logiciel MATLAB Présenter les fonctionnalités utiles au travail scientifique.
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 4 Support de cours rédigé par Bernard COFFIN Université.
Transcription de la présentation:

Calcul numérique (avec Maple) Maplesoft http://www.maplesoft.com/ Maple version 9.5

Le logiciel de calcul formel Maple Sources utilisées pour ce cours : Raphaël Giromini http://www.giromini.org/maple/index.html M. Chare (cours-tds années précédant 2006). José-Marconi Rodrigues (tps précédant 2006).

Brainstorming … qu’a t-on vu la dernière fois ?

Brainstorming … qu’a t-on vu la dernière fois ? is, type and, or, not, `if` (expr, alt1, alt2) définition d’une procédure : proc, local Affichage : plot, with(plot), textplot

Chapitre 6 : Types de données fondamentaux

Rappel de la semaine dernière Maple contient un grand nombre de types de données. Nous avons vu pour le moment les types : complex integer fraction float string

Rappel de la semaine dernière Il existe de nombreux autres types « exotiques » : function, procedure, indexed, series, ::, .., uneval etc. Certains types sont également présents dans d’autres langages de programmation comme les types : suite (exprseq), liste (list), ensemble (set), tableau (array), table (table).

Suites En Maple, une suite est un ensemble d’expressions écrites dans un ordre donné et séparées par des virgules.

Listes En Maple, une liste est une « suite entourée de crochets ».

Suite  Liste Pour passer d’une suite à une liste on ajoute des crochets [ ]. Pour passer d’une liste à une suite, on utilise la commande op.

Construction de suites génériques (séquence ou itération) On utilise la commande seq ou bien la programmation par itération pour construire une suite générique.

Construction de suites génériques (séquence ou itération)

Accès à un n-ème terme (suite ou liste) Pour accéder au n-ème terme d’une liste ou d’une suite, on écrit le nom de la variable suivi du numéro du terme entre crochets

Sous-suite, sous-liste et concaténation concaténation de suites concaténation de listes

Quelques particularités des listes Commandes propres aux listes : Nombre d’éléments : nops Substitution d’un élément sachant son nom: subs Substitution d’un élément sachant sa place: subsop Tri : sort.

Quelques particularités des listes Le 5ème élément est remplacé par la valeur 10

Extraction d’une sous-liste par un critère (fonction booléenne) sur la liste On utilise la commande select

Dernière remarque On peut créer des listes de listes

Les ensembles Un ensemble est une suite d’éléments qui ne se répètent pas et n’ont pas d’ordre particulier. En Maple un ensemble se saisit par une énumération d’expressions séparées par des virgules et entourée d’accolades { }.

Les ensembles Illustration :

Suite  Ensemble Pour passer d’une suite à un ensemble on ajoute des crochets { }. Pour passer d’un ensemble à une suite, on utilise la commande op.

Opérations sur les ensembles Union, Intersection, Soustraction :

Nombre d’éléments, Accès à un élément, sous-ensemble ...

Extraction d’un sous-ensemble par un critère (fonction booléenne) sur l’ensemble On utilise la commande select

Tableaux Un tableau est une structure de données qui contient des éléments de même type. En Maple, la syntaxe pour déclarer un tableau nommé T est la suivante : T := array(type_de_tableau, fonction_index, liste_valeurs); - type_de_tableau : (optionnel) symetric, antisymetric, sparse, diagonal et identity. - fonction_index : décrit la façon dont les index varient. - liste_valeurs: (optionnel) valeurs contenues dans le tableau.

Tableaux : Illustration nombre de lignes nombre de colonnes

Liste  Tableau Pour passer d’une liste de liste à un tableau on utilise la commande convert(…, ‘array’). Pour passer d’un tableau à une liste de liste on utilise également la commande convert(…, ‘listlist’). Remarque : on peut définir un tableau, sans préciser ses dimensions, en donnant ses entrées sous la forme de liste de listes.

Liste  Tableau

Nombre d’éléments, Accès à un élément...

Les tables Les tables sont une généralisation des tableaux si ce n’est que les indices sont n’importe quel type d’expression (chaîne, symbole, etc.). Les tables sont utiles uniquement dans le cadre de la programmation avancée.

Les tables - illustration

Chapitre 4 : Graphiques … suite

Courbes paramétrées La syntaxe pour tracer une courbe définie paramétriquement par le vecteur (f(t), g(t)) avec f et g des fonctions dépendant du paramètre t est : plot([f(t), g(t), t=intervalle]); Les crochets sont autour de toute l’expression

Courbes paramétrées - Illustration

Champs de vecteurs En physique, il peut être utile de tracer un champ de vecteurs (par exemple le champ de vecteurs d’une force magnétique, électrique ou gravitationnelle). Maple permet de tracer les champs de la forme (f(x,y), g(x,y)). La commande pour tracer un tel champ est définie par : fieldplot([f(x,y), g(x,y)], x=a..b, y=c..d, options)

Champs de vecteurs

Fonctions implicites Les fonctions implicites en deux dimensions sont définies par une relation de la forme f(x,y) = a. Elles peuvent être tracées en utilisant la commande implicitplot

Fonctions implicites

Graphes de points La commande peut aussi être utilisée pour relier des points entre eux, avec la syntaxe : plot([[a1,b1], [a2,b2], ... ,[an,bn]]); On peut fermer la courbe en mettant [a1,b1] = [an,bn].

Graphes de points plot([[-12, -1],[20,7], [21,3], [-11, -5], [-12,-1]]); plot([[-12, -1],[20,7], [21,3], [-11, -5], [-12,-1]], style=point);

Autres systèmes de coordonnées Il suffit d’ajouter l’option coords = type bipolar, cartesian, cassinian, elliptic, hyperbolic, invcassinian, invelliptic, logarithmic, parabolic, rose, tangent … Exemple : cartesien (u, v) --> polaire (x, y) x = u*cos(v) y = u*sin(v)

Exemple de système polaire

Inégalités Il est possible de tracer des courbes représentatives d’inégalités en utilisant la commande inequal

Graphique en 3D... La syntaxe est similaire à la syntaxe de la commande plot: plot3d(expression, intervalle, options) On retrouve d’ailleurs les mêmes options : plusieurs courbes sur un même graphique, courbes paramétrées, nombreux systèmes de coordonnées ...

Exemples Une Fonction plot3d(sin(x*y), x=-Pi..Pi, y=-Pi..Pi, style=hidden); Une courbe paramétrée plot3d([ x*sin(y)*cos(y), x*cos(y)*cos(y), x*sin(y) ], x=0..2*Pi, y=0..Pi);

Les animations Une suite de graphes 2D ou 3D peut être animée grâce à la commande animate qui a la syntaxe suivante : animate ([f(x,t), x=a..b, t=c..d) où t représente le temps c’est-à-dire le paramètre à faire varier *