Rapport Projet
Étude de cas : Rapport Projet. Rechercher de 53 000+ Dissertation Gratuites et MémoiresPar Inès Cbi • 8 Décembre 2015 • Étude de cas • 3 226 Mots (13 Pages) • 1 200 Vues
[pic 1] [pic 2]
[pic 3]
[pic 4]
CALCULS SCIENTIFIQUES SUR LES POLYNOMES
[pic 5]
Alina BORDEI: chef de projet
Tanguy GITON: responsable technique
Jérémy BRESSON: responsable du design
Inès CHEBBI: responsable de la communication
[pic 6]
TABLE DES MATIERES
RAPPORT
INTRODUCTION
ANALYSE FONCTIONNELLE GENERALE
TRAVAIL SUR DEUX POLYNOMES
TRAVAIL SUR UN POLYNOME
RAPPELS MATHEMATIQUES
ANALYSE FONCTIONNELLE DETAILLEE
STRUCTURES ET HEADERS
FONCTIONS CONTENUES DANS BASE.C
FONCTIONS CONTENUES DANS AVANCEES.C
INTRODUCTION
Le but de ce projet, réalisé au cours du seconde semestre de notre deuxième année à l’école d’ingénieurs ESIEA, est de créer un programme en langage C++. Celui-ci doit être en mesure d’effectuer des calculs scientifiques sur des polynômes à coefficients complexes.
Le projet est décomposé en deux niveaux :
- Un premier qui se propose de réaliser des fonctions simples et réalisables par tous. Parmi elles la programmation des formes développées et factorisées représentées par une liste simplement chaînées. Les fonctions suivantes définissent des opérations de base telles que l’addition, la soustraction, la multiplication, la comparaison, la conjugaison, le conjugué ainsi que l’extraction des parties réelles et imaginaires. D’autres fonctions plus élaborées comme la dérivation, l’intégration ou la décomposition en éléments simples.
- Un second contenant des fonctions plus élaborées comme l’interpolation et l’approximation polynômiale définies grâce aux méthodes de Lagrange et Newton (cf : Annexes).
Ce programme nous permettra de travailler les polynômes complexes sous toutes leurs formes. Les différentes fonctions seront analysées dans les pages suivantes d’une part généralement puis plus en détails grâce à des schémas explicatifs et des algorithmes. Par la suite nous définirons un polynôme dans ℂ par la formule suivante :[pic 7]
[pic 8]
avec ai ℂ et an . On appelle degré de P l’entier n ℕ tel que an . [pic 9][pic 10][pic 11][pic 12]
On appelle ℂ[X] l’ensemble des polynômes formels sur ℂ.
ANALYSE FONCTIONNELLE GENERALE
Nous nous proposons de représenter un polynôme par deux structures chaînées : une structure Développe et une structure Factorise qui renvoient respectivement à la forme développée et factorisée du polynôme. Ces deux structures sont contenues dans une troisième, la structure Polynomial.
La structure Developpe (respectivement Factorise) est définie par :
- le degré du terme : int deg
- sa partie imaginaire double imaginaire
- sa partie réelle double réel
- son terme suivant, struct Developpe* succ
(respectivement struct Factorise* succ).
La structure Polynomial contient deux listes chaînées appelées LDeveloppe et LFactorise représentants respectivement un polynôme sous sa forme développée et factorisée.
Ces structures vont maintenant nous permettre d’instancier et visualiser un polynôme.
- INITIALISER : LPolynomial init ( ) : qui initialise un polynôme.
- AFFICHER : void affich (LPolynomial polynome) : qui affiche un polynôme avec polynome l’adresse d’un polynôme.
TRAVAIL SUR DEUX POLYNOMES
Les fonctions suivantes, chargées d’effectuer les calculs de bases, prennent en compte deux paramètres, poly1 et poly2 qui sont respectivement les adresses du premier et second polynôme à additionner.
- ADDITION : - LPolynomial addition (LPolynomial poly1, LPolynomial poly2) : qui additionne deux polynômes. Renvoie l’adresse du polynôme résultat.
- int additionTermeDev (Ldeveloppe terme1, Ldeveloppe terme2, Ldeveloppe resultat, Ldeveloppe succ) : qui additionne deux termes de même degré sous la forme développée, et donne le résultat dans l’adresse de structure passée en paramètre. On définit respectivement par :
- terme 1et terme 2 l’adresse de la structure du premier et second terme sous la forme développée à additionner
- resultat l’adresse de la structure qui contiendra le résultat
- succ l’adresse du successeur de a structure qui contiendra le résultat.
Cette fonction retourne 1 si l’addition s’est bien déroulée et que le terme résultat n’est pas nul sinon elle retourne 0.
- Soient P et Q deux polynômes de ℂ[X]. On définit respectivement Re et Im les parties réelles et imaginaires des polynômes.
[pic 13]
[pic 14]
- SOUSTRACTION : LPolynomial soustraction (LPolynomial poly1, LPolynomial poly2) : qui soustrait deux polynômes.
- De même que pour l’addition, soient P et Q deux polynômes de ℂ[X]. On définit respectivement Re et Im les parties réelles et imaginaires des polynômes.
[pic 15]
[pic 16]
- MULTIPLICATION : - LPolynomial multiplication (LPolynomial poly1, LPolynomial poly2) : qui multiplie deux polynômes.
- LDeveloppe multiplicationTermeDev (LDeveloppe terme1, LDeveloppe terme 2) : qui multiplie deux termes d’un polynôme sous leur forme développée. On définit respectivement par terme 1et terme 2 l’adresse de la structure du premier et second terme sous la forme développée à multiplier.
...