Visualisation pour GEANT4 http://geant4.slac.stanford.edu/SLACTutorial09/Agenda.html Vizualisation I, II, III Pourquoi? - parce que c'est beau à regarder ... - vérifier la justesse de la géométrie: conception, composition, erreurs de positionnement - vérifier les trajectoires des particules dans l'ensemble de la géométrie (track, hits, etc.) - obtenir une reproduction de qualité à la hauteur d'une publication scientifique - animations, anaglyphes(?) Comment? GEANT4 = boîte à outils = très flexible en termes d'interfaces utilisateur mises à disposition (C++, interfaces abstraites) 1 Pilotes (drivers) de visualisation dans GEANT4 - inclus dans GEANT4 (pas besoin de bibliothèques externes You have successfully registered the following graphics systems. Current available graphics systems are: ASCIITree (ATree) DAWNFILE (DAWNFILE) G4HepRep (HepRepXML) G4HepRepFile (HepRepFile) RayTracer (RayTracer) VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) - basé sur une bibliothèque externe ... OpenGLStoredX (OGL) OpenGLImmediateX (OGLI) OpenGLStoredX (OGLS) OpenGLImmediateX (OGLIX) OpenGLStoredX (OGLSX) OpenGL = Open Graphics Library - représentations: géométrie projective - multi-plateforme - sans système de fenêtrage (Qt) 2 ASCIITree - non graphique - avec le niveau de verbosité on peut détailler plus ou moins la géométrie B4a HepRep /vis/open ATree /vis/ASCIITree/verbose 4 /vis/drawVolume /vis/viewer/flush # # # Format is: PV:n / LV (SD,RO) / Solid(type), volume, density Abbreviations: PV = Physical Volume, LV = Logical Volume, SD = Sensitive Detector, RO = Read Out Geometry. "World":0 / "World" / "World"(G4Box), 2592 cm3, 1e-22 kg/m3 (Galactic) "Calorimeter":0 / "Calorimeter" / "Calorimeter"(G4Box), 1500 cm3, 1e-22 kg/m3 (Galactic) "Layer":0-9 (10 replicas) / "Layer" / "Layer"(G4Box), 150 cm3, 1e-22 kg/m3 (Galactic) "Abso":0 / "Abso" / "Abso"(G4Box), 100 cm3, 11.35 g/cm3 (G4_Pb) "Gap":0 / "Gap" / "Gap"(G4Box), 50 cm3, 1.39 g/cm3 (liquidArgon) Calculating mass(es)... Overall volume of "World":0, is 2592 cm3 and the daughter-included mass to unlimited depth is 12.045 kg 3 DAWN Fukui Renderer (Drawing for Academic WritiNgs) /vis/open DAWNFILE /vis/drawVolume /vis/flush - graphique vectorielle - primitives géométriques, attributs - re-dimensionner l'image sans “effet d'escalier” - article - plaquette - poster - exemple de langage vectoriel: PostScript de Adobe - PS = format traité directement par la plupart des imprimantes laser - propre langage, fichier .prim (texte) - spécifique GEANT4 image vectorielle image matricielle 4 HepRep (SLAC) HepRApp (HepRep Data Browsing Application) /vis/open HepRepFile /vis/drawVolume /vis/flush java -jar HepRApp.jar - archive Java: HepRApp.jar (ensemble de classes Java) - format XML (texte) - fichier .heprep - d'intérêt général - hiérarchique - interactive: loupe, rotations, translations - sensisivité de contexte 5 RayTracer /vis/open RawTracer /vis/drawVolume ou /vis/rayTracer/trace /vis/flush - utilise le “tracking” des photons GEANT4 - crée directement un fichier jpeg - ne montre pas les trajectoires - effets: ombres, transparence, miroitement 6 VRML = Virtual Reality Markup Language http://openvrml.org (?) /vis/open VRML1FILE ou VRML2FILE /vis/drawVolume /vis/flush - graphique matricielle - visualisation interactive: loupe, rotations, translations 7 OpenGL /vis/open OGL 600x600-0+0 /vis/drawVolume /vis/flush paramètres d'affichage (dimensions, position) OpenGL = Open Graphics Library - représentations: géométrie projective - multi-plateforme - sans système de fenêtrage (Qt) 8 Utiliser les commandes /vis/viewer/set/projection o /vis/viewer/set/projection p 9