Introduction aux outils de visualisation...
Transcript of Introduction aux outils de visualisation...
Définition Histoire Besoins Pipeline Outils Bonnes pratiques
Introduction aux outils de visualisation
scientifique
Anne Cadiou
Laboratoire de Mécanique des Fluides et d’Acoustique
Informatique scientifique pour le calculFormations transverses des Écoles Doctorales
LyonCalcul, le jeudi 2 mai 2019
1 / 29
Définition Histoire Besoins Pipeline Outils Bonnes pratiques
Table des matières
1 Visualisation scientifique ?
2 Histoire
3 Besoins
4 Pipeline de visualisation
5 Outils existants
6 Bonnes pratiques
2 / 29
Définition Histoire Besoins Pipeline Outils Bonnes pratiques
Table des matières
1 Visualisation scientifique ?
2 Histoire
3 Besoins
4 Pipeline de visualisation
5 Outils existants
6 Bonnes pratiques
3 / 29
Définition Histoire Besoins Pipeline Outils Bonnes pratiques
Visualisation scientifique ?
Branche interdisciplinaire de la science, portant sur
• l’instrumentation (acquisition de données)
• le développement de modes de représentationd’un problème physique donné
• l’analyse de phénomènes physiques
• la communication scientifique (mise en forme graphique)
• le traitement d’images (manipulation)
nécessite généralement :
- le développement de méthodes d’analyse adaptées
- l’utilisation d’outils permettant le rendu graphique
4 / 29
Définition Histoire Besoins Pipeline Outils Bonnes pratiques
Visualisation scientifique ?
Branche interdisciplinaire de la science, portant sur
• l’instrumentation (acquisition de données)
• le développement de modes de représentationd’un problème physique donné
3 l’analyse de phénomènes physiques
• la communication scientifique (mise en forme graphique)
• le traitement d’images (manipulation)
nécessite généralement :
- le développement de méthodes d’analyse adaptées
- l’utilisation d’outils permettant le rendu graphique
4 / 29
Définition Histoire Besoins Pipeline Outils Bonnes pratiques
Table des matières
1 Visualisation scientifique ?
2 Histoire
3 Besoins
4 Pipeline de visualisation
5 Outils existants
6 Bonnes pratiques
5 / 29
Définition Histoire Besoins Pipeline Outils Bonnes pratiques
Représentations scientifiques
(a) Carte du babyloniennedu monde (IVe siècle B.C.)
(b) Carte d’E. Halley (1701). Iso-contours des vents dominants surl’océan.
Cartographies
6 / 29
Définition Histoire Besoins Pipeline Outils Bonnes pratiques
Surfaces tri-dimensionnelles
(a) Sculpture (b) Projection graphique
Représentation 3D des différents états thermodynamiques de l’eau, d’aprèsles travaux de J.W. Gibbs. Modèle réalisé par J.C. Maxwell en 1874.
7 / 29
Définition Histoire Besoins Pipeline Outils Bonnes pratiques
Dessin et mouvement
(a) L. de Vinci, croquis XVe siècle
(b) E.-J. Marey, chronophotographie vers 1888
Dessins et photographie pour représenter un mouvement8 / 29
Définition Histoire Besoins Pipeline Outils Bonnes pratiques
Ressources informatiques et graphiques
Actuellement, la visualisationscientifique exploite largement lesressources informatiques, dans toutses aspects,
• calcul,
• carte graphique,
• réseau,
• stockage
et se développe pour
• l’analyse des résultats,
• le contrôle,
• l’interaction avec les simulations,
• l’expérimentation numérique
Visualisation del’écoulement lors del’impact d’un jet rondsupersonique sur une paroiperpendiculaire et desondes acoustiquesassociées. C. Bogey (LMFA)
9 / 29
Définition Histoire Besoins Pipeline Outils Bonnes pratiques
Table des matières
1 Visualisation scientifique ?
2 Histoire
3 Besoins
4 Pipeline de visualisation
5 Outils existants
6 Bonnes pratiques
10 / 29
Définition Histoire Besoins Pipeline Outils Bonnes pratiques
Réalisation d’une simulation numérique
HPC platform (Tier-0, Tier-1)
parallel transfer (GridFTP, ...)
data server
Ressources EQUIP@MESO2 clusters HPC 2*56 TFlops 2*340 CPU Intel SB 2.6 Ghz
2*2720 coeurs - 2*11 To RAMRéseau InfiniBand FDR
La FLMSN a pour vocation de fédérer et soutenir les activités de calcul HPC et de modélisation dans la région lyonnaise. Elle regroupe 3 centres de calcul : ● le P2CHPD à la Doua, ● le PSMN à Gerland● le PMCS2I à Ecully.Elle intègre aussi 2 structures autour de la modélisation et la simulation● IXXI institut Rhône-Alpin des systèmes
complexes● CBP Centre Blaise Pascal et soutien le réseau Lyon-Calcul
FLMSN.univ-lyon1.fr
Fédération Lyonnaise de Modélisation et Sciences Numériques
FLMSN
HPC cluster (Tier-2)
NFSgraphic sta-tions (Tier-2)
user
NFS
or
sshtunneling
NX (x2go)/vnc
11 / 29
Définition Histoire Besoins Pipeline Outils Bonnes pratiques
Critères requis
On souhaite (autant que possible)
• ne pas dégrader la précision de la simulation lors de l’analyseet de la visualisation
• pouvoir travailler en interactif pour des aspectsexploratoires et en batch pour des traitements systématiques
• avoir une chaîne d’analyse reproductible (comme lasimulation)
• avoir des temps de restitution rapides
• minimiser le temps de développement nécessaire pourréaliser une visualisation
12 / 29
Définition Histoire Besoins Pipeline Outils Bonnes pratiques
Critères de choix
Le choix de la méthode et des outils dépendra donc de ces critères,mais aussi de la méthode numérique utilisée, de la nature desdonnées traitées
• 1D, 2D, 3D, ...
• à suivre au cours du temps ?
• lagrangiennes, eulériennes, discrètes, continues,
• numériques, symboliques, ...
• partitionnées, non-structurées, inhomogènes,
• volumineuses ?
13 / 29
Définition Histoire Besoins Pipeline Outils Bonnes pratiques
Table des matières
1 Visualisation scientifique ?
2 Histoire
3 Besoins
4 Pipeline de visualisation
5 Outils existants
6 Bonnes pratiques
14 / 29
Définition Histoire Besoins Pipeline Outils Bonnes pratiques
Pipeline
Donnéesbrutes
Donnéesimportées
Donnéesenrichies
Donnéesgéo-
métriques
Image
Acquérir Traiter
Carto-gra-phier
Afficher
Sourcing Filtering Mapping Rendering
15 / 29
Définition Histoire Besoins Pipeline Outils Bonnes pratiques
Pipeline
Donnéesbrutes
Donnéesimportées
Donnéesenrichies
Donnéesgéo-
métriques
Image
Acquérir Traiter
Carto-gra-phier
Afficher
Sourcing Filtering Mapping Rendering
15 / 29
Définition Histoire Besoins Pipeline Outils Bonnes pratiques
Étapes réalisées par les outils de visualisation
Sources lecture des données dans un fichier ou en mémoire
Filters construction des objets d’interprétation des données(contours, vecteurs, ...)
Mappers conversion des sorties des filtres en primitivesgéométriques (polygônes, ...)
Rendering sortie OpenGL
Dans l’usage visé, ces étapes sont entièrement confiées auxlogiciels de visualisation et bibliothèques graphiques.
16 / 29
Définition Histoire Besoins Pipeline Outils Bonnes pratiques
Modalités d’utilisation
Accès aux données
• On-demand (only readwhen accessed)
• Client-Server (network)
• Streaming (piece-wise data)
• Parallel (processing)
Modalités d’interaction
• Progressive
• Interruptible
Rendu
• Hardware/Software
• OpenGL
• Resolution (levels of details)
17 / 29
Définition Histoire Besoins Pipeline Outils Bonnes pratiques
Table des matières
1 Visualisation scientifique ?
2 Histoire
3 Besoins
4 Pipeline de visualisation
5 Outils existants
6 Bonnes pratiques
18 / 29
Définition Histoire Besoins Pipeline Outils Bonnes pratiques
Catégories d’outils• Distinguer les outils gratuits des outils commerciaux :
conditions de disponibilité, d’accessibilité
• Opensource ?étendue et réactivité de la communauté des développeurset des utilisateurs
• Distinguer les outils nécessitant des développements deceux tout intégrés
mise en oeuvre du pipeline, assemblage des filtres ...langage spécifique utilisé ?
• Interface avec les standards des formats de données
• Capacité à intégrer des scripts, à travailler en batch, àfonctionner en mode client-serveur, en parallèle, 2D/3D ...
La réponse peut être un assemblage d’outils, de scripts et de codes
19 / 29
Définition Histoire Besoins Pipeline Outils Bonnes pratiques
1D/2D
Gratuits
• gnuplot
• xmgrace
• ...
• matplotlib (python)
• langage R
• scilab
• ...
Payants
• excel
• kaleidagraph
• matlab
• ...
20 / 29
Définition Histoire Besoins Pipeline Outils Bonnes pratiques
2D/3D (de type mécanique des fluides)
Gratuits
• VisIt
• ParaView
• MayaVi
• Vapor, Medit, xd3d,
• geomview, gmv, plotMTV, ...
• d3, nodejs,
• OpenDX, Amira, AVS, Plot3D,
• Scilab, Octave, Yorick,
• ncview (HDF5), VTK,OpenGL, ...
Payants
• Matlab
• Tecplot
• Ensight
• Fieldview
• Grapher
• ...
• IDL
• ...
21 / 29
Définition Histoire Besoins Pipeline Outils Bonnes pratiques
gnuplot
set style line 100 lt -1 lw 0.1set palette defined ( 0 ’#000090’,\
1 ’#000fff’,\2 ’#0090ff’,\3 ’#0fffee’,\4 ’#90ff70’,\5 ’#ffee00’,\6 ’#ff7000’,\7 ’#ee0000’,\8 ’#7f0000’)
unset colorboxset view 65,35set nokeyset hidden3dset isosamples 32set term pdf size 3in,3inset output ’gnuplot.pdf’set xrange [-4:+4]set yrange [-4:+4]set zrange [-1:+1]set ticslevel 0set pm3dset pm3d solid hidden3d 100x=0.0set linetype 1 lc rgb "black"splot sin(sqrt(x*x+y*y)) w l
-4 -3 -2 -1 0 1 2 3 4-4-3-2-1 0 1 2 3 4-1
-0.5
0
0.5
1
22 / 29
Définition Histoire Besoins Pipeline Outils Bonnes pratiques
matplotlib
import numpy as npimport matplotlib.pyplot as pltfrom mpl_toolkits.mplot3d import Axes3D
fig = plt.figure()ax = Axes3D(fig)X = np.arange(-4, 4, 0.25)Y = np.arange(-4, 4, 0.25)X, Y = np.meshgrid(X, Y)R = np.sqrt(X**2 + Y**2)Z = np.sin(R)
ax.plot_surface(X, Y, Z, rstride=1, cstride=1, cmap=’jet’)plt.savefig(’matplotlib.pdf’)
plt.show()
43
21
01
23
4 43
21
01
23
4
1.0
0.5
0.0
0.5
1.0
23 / 29
Définition Histoire Besoins Pipeline Outils Bonnes pratiques
Table des matières
1 Visualisation scientifique ?
2 Histoire
3 Besoins
4 Pipeline de visualisation
5 Outils existants
6 Bonnes pratiques
24 / 29
Définition Histoire Besoins Pipeline Outils Bonnes pratiques
Interpolation entre les points
1.0 0.5 0.0 0.5 1.0y/h
0.4
0.2
0.0
0.2
0.4U
simulationlin. interp. Cheb. pts Ny =16
Cheb. interp. lin. pts Ny =32
Peu adapté aux données spectrales :
• perte d’information possible
• perte d’efficacité sur des données non-structurées25 / 29
Définition Histoire Besoins Pipeline Outils Bonnes pratiques
Partitionnement et recouvrementEspaces entre les partitions ignoréspar l’outil de visualisation
Cas particulier :
• Simulation : décomposition de domaine sans recouvrement entre lesblocks
• Visualisation : requiert des zones de recouvremententre les partitions
26 / 29
Définition Histoire Besoins Pipeline Outils Bonnes pratiques
Précision et efficacité
Utiliser des scripts (ou codes) d’analyse
• Travailler avec des formats de données ouverts et standardisés.
• Appliquer les opérateurs des outils de visualisations s’ilspréservent la précision des schémas numériques utilisés pourobtenir les données,
• sinon, ne confier que l’affichage aux outils de visualisation.
• Coupler éventuellement à d’autres outils pour faire la relecturedes données brutes, les interpolations, calculs d’opérateursspatiaux, le repartitionnement, ...
27 / 29
Définition Histoire Besoins Pipeline Outils Bonnes pratiques
De l’usage de la palette de couleurs
d’après Kenneth Moreland, Sandia Nat. Lab.
28 / 29
Définition Histoire Besoins Pipeline Outils Bonnes pratiques
In-situ et calcul
Analyse déportéeou en batch
• Simple (client)
• Ressources importantes(serveur)rendu réalisé avec
- lib X11- lib Mesa
(noeuds de calcul)sans carte graphique
Bibliothèques de couplage in-situ
pas de sortie dans des fichiers
• Catalyst (ParaView)
• Libsim (VisIt)
29 / 29