Introduction aux outils de visualisation...

31
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 calcul Formations transverses des Écoles Doctorales LyonCalcul, le jeudi 2 mai 2019 1 / 29

Transcript of Introduction aux outils de visualisation...

Page 1: Introduction aux outils de visualisation scientifiquelyoncalcul.univ-lyon1.fr/ed/DOCS_2019/intro_visu.pdf · • Appliquer les opérateurs des outils de visualisations s’ils préservent

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

Page 2: Introduction aux outils de visualisation scientifiquelyoncalcul.univ-lyon1.fr/ed/DOCS_2019/intro_visu.pdf · • Appliquer les opérateurs des outils de visualisations s’ils préservent

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

Page 3: Introduction aux outils de visualisation scientifiquelyoncalcul.univ-lyon1.fr/ed/DOCS_2019/intro_visu.pdf · • Appliquer les opérateurs des outils de visualisations s’ils préservent

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

Page 4: Introduction aux outils de visualisation scientifiquelyoncalcul.univ-lyon1.fr/ed/DOCS_2019/intro_visu.pdf · • Appliquer les opérateurs des outils de visualisations s’ils préservent

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

Page 5: Introduction aux outils de visualisation scientifiquelyoncalcul.univ-lyon1.fr/ed/DOCS_2019/intro_visu.pdf · • Appliquer les opérateurs des outils de visualisations s’ils préservent

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

Page 6: Introduction aux outils de visualisation scientifiquelyoncalcul.univ-lyon1.fr/ed/DOCS_2019/intro_visu.pdf · • Appliquer les opérateurs des outils de visualisations s’ils préservent

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

Page 7: Introduction aux outils de visualisation scientifiquelyoncalcul.univ-lyon1.fr/ed/DOCS_2019/intro_visu.pdf · • Appliquer les opérateurs des outils de visualisations s’ils préservent

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

Page 8: Introduction aux outils de visualisation scientifiquelyoncalcul.univ-lyon1.fr/ed/DOCS_2019/intro_visu.pdf · • Appliquer les opérateurs des outils de visualisations s’ils préservent

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

Page 9: Introduction aux outils de visualisation scientifiquelyoncalcul.univ-lyon1.fr/ed/DOCS_2019/intro_visu.pdf · • Appliquer les opérateurs des outils de visualisations s’ils préservent

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

Page 10: Introduction aux outils de visualisation scientifiquelyoncalcul.univ-lyon1.fr/ed/DOCS_2019/intro_visu.pdf · • Appliquer les opérateurs des outils de visualisations s’ils préservent

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

Page 11: Introduction aux outils de visualisation scientifiquelyoncalcul.univ-lyon1.fr/ed/DOCS_2019/intro_visu.pdf · • Appliquer les opérateurs des outils de visualisations s’ils préservent

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

Page 12: Introduction aux outils de visualisation scientifiquelyoncalcul.univ-lyon1.fr/ed/DOCS_2019/intro_visu.pdf · • Appliquer les opérateurs des outils de visualisations s’ils préservent

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

Page 13: Introduction aux outils de visualisation scientifiquelyoncalcul.univ-lyon1.fr/ed/DOCS_2019/intro_visu.pdf · • Appliquer les opérateurs des outils de visualisations s’ils préservent

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

Page 14: Introduction aux outils de visualisation scientifiquelyoncalcul.univ-lyon1.fr/ed/DOCS_2019/intro_visu.pdf · • Appliquer les opérateurs des outils de visualisations s’ils préservent

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

Page 15: Introduction aux outils de visualisation scientifiquelyoncalcul.univ-lyon1.fr/ed/DOCS_2019/intro_visu.pdf · • Appliquer les opérateurs des outils de visualisations s’ils préservent

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

Page 16: Introduction aux outils de visualisation scientifiquelyoncalcul.univ-lyon1.fr/ed/DOCS_2019/intro_visu.pdf · • Appliquer les opérateurs des outils de visualisations s’ils préservent

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

Page 17: Introduction aux outils de visualisation scientifiquelyoncalcul.univ-lyon1.fr/ed/DOCS_2019/intro_visu.pdf · • Appliquer les opérateurs des outils de visualisations s’ils préservent

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

Page 18: Introduction aux outils de visualisation scientifiquelyoncalcul.univ-lyon1.fr/ed/DOCS_2019/intro_visu.pdf · • Appliquer les opérateurs des outils de visualisations s’ils préservent

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

Page 19: Introduction aux outils de visualisation scientifiquelyoncalcul.univ-lyon1.fr/ed/DOCS_2019/intro_visu.pdf · • Appliquer les opérateurs des outils de visualisations s’ils préservent

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

Page 20: Introduction aux outils de visualisation scientifiquelyoncalcul.univ-lyon1.fr/ed/DOCS_2019/intro_visu.pdf · • Appliquer les opérateurs des outils de visualisations s’ils préservent

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

Page 21: Introduction aux outils de visualisation scientifiquelyoncalcul.univ-lyon1.fr/ed/DOCS_2019/intro_visu.pdf · • Appliquer les opérateurs des outils de visualisations s’ils préservent

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

Page 22: Introduction aux outils de visualisation scientifiquelyoncalcul.univ-lyon1.fr/ed/DOCS_2019/intro_visu.pdf · • Appliquer les opérateurs des outils de visualisations s’ils préservent

Définition Histoire Besoins Pipeline Outils Bonnes pratiques

1D/2D

Gratuits

• gnuplot

• xmgrace

• ...

• matplotlib (python)

• langage R

• scilab

• ...

Payants

• excel

• kaleidagraph

• matlab

• ...

20 / 29

Page 23: Introduction aux outils de visualisation scientifiquelyoncalcul.univ-lyon1.fr/ed/DOCS_2019/intro_visu.pdf · • Appliquer les opérateurs des outils de visualisations s’ils préservent

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

Page 24: Introduction aux outils de visualisation scientifiquelyoncalcul.univ-lyon1.fr/ed/DOCS_2019/intro_visu.pdf · • Appliquer les opérateurs des outils de visualisations s’ils préservent

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

Page 25: Introduction aux outils de visualisation scientifiquelyoncalcul.univ-lyon1.fr/ed/DOCS_2019/intro_visu.pdf · • Appliquer les opérateurs des outils de visualisations s’ils préservent

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

Page 26: Introduction aux outils de visualisation scientifiquelyoncalcul.univ-lyon1.fr/ed/DOCS_2019/intro_visu.pdf · • Appliquer les opérateurs des outils de visualisations s’ils préservent

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

Page 27: Introduction aux outils de visualisation scientifiquelyoncalcul.univ-lyon1.fr/ed/DOCS_2019/intro_visu.pdf · • Appliquer les opérateurs des outils de visualisations s’ils préservent

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

Page 28: Introduction aux outils de visualisation scientifiquelyoncalcul.univ-lyon1.fr/ed/DOCS_2019/intro_visu.pdf · • Appliquer les opérateurs des outils de visualisations s’ils préservent

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

Page 29: Introduction aux outils de visualisation scientifiquelyoncalcul.univ-lyon1.fr/ed/DOCS_2019/intro_visu.pdf · • Appliquer les opérateurs des outils de visualisations s’ils préservent

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

Page 30: Introduction aux outils de visualisation scientifiquelyoncalcul.univ-lyon1.fr/ed/DOCS_2019/intro_visu.pdf · • Appliquer les opérateurs des outils de visualisations s’ils préservent

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

Page 31: Introduction aux outils de visualisation scientifiquelyoncalcul.univ-lyon1.fr/ed/DOCS_2019/intro_visu.pdf · • Appliquer les opérateurs des outils de visualisations s’ils préservent

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