sphenix-tracking-l AT lists.bnl.gov
Subject: sPHENIX tracking discussion
List archive
Re: [Sphenix-tracking-l] trackbase/alignmentTranformationContainer
- From: Anthony Frawley <afrawley AT fsu.edu>
- To: sphenix-tracking <sphenix-tracking-l AT lists.bnl.gov>, pinkenburg <pinkenburg AT bnl.gov>
- Subject: Re: [Sphenix-tracking-l] trackbase/alignmentTranformationContainer
- Date: Thu, 20 Oct 2022 00:52:12 +0000
Hello Chris,
The class stores Acts::Transform3 objects. Acts::Transform3 is just a pseudonym for an Eigen::Transform3D, so we could switch to declaring it that way - I believe the compiler should be happy with that. The reason that it needs to be created before the Acts
geometry is that it contains the static variable that tells Acts whether it should return the detector construction transforms from the detector element base class, or the transforms we make that contain alignment perturbations.
I assume that you are OK with using an Eigen class? If so, I can easily change it.
The static variable is used to control whether we get alignment transformations or construction transformations from the Acts GeometryContext. Whenever we want to switch to new alignment transforms, we need to switch temporarily to construction transforms,
which are used as the baseline for the alignment transformations. We will have to change the alignment transforms periodically, presumably.
The static variable just needs to be somewhere that we can set it before we build the Acts geometry, and then access it conveniently. I don't care where it is.
Tony
From: sPHENIX-tracking-l <sphenix-tracking-l-bounces AT lists.bnl.gov> on behalf of pinkenburg via sPHENIX-tracking-l <sphenix-tracking-l AT lists.bnl.gov>
Sent: Wednesday, October 19, 2022 5:23 PM
To: sphenix-tracking <sphenix-tracking-l AT lists.bnl.gov>
Subject: [Sphenix-tracking-l] trackbase/alignmentTranformationContainer
Sent: Wednesday, October 19, 2022 5:23 PM
To: sphenix-tracking <sphenix-tracking-l AT lists.bnl.gov>
Subject: [Sphenix-tracking-l] trackbase/alignmentTranformationContainer
Hi folks,
this class throws a monkey wrench into the build (with gcc 12.1). It can
be dealt with but the problem is that it is a persitant class which
contains a variable from Acts:
std::vector< std::vector<Acts::Transform3>> transformVec;
We don't want to expose our DST readback to the whims of other software.
It also has a static variable which doesn't really makes sense in a
persistent object. Can this be split into a persistent part and some
helper which fills it? If it doesn't pull in Acts (when rootcint is
run), the build problem will go away as well. I am surprised that this
doesn't crash our regular builds - given what I see it should (it pulls
in an Acts include before Acts installs it)
Chris
--
*************************************************************
Christopher H. Pinkenburg ; pinkenburg AT bnl.gov
; https://urldefense.com/v3/__http://www.phenix.bnl.gov/*pinkenbu__;fg!!PhOWcWs!z_91XYat_bFWu1cT-GOnhA1YEDUrbYBo_4WimStvv7XA8SaCKWrXDjRb3BQbDISkh3Wl9SepSleyTveOJtx_W2RJjeqpdy5WTw$
Brookhaven National Laboratory ; phone: (631) 344-5692
Physics Department Bldg 510 C ; fax: (631) 344-3253
Upton, NY 11973-5000
*************************************************************
_______________________________________________
sPHENIX-tracking-l mailing list
sPHENIX-tracking-l AT lists.bnl.gov
https://urldefense.com/v3/__https://lists.bnl.gov/mailman/listinfo/sphenix-tracking-l__;!!PhOWcWs!z_91XYat_bFWu1cT-GOnhA1YEDUrbYBo_4WimStvv7XA8SaCKWrXDjRb3BQbDISkh3Wl9SepSleyTveOJtx_W2RJjeq_6mIFiQ$
this class throws a monkey wrench into the build (with gcc 12.1). It can
be dealt with but the problem is that it is a persitant class which
contains a variable from Acts:
std::vector< std::vector<Acts::Transform3>> transformVec;
We don't want to expose our DST readback to the whims of other software.
It also has a static variable which doesn't really makes sense in a
persistent object. Can this be split into a persistent part and some
helper which fills it? If it doesn't pull in Acts (when rootcint is
run), the build problem will go away as well. I am surprised that this
doesn't crash our regular builds - given what I see it should (it pulls
in an Acts include before Acts installs it)
Chris
--
*************************************************************
Christopher H. Pinkenburg ; pinkenburg AT bnl.gov
; https://urldefense.com/v3/__http://www.phenix.bnl.gov/*pinkenbu__;fg!!PhOWcWs!z_91XYat_bFWu1cT-GOnhA1YEDUrbYBo_4WimStvv7XA8SaCKWrXDjRb3BQbDISkh3Wl9SepSleyTveOJtx_W2RJjeqpdy5WTw$
Brookhaven National Laboratory ; phone: (631) 344-5692
Physics Department Bldg 510 C ; fax: (631) 344-3253
Upton, NY 11973-5000
*************************************************************
_______________________________________________
sPHENIX-tracking-l mailing list
sPHENIX-tracking-l AT lists.bnl.gov
https://urldefense.com/v3/__https://lists.bnl.gov/mailman/listinfo/sphenix-tracking-l__;!!PhOWcWs!z_91XYat_bFWu1cT-GOnhA1YEDUrbYBo_4WimStvv7XA8SaCKWrXDjRb3BQbDISkh3Wl9SepSleyTveOJtx_W2RJjeq_6mIFiQ$
-
[Sphenix-tracking-l] trackbase/alignmentTranformationContainer,
pinkenburg, 10/19/2022
-
Re: [Sphenix-tracking-l] trackbase/alignmentTranformationContainer,
Anthony Frawley, 10/19/2022
-
Re: [Sphenix-tracking-l] trackbase/alignmentTranformationContainer,
pinkenburg, 10/20/2022
-
Re: [Sphenix-tracking-l] trackbase/alignmentTranformationContainer,
Anthony Frawley, 10/21/2022
- Re: [Sphenix-tracking-l] trackbase/alignmentTranformationContainer, pinkenburg, 10/21/2022
-
Re: [Sphenix-tracking-l] trackbase/alignmentTranformationContainer,
Anthony Frawley, 10/21/2022
-
Re: [Sphenix-tracking-l] trackbase/alignmentTranformationContainer,
pinkenburg, 10/20/2022
-
Re: [Sphenix-tracking-l] trackbase/alignmentTranformationContainer,
Anthony Frawley, 10/19/2022
Archive powered by MHonArc 2.6.24.