00001 /*! 00002 00003 $Id$ 00004 00005 Last update to: 00006 Id: Readme-Questions 110 2008-06-24 10:25:37Z maire 00007 00008 00009 \file "jour2d/.Readme-Questions" 00010 \brief L'exercise de jour2d 00011 00012 \mainpage jour2d 00013 00014 \section s1 GEOMETRIE 00015 00016 Une navette spatiale est modélisée par un cylindre d'Aluminium. 00017 A l'interieur de la cabine se trouve un plancher, également en Aluminium. 00018 La navette est placée dans l'espace ('World'). 00019 00020 Un (mini)astronaute est placé sur le plancher. 00021 00022 00023 \section s2 COMMENT DEMARRER ? 00024 00025 - lire le code : jour2d.cc (main) et les 5 classes DetectorConstruction, 00026 DetectorMessenger, PhysicsList, PrimaryGeneratorAction, 00027 PrimaryGeneratorMessenger 00028 00029 - compiler et générer un exécutable : 00030 \verbatim 00031 % gmake 00032 \endverbatim 00033 00034 - exécuter jour2d en mode interactif avec visualisation : 00035 \verbatim 00036 % $G4WORKDIR/bin/$G4SYSTEM/jour2d 00037 .... 00038 Idle> type your commands 00039 .... 00040 Idle> exit 00041 \endverbatim 00042 00043 \section s3 EXERCICES 00044 00045 \subsection ss31 EXERCICE 1 : nouvelle classe GPSPrimaryGeneratorAction 00046 00047 On a ajouté une nouvelle classe, GPSPrimaryGeneratorAction, pour controler 00048 interactivement le flux de particules incidentes. 00049 Nous allons utiliser cette nouvelle classe a la place de la precedente : 00050 PrimaryGeneratorAction. 00051 Les methodes de cette nouvelle classes sont vides, à remplir. 00052 GPSPrimaryGeneratorAction doit utiliser comme "gun" le G4GeneralParticleSource 00053 (GPS), qui est plus general que le basique G4ParticleGun. 00054 00055 La plupart du code C++ nécessaire pour la génération des flux est deja 00056 dans le GPS, donc par exemple il n'est pas nécessaire de définir particule, 00057 position, direction, vertex etc dans le C++. 00058 Aussi les commandes pour le choix des paramètres sont déjà définies: 00059 GPS viens avec son messenger (la classe G4GeneralParticleSourceMessenger), 00060 donc il n'est pas nécessaire d'en introduire un autre. 00061 00062 Activités: 00063 00064 a) Remplir les méthodes de la classe GPSPrimaryGeneratorAction 00065 00066 b) Modifier le main (jour2d.cc) pour utiliser la nouvelle classe en tant que 00067 primary generator 00068 00069 c) Modifier la dimension du World pour qu'il soit 10 fois plus grand que 00070 la navette (DetectorConstruction.cc) 00071 00072 d) Re-compiler pour re-générer l'exécutable : 00073 \verbatim 00074 % gmake 00075 \endverbatim 00076 00077 00078 00079 \subsection ss32 EXERCICE 2 : macros GPS pour la generation des flux 00080 00081 La génération des flux est faite avec des macros, sans C++. 00082 Nous allons donc développer 3 macros qui decrivent 3 sources de particules 00083 typiques dans le domaine du spatial. Les détails sont contenus dans les 00084 3 fichiers macros à remplir: 00085 00086 a) Source gamma Cobalt-60 \n 00087 Fichiers: gps_cobalt60.g4mac ou gps_cobalt60_2sources.g4mac \n 00088 (une macro optionelle pour la visualisation est fournie: vis_cobalt60_2sources.g4mac) 00089 00090 b) Faisceau de protons d'accélérateur \n 00091 Fichier: gps_accelerator.g4mac 00092 00093 c) Electrons présents dans l'environnement spatial \n 00094 Fichier: gps_electron_space_radiation_environment.g4mac 00095 00096 Pour générer chaque source, il faut lancer l'exécutable 00097 \verbatim 00098 % $G4WORKDIR/bin/$G4SYSTEM/jour2d 00099 \endverbatim 00100 exécuter la macro: 00101 \verbatim 00102 Idle> /control/execute macro.g4mac 00103 \endverbatim 00104 et générer des évènements 00105 \verbatim 00106 Idle> /run/beamOn 10 00107 \endverbatim 00108 00109 */