← Back to team overview

kaliveda-dev team mailing list archive

[Bug 726607] Re: Le "ZReal" n'est pas ajusté correctement dans KVReconstructedNucleus::SetIdentification(KVIdentificationResult *)

 

Quand une KVIDZAGrid est utilisée pour identifier A & Z, seulement la masse est interpolée:
il y a un "real A" mais pas de "real Z", il y a seulement un Z entier correspondant au Z des lignes
entre lesquelles la masse a été interpolée.

C'est pour cela que dans le cas d'une identification en masse (A & Z), on n'appelle pas
SetRealZ dans la méthode KVReconstructedNucleus::SetIdentification. Et si on n'appelle pas
SetRealZ pour une particule, sa méthode GetRealZ retourne simplement (Float_t)Z.

Donc je me demande si ton problème n'est pas plutôt que KVReconstructedNucleus::GetPID()
retourne des valeurs bizarres toute seule? D'ailleurs, dans le bug#716299 le GetPID() ne
marchait pas correctement pour une identification en Z: tu es sûr que ce n'est pas le même problème ?

Ce bug a été résolu dans rev#322 de lp:kaliveda/1.8. Est-ce que tu peux vérifier si le comportement
que tu observes persiste avec la dernière version de la branche 1.8 ?

-- 
You received this bug notification because you are a member of KaliVeda
Development Team, which is subscribed to KaliVeda.
https://bugs.launchpad.net/bugs/726607

Title:
  Le "ZReal" n'est pas ajusté correctement dans
  KVReconstructedNucleus::SetIdentification(KVIdentificationResult *)

Status in KaliVeda data analysis framework:
  New

Bug description:
  J'ai essayé d'utiliser les KVIDGrid avec la version 1.8.0 de KaliVeda.
  C'est vraiment très utile! Il y a cependant un petit soucis lorsque on
  attribue le résultat de l'identification à un KVNucleus: le "ZReal"
  n'est pas ajusté correctement lorsque on fait une identification avec
  Z ET A. En y regardant de plus près, la méthode
  "KVNucleus::SetZReal()" n'est pas appelée dans la méthode
  "KVReconstructedNucleus::SetIdentification(KVIdentificationResult *)"
  lorsque le A a été identifié. Du coup la méthode "KVNucleus::GetPID()"
  retourne un PID un peu bizarre lorsqu'on l'appelle après avoir fait
  une identification en A et Z. J'ai effectué la correction chez moi,
  mais comme je ne suis pas développeur de KaliVeda, je n'ai pas pu
  faire le "bzr commit" approprié. Voici la petite correction:

  void KVReconstructedNucleus::SetIdentification(KVIdentificationResult* idr)
  {
  	// Set identification of nucleus from informations in identification result object
                 	  SetIDCode( idr->IDcode );
                 	  SetZMeasured( idr->Zident );
                 	  SetAMeasured( idr->Aident );
                 	  SetZ( idr->Z );
                 	  if(idr->A > 0) SetA( idr->A );
                 	  if(idr->Aident) 
  		   {
  		   SetRealA( idr->PID );
  		   SetRealZ( idr->Z );
  		   }
                 	  else SetRealZ( idr->PID );
  }



Follow ups

References