Introduction aux outils de visualisation...

Post on 15-Jul-2020

3 views 0 download

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