Exemple de compteur Cherenkov à bas seuil de CLAS12
Cet exemple présente la géométrie du compteur Cherenkov à bas seuil (LTCC) de CLAS12 issue de
clas12-systems. Il combine l’optique native des miroirs de GEMC avec des maillages CAO chargés via la
fonctionnalité gcad. Les deux systèmes sont stockés dans une seule base de données SQLite.
La géométrie et la numérisation du LTCC sont disponibles dans clas12-systems 0.3 avec GEMC 0.5 et
pygemc 0.5.0.
Démarrage rapide
Depuis le dépôt clas12-systems, construisez la base de données de géométrie et lancez une courte
simulation :
cd $GEMC_HOME/../clas12-systems/geometry_src/ltcc
./ltcc.py
gemc ltcc.yaml -n=1
Géométrie
La géométrie, présentée ci-dessous, est définie dans geometry_src/ltcc/geometry.py et orchestrée par
geometry_src/ltcc/ltcc.py. Les constructeurs natifs portent les scripts perl originaux de clas12Tags
(formes des miroirs, PMT et blindages de fer), tandis que les cônes de Winston réfléchissants et le châssis
mécanique sont importés sous forme de maillages CAO. Les rangées natives utilisent le système SQLite
ltcc et les rangées de maillages utilisent le système CAO distinct ltcc_cad. Les deux partagent la
même base de données, la même variation et le même run, de sorte qu’un seul gemc.db charge le détecteur
complet.
Le monde (une boîte nommée root) contient, pour chacun des six secteurs :
- une cale mère de gaz nommée ltccS<sector> contenant l’optique de ce secteur
- des segments de miroir cylindriques, hyperboliques et elliptiques enregistrés avec la surface optique ltcc_AlMgF2
- des tubes photomultiplicateurs nommés pmt_s<sector><side>_<n>, lus à gauche et à droite de chaque segment
- des blindages de fer de 5 mm couvrant la face extérieure des cônes de Winston
- des cônes de Winston CAO (WC_S, WC_M, WC_L) et des maillages de châssis réutilisés comme placements copyOf
Visualiseur interactif :
Liste de physique
Le LTCC est un détecteur Cherenkov ; les photons optiques doivent donc être produits et suivis. Le fichier
YAML sélectionne FTFP_BERT + G4OpticalPhysics avec phys_list: FTFP_BERT + G4OpticalPhysics.
phys_list
The physics list can be selected using the option
gemc -phys_list <value>where
<value>can be a combination of the Geant4 physics constructors separated by the+sign. For examplegemc -phys_list="FTFP_BERT + G4NeutronCrossSectionXS"To see a list of the available Geant4 constructors:
gemc -showPhysics
Générateur
Les cinématiques des particules sont définies dans le fichier YAML :
gparticle:
- name: e-
p: 5000*MeV
delta_p: 1*GeV
theta: 25*deg
delta_theta: 15*deg
randomThetaModel: cosine
phi: 60*deg
delta_phi: 180*deg
Consultez également la documentation du générateur interne pour plus d’informations.
Numérisation
Les tubes photomultiplicateurs utilisent le plugin de numérisation ltcc propre à CLAS12. Les identifiants enregistrent le secteur, le côté du PMT et le segment de miroir que le tube lit :
pmt.digitization = "ltcc"
pmt.set_identifier("sector", sector, "side", side_id, "segment", n)
Utilisation
Construction du détecteur
Utilisez geometry_src/ltcc/ltcc.py pour construire le détecteur. Le script définit les matériaux et les
surfaces des miroirs, publie les volumes natifs ltcc, téléverse les définitions CAO du système
ltcc_cad depuis stls/cad__default.yaml et ajoute les placements CAO copyOf. Par défaut, les deux
systèmes sont stockés dans un fichier SQLite nommé gemc.db.
Consultez également la construction de la géométrie pour plus d’informations.
Exécution de GEMC
Le fichier ltcc.yaml peut être utilisé pour lancer la configuration. Ajoutez -gui pour l’exécuter de
manière interactive :
gemc ltcc.yaml -gui
Modifiez ltcc.yaml selon vos besoins, en particulier pour ajouter des particules, contrôler le nombre de
threads ou changer la sortie.
Exécution des événements
Sortie
L’option gstreamer sélectionne les noms de fichiers et les formats de sortie :
gstreamer:
- format: csv
filename: ltcc
- format: hipo
filename: ltcc
Consultez également la documentation sur la sortie pour plus d’informations.
Tracé avec l’analyseur GEMC
Lancez d’abord GEMC avec 2 000 événements. Le fichier YAML par défaut écrit les flux CSV de l’analyseur.
gemc ltcc.yaml -n=2000 -no_field=all -plugin_path=/opt/projects/gemc/clas12-systems/build
Tracez l’énergie totale déposée par coup :
gemc-analyzer ltcc_t0_true_info.csv totalEDeposited --kind csv --data true_info

Tracez les positions des coups y en fonction de x :
gemc-analyzer ltcc_t0_true_info.csv --kind csv --data true_info --plot yvsx --bins 80
