kaliveda-dev team mailing list archive
-
kaliveda-dev team
-
Mailing list archive
-
Message #01136
[Question #230956]: Energies déposées dans les différents matériaux traversés par une particule
New question #230956 on KaliVeda:
https://answers.launchpad.net/kaliveda/+question/230956
Pour traquer quelques particules avec des énergies excessivement grandes dans la 5e campagne ,
je veux savoir quelles sont les énergies déposées dans chaque étage. Ca a l'air simple, mais ...
Tests faits au CC KV1.8.10
Voici mon bout de code :
KVINDRAReconNuc *part;
....
part->GetDetectorList();
KVCsI* csi = (KVCsI*)part->GetDetectorList()->FindObjectByType("CSI");
if(csi) ECsI[i] = part->GetEnergyCsI();
KVSilicon* si = (KVSilicon*)part->GetDetectorList()->FindObjectByType("SI");
if(si) ESi[i] = part->GetEnergySi();
KVSiLi* sili = (KVSiLi*)part->GetDetectorList()->FindObjectByType("SILI");
if(sili) ESiLi[i] = sili->GetEnergy();
KVSi75* si75 = (KVSi75*)part->GetDetectorList()->FindObjectByType("SI75");
if(si75) ESi75[i] = si75->GetEnergy();
KVChIo *chio =(KVChIo*)part->GetDetectorList()->FindObjectByType("CI");
if(chio){
EChIo[i] = chio->GetCalibratedEnergy();
Emylar[i] = chio->GetELossMylar(Z[i],A[i]);
}
//
Etarget[i] = part->GetTargetEnergyLoss();
...
if(nevsel2<10) {
// part->GetDetectorList()->ls();
printf("CsI=%7.1f Si=%7.1f SiLi=%6.1f Si75=%5.1f Gaz=%5.1f Mylar=%4.1f Cible=%4.1f \n",
ECsI[i],ESi[i],ESiLi[i],ESi75[i],EChIo[i],Emylar[i],Etarget[i]) ;
if(chio&&chio->Fired())printf("energie chio part = %5.1f \n",part->GetEnergyChIo());
if(csi&&csi->Fired())printf("ECsI detecteur %6.1f \n",csi->GetCorrectedEnergy(part));
}
Avec Guilain on a conclu que
les méthodes part->GetEnergyCsI() et part->GetEnergyChIo() retournent 0 lorsque la particule est détectée dans les couronnes 10-17, et la valeur correcte pour les couronnes 1-9 (2-9 pour ChIo).
la méthode partant du pointeur CsI : csi->GetEnergy() retourne aussi 0; la bonne valeur est obtenue avec csi->GetCorrectedEnergy()
Questions :
serait-il possible que les méthodes KVIndraReconNuc->GetEnergyCsI() et ChIo() fonctionnent quelle
que soit la couronne touchée par la particule ?
pourquoi la méthode KVCsI->GetEnergy() renvoie-t-elle une valeur nulle ?
--
You received this question notification because you are a member of
KaliVeda Development Team, which is an answer contact for KaliVeda.