[PDF] [PDF] Sujets des projets —– projet C++ Université Pierre et Marie Curie

Les arêtes du graphe sont définies par les segments σXnXm = (Xn,Xm)1≤n,m≤ NxNy vérifiant 0 < Xn −Xm ≤ δ Voici deux exemples de graphes obtenus 



Previous PDF Next PDF





[PDF] Rapport de Mini-Projet c++ - cloudfrontnet

Rapport de Mini-Projet c++ Gestion de Réservation Les figures suivantes représentent le modèle physique de notre base de données : ID_SAISON = 



[PDF] Rapport de projet

confiance nécessaire pour élaborer ce projet librement, et avoir mis à notre disposition tous les moyens Figure 16 - Exemple de panneau C'est avec ces objectifs en tête, que nous avons créé « DAIO », la « Domotique All-In-One » 3



[PDF] Rapport du projet C#

nous avons eu pour tâche la réalisation d'un projet informatique Notre objectif Page 9 Déplacer le serpent Cas où la partie reste en cours Form1 Serpent



[PDF] Projet de programmation C : Shoot em up - IGM

(grand enfant) Implémenter des ennemis qui enchaıne une séquence de déplacement (par exemple, les ennemis suivent une courbe sinusoıdale, ) • ( adulte 



[PDF] Mini-projet jeu: Oust

8 mar 2010 · 1 But du mini-projet Le mini-projet consiste en la mise en œuvre en C++ d'un jeu `a deux joueurs (il s'agit de Par exemple l'entrée suivante :



[PDF] Sujets des projets —– projet C++ Université Pierre et Marie Curie

Les arêtes du graphe sont définies par les segments σXnXm = (Xn,Xm)1≤n,m≤ NxNy vérifiant 0 < Xn −Xm ≤ δ Voici deux exemples de graphes obtenus 



[PDF] Mini projet en C++ - Groupe MIAGE

16 mai 2018 · Mini projet Finance-comptabilité -Excel 1/2 CEDRIX Mini projet en MS Excel l' exemple de la feuille « stocks » est donné ci-dessous :



[PDF] NSR18 : rapport de mini-projet

Le but du projet est de réaliser une application de vision par ordinateur (9) où h est un vecteur colonne regroupant les hij et où les lignes de A sont de la 

[PDF] exemple de mini projet mecanique

[PDF] exemple de mise en situation drole

[PDF] exemple de mise en situation professionnelle aide soignante

[PDF] exemple de mise en situation professionnelle cpe

[PDF] exemple de mission de stage

[PDF] exemple de modalités pédagogiques

[PDF] exemple de modèle d'analyse en sociologie

[PDF] exemple de modele de projet en pisciculture

[PDF] exemple de modélisation de processus

[PDF] exemple de monopole naturel

[PDF] exemple de mot

[PDF] exemple de motivation intrinsèque et extrinsèque

[PDF] exemple de mouture journalistique

[PDF] exemple de narration de recherche 6ème

[PDF] exemple de non conformité

Sujets des projets

projet C++

Université Pierre et Marie Curie

F. Hecht, R. Chakir

Master II / session 2007/2008

Introduction

Pour tous les projets , il faudra faire un rapport d"une dizaine de pages enLatex.

Ces projets sont à réaliser par binôme, les choix des projets sont faits par les enseignants, une fois le

binôme déclaré.

1 Projets 1,2 & 3 : Elements finis

Vous disposez d"un programme, EF23" (voirhttp://www.ann.jussieu.fr/~hecht/ftp/

MPE/EF.tar.gz), résolvant les équations de Poisson par éléments finisP1Lagrange 2d ou 3d avec

comme solveur un gradient conjugué ou UMFPACK (voirhttp://www.ann.jussieu.fr/~hecht/ ftp/MPE/EF2DUMFPACK.tar.gz). Pour télécharger et installer les sources 265Ko et grosmaillage 6Mo curl -O http://www.ann.jussieu.fr/~hecht/ftp/MPE/EF.tar.gz curl -O http://www.ann.jussieu.fr/~hecht/ftp/MPE/EF-grosmaillage.tar.gz tar zxvf EF.tar.gz tar zxvf EF-grosmaillage.tar.gz cd EF/libMesh make install clean cd ../EF23 make EF2d EF2dMat EF3d Pour la partieUMFPACKinstaller UMFPACK (voir le cours dernier cours) curl -O http://www.ann.jussieu.fr/~hecht/ftp/MPE/EF2DUMFPACK.tar.gz Les 2 premiers projets sont basés sur la modification du le petit programmeEF2d.cpp(4 pages)

Projet 1: Calculer des valeurs propres du problème de Poisson en utilisant la bibliothèqueARPACK++

blèmes de compilations.

Remarque : les valeurs propres du problème de Poisson avec conditions de Dirichlet sur le carré]0;p[2

sontn2+m2et les fonctions propres associés sontsin(nx)sin(my). 1

Mastere II / MPE2

Projet 2: Changer le solveur deEF2DUMFPACKpar les solveurs deSuperLU,PETSc, et d"autre sol- veur d"Internet : voir la pagehttp://www.netlib.org/utk/people/JackDongarra/ la-sw.htmlafin de comparer les vitesses de résolution.

Projet 3:Ecrire un outil de visualisation des isosurfaces de la solution avecOpenGL, GLUT, ombrage, trans-

parence et stéréo,

Il faut partir deglplotisodans

# OpenGL: representation 3D et couleurs curl -O http://www.ann.jussieu.fr/~hecht/ftp/MPE/glplot.tar.gz tar zxvf glplot.tar.gz cd glplot # Editer le Makefile pour choisir ou son vos OpenGL/ GLUT make all remarque : il faut ajouter-lXi -lXmua la fin de la variableGLLIBSdans le Makefile pour l"édition de liens de avecGLUT

2 Projet 4 :Visualisation et optimisation de maillage

Le but de ce projet de visualiser une fonctionfdu carré]1;1[2à valeur dans IR avec une précision de

edonnée.

Il faut donc construire un maillage telle que l"erreur sur chaque triangle du maillage soit inférieure àe.

L"algorithme de raffinement de maillage est très simple : il consiste à couper les triangles d"erreur trop

grand en deux parties égales par rapport à une des 3 arêtes en choisissant l"arête qui générera l"erreur

minimal.

Donc l"algorithme est :

1. insérer les triangle a vecune erreur trop grande dans la queue 2. tant que la queue n"est pas vide f aire: (a)

Prendre le triangle de la queue et découper le triangle en deux en choissisant la bonne arête, et

ajouter les nouveaux triangles dans la queue si nécessaire.

L"erreur sur un triangleKsera définie par :

E K=Z K jfPK(f)j2 OùPK(f)est la projectionL2(K)defsur l"espacesP1(K)des fonctions polynomes de degre 1 deKà valeur dansR, c"est-à-dire : Z K

PK(f)f=0;Z

K (PK(f)f)x=0Z K (PK(f)f)y=0

Et vous utiliserez des formules d"integration pour évaluer les intégrales qui sont définies danshttp://

xyz.lanl.gov/format/math.NA/0501496 Programmer l"algorithme precédent pour visualiser les fonctions f

1(x;y) =x2+y2

f

2(x;y) =x2+y3+tanh(5sin(2(y+x))

avec la bibliothèqueGLUToù le paramètreepeut être changé interactivement, et bien sur il doit être

possible d"afficher ou non le maillage.

Mastere II / MPE3

3 Projets 5 : Optimisation d"un trajet sur une topographie quelconque

Le principe est d"optimiser le trajet d"un véhicule se déplaçant d"un point à un autre sur un terrain

ayant une topographie quelconque. Cette optimisation devra être réalisée en minimisant deux quantités : la

distance entre le point de départ et le point d"arrivée et la pente (positive et négative) du trajet. Il faudra donc

trouver le chemin optimal pour que le véhicule ait le moins de distance à parcourir et qu"il ait le moins à

monter et descendre possible.

3.1 Discrétisation et graphe

SoitW=[a;b][c;d]R2le domaine dans lequel le véhicule pourra évoluer. Soit la fonctionf:W7!R associant à un pointX= (x;y)son altitudef(X).

La première étape est la discrétisation deW. On se donne deux entiersNxetNyet on définit les points

X ij= (xi;yj)aveci=1;:::;Nxetj=1;:::;Ny. Si on noteDx= (ba)=(Nx1)etDy= (dc)=(Ny1),

on choisiraNxetNytels queDx'Dy. Les points(Xij)i;jsont les sommets du graphe associé àW(on notera

Xl"ensemble des sommets(Xij)i;jdu graphe).

On définit ensuite l"ensembleAdes arêtes du graphe. Pour cela, on se donne un réeld>max(Dx;Dy).

Les arêtes du graphe sont définies par les segmentssXnXm= (Xn;Xm)1n;mNxNyvérifiant 0 Voici deux exemples de graphes obtenus suivant différentes valeurs ded.δ Δx

ΔxyΔy

La dernière étape pour la construction du graphe est d"affecter une valeur à chacune des arêtes. Soit

l"arêtesXnXmreliant les pointsXnetXm. La valeurcXnXm(ou lecoût) associée à cette arête sera une fonction

qui dépendra à la fois de la distancejXnXmjainsi que la valeur absolue de la pentejf(Xm)f(Xn)j=jXn

X

mj. Le coûtcXnXmpour aller deXmàXn(ou bien de manière équivalente deXnàXm) par l"arêtesXnXmsera

d"autant plus grand que la distance entreXmetXnsera importante et que la valeur absolue de la pente sera

grande. Par exemple, on pourrait définir le coût ainsi : c

3.2 Détermination du plus court chemin

SoitA2Xle point de départ du véhicule etB2Xson point d"arrivée. On définit uncheminCallant

deAàBcomme une suite de sommets deX C=fA=X0;X1;X2;:::;Xp1;Xp=Bgtels que pour tout

n=0;:::;p1 on aitsXnXn+12A, c"est-à-dire que tout segment(Xn;Xn+1)corresponde à une arête du

graphe. On associe au cheminCson coût :cC=åp n=0cXnXn+1. Le problème d"optimisation du trajet du

véhicule revient donc à trouver le chemin allant deAàBdont le coût est le plus faible. Ce chemin est appelé

le plus court chemin. Pour le déterminer, on utilisera l"algorithme de Dijkstra.

aussid(X)comme le coût du plus court chemin reliantXàAetp(X)le prédécesseur deXdans le plus court

chemin le reliant àA. L"algorithme de Dijkstra :

Mastere II / MPE4

Initialisation :

R=XnfAg,

P=fAg,

d(A) =0,d(X) =cAXsisAX2Aetd(X) = +¥sinon.

T antque B=2P, Faire :

T rouverXle sommet réalisant le minimum ded(:)surR.

Ajouter Xà l"ensembleP.

Enle verXà l"ensembleR.

Pour tout Y2Rtel quesXY2A, Faire :

Si d(X)+cXYPour obtenir le plus court chemin reliant AetB, il suffit alors de cheminer à l"envers : on regarde

B, puis on sauvegarde son prédécesseurp(B), puis le prédécesseur de son prédécesseurp(p(B)), ...

jusqu"à arriver àA.

3.3 But du projet

Le but de ce projet est donc de réaliser un programme utilisantGLUT(voir le TP 3) permettant d"afficher

sera donnée par la valeur de la topographie en chacuns de ces points. On devra pouvoir visualiser en outre

le plus court chemin entre deux points de la fenêtre obtenu par l"algorithme de Dijkstra. Enfin, les points de

départ et d"arrivée et différents paramètres de la construction du graphe devront pouvoir être modifiés. Par

exemple, différentes topographies pourront être utilisées (collines, vallées, labyrinthes, ...), la valeur ded

pourra changer et le calcul du coût par arête pourra être choisi de manière à privilégier la distance, la pente,

ou les deux, en prenant par exemple une combinaison convexe de ces quantités dont la pondération pourra

être modifiée par l"utilisateur. Attention, la gestion de la mémoire devra être particulèrement soignée, pour

ne pas avoir à stocker des informations inutiles (matrices creuses ...).

4 Liens

un support de cours OpenGL (E. Bo yer)http://www.ann.jussieu.fr/~frey/cours/

OpenGL.pdf

un supportdecoursRobinVivianFormatPDFhttp://www.mim.univ-metz.fr/2/~vivian/ Cours OpenGLdel"ESSIparMichelBuffahttp://www.essi.fr/~buffa/cours/synthese_ image/ Adv ancedGraphicsProgrammingTechniquesUsingOpenGLhttp://www.opengl.org/developers/ code/sig99/ uquotesdbs_dbs20.pdfusesText_26