Hello,
I have prepared Allpix data ntuples using cvmfs installation of Allpix:
/cvmfs/clicdp.cern.ch/software/allpix-squared/2.3.1/x86_64-centos7-gcc11-opt/setup.sh
The simulation ran fine and I have the data file. But when I am trying to analyze that data file, I am getting this warning:
Warning in <TStreamerInfo::BuildOld>: Cannot convert allpix::Pixel::index_ from type: ROOT::Math::DisplacementVector2D<ROOT::Math::Cartesian2D<unsigned int>,ROOT::Math::DefaultCoordinateSystemTag> to type: ROOT::Math::DisplacementVector2D<ROOT::Math::Cartesian2D<int>,ROOT::Math::DefaultCoordinateSystemTag>, skip element
It seems to be a root version backward incompatibility issue.
I am using root version
ROOT Version: 6.26/10
Built for macosx64 on Nov 16 2022, 10:42:54
From tags/v6-26-10@v6-26-10
While I can work with the most of the data ntuple, but I see for many of the pixels, the pixel index stored is 0. I suspect this is because of the root version mismatch.
I wonder if anyone else has seen this issue and if there is any workaround to solve this.
I am also wondering to use Allpix version 2.3.1, what should be the compatible root version? Is it below 6.24?
I have kept my script and one sample data file here which I think will reproduce this issue.
Thank you,
Arka
Hi @asantra
if you have produced the file with version APSQ 2.x you need to also analyze it with version APSQ 2.x. You are trying to analyze the file with a script using the object library from master
(soon-to-become 3.0) where the type of pixel index has changed from unsigned int
to int
.
Cheers,
Simon
Hi @simonspa ,
Thank you for the heads up. I prepared the files using APSQ 2.3.1 from CVMFS. May I know how I can use the CVMFS APSQ 2.3.1 setup to analyze the file?
For example, I changed these lines in my analyzer :
#include "../../src/objects/MCParticle.hpp"
#include "../../src/objects/PixelCharge.hpp"
#include "../../src/objects/PixelHit.hpp"
#include "../../src/objects/PropagatedCharge.hpp"
#include "../../src/tools/units.h"
to:
#include "/cvmfs/clicdp.cern.ch/software/allpix-squared/2.3.1/x86_64-centos7-gcc11-opt/include/objects/MCParticle.hpp"
#include "/cvmfs/clicdp.cern.ch/software/allpix-squared/2.3.1/x86_64-centos7-gcc11-opt/include/objects/PixelCharge.hpp"
#include "/cvmfs/clicdp.cern.ch/software/allpix-squared/2.3.1/x86_64-centos7-gcc11-opt/include/objects/PixelHit.hpp"
#include "/cvmfs/clicdp.cern.ch/software/allpix-squared/2.3.1/x86_64-centos7-gcc11-opt/include/objects/PropagatedCharge.hpp"
#include "/cvmfs/clicdp.cern.ch/software/allpix-squared/2.3.1/x86_64-centos7-gcc11-opt/include/tools/units.h"
but I am getting this error:
/cvmfs/clicdp.cern.ch/software/allpix-squared/2.3.1/x86_64-centos7-gcc11-opt/include/tools/units.h:13:10: fatal error: 'core/utils/log.h' file not found
#include "core/utils/log.h"
In addition, my analyzer files use
#include “…/…/src/modules/DetectorHistogrammer/Cluster.hpp”
How do I include this file from CVMFS? I don’t see this file in the CVMFS, but I see the library:
libAllpixModuleDetectorHistogrammer.so
Just including this library before the compilation of code:
.L /cvmfs/clicdp.cern.ch/software/allpix-squared/2.3.1/x86_64-centos7-gcc11-opt/lib/libAllpixModuleDetectorHistogrammer.so
does not help me find “Cluster.hpp” file.
Best,
Arka
Hi @asantra
instead of using the CVMFS version for your analysis script you can also just check out the correct version locally in your repository and keep working with the ../../src/objects/
relative paths. Best would be to branch off your own version from the stable branch:
git checkout -b my_branch v2.3-stable
Cheers,
Simon