[Halld-offline] FCAL reconstruction

David Lawrence davidl at jlab.org
Wed May 25 11:44:44 EDT 2011


Hi Mihajlo,

     Thanks for checking in the work around this morning. I was able to 
further diagnose the original cause of the problem to the fact that no 
DVertex objects were being created for the so called "orphan showers" in 
DVertex_factory.cc. I have since added code to generate DVertex objects 
for these which should make things work more as expected.

     I do like your suggestion of moving to DFCALCluster and DFCALShower 
objects. I agree that will make the BCAL and FCAL more consistent as 
well as settling on a common terminology that will help folks navigate 
the code easier.

Regards,
-David

On 5/25/11 11:31 AM, Kornicer, Mihajlo wrote:
>
> Hi Beni and David,
>
> I have checked in a quick fix for the vertex problem in the 
> DFCALPhoton_factory. I agree that DFCALPhoton is kind of obsolete, but 
> you cannot ignore it for now, because cluster energy and position in 
> the calorimeter are determined by this factory.
>
> My proposal is to migrate DFCALPhoton into DFCALShower, and use it in 
> Vertex and ParticleSet factories, instead of FCALCluster, which is not 
> calibrated.
> In that way both BCAL and FCAL will have the same objects: clusters 
> for initial reconstruction and showers with energy and position info.
> If this sound reasonable, I can do this.
> Later, one can use true vertex to recalibrate photon position if 
> needed, but I assume this will be a second order effect on photon 
> momenta in the forward.
>
> Regards,
> Mihajlo
>
> Quoting Beni Zihlmann <zihlmann at jlab.org>:
>
>> Hi Mihajlo,
>> I just talked also with David because I noticed that he put that
>> piece of code in.
>> He is looking into it. However he also said that DFCALPhoton is kind
>> of obsolete
>> and one should use DParticleSet when analyzing and event. This lead 
>> to more
>> discussion between Simon, Elton, David and me realizing that there is 
>> some
>> ambiguity in the code regarding photons, calorimeter clusters and 
>> tracks from
>> tracking because they are interlinked with each other. To resolve 
>> this the
>> DParticleSet has been introduced. I will go ahead and try to use this 
>> to see
>> what comes out.
>>
>> thanks for the fast response,
>> Beni
>>
>>
>>>
>>> Hi Beni,
>>>
>>> I have also discovered that feature recently. I guess the idea was
>>> to not have photon momenta without the vertex, which is fine, but it
>>> cripples the library if you want to look at energy and position in
>>> the calorimeter. I'll soon let you know when I submit a fix that
>>> uses internal vertex parameter, so you can check it out. More
>>> comprehensive solution would be to replace DFCALPhoton with
>>> DFCALShower in the future.
>>>
>>> Regards,
>>> Mihajlo
>>>
>>> Quoting Beni Zihlmann <zihlmann at jlab.org>:
>>>
>>>> Hi Mihajlo,
>>>> I have a problem with the photon reconstruction in the FCAL.
>>>> I use a particle gun to shoot photons at the FCAL but I never
>>>> get a reconstructed photon. The reason seems that in the
>>>> DFCALPhoton_factory there is an if statement checking if
>>>> a vertex is available if not the code returns without doing
>>>> anything.
>>>>         const DVertex *vertex=NULL;
>>>>         //loop->GetSingle(vertex);
>>>>         vector<const DVertex *>vertices;
>>>>         eventLoop->Get(vertices);
>>>>         if (vertices.size()) vertex=vertices[0];
>>>>
>>>>         // If no DVertex object exists, then we cannot calculate the
>>>>         // momentum vectors of the photons. We punt here and refuse
>>>>         // to make any DFCALPhotons.
>>>>         if(vertex==NULL)return NOERROR;
>>>>
>>>>
>>>> do you have an idea how to get around this problem.
>>>>
>>>> thanks,
>>>> Beni
>>>>
>>>
>>>
>>
>>
>
>



More information about the Halld-offline mailing list