Skip to content

TPC VDrift: make VDriftHelper usable outside DPL (e.g. O2Physics) - #15749

Merged
f3sch merged 1 commit into
AliceO2Group:devfrom
matthias-kleiner:vdccdb
Sep 15, 2026
Merged

f3sch merged 1 commit into
AliceO2Group:devfrom
matthias-kleiner:vdccdb

Conversation

@matthias-kleiner

Copy link
Copy Markdown
Contributor

Split VDriftHelper::extractCCDBInputs into the CCDB-fetching part and a framework-independent updateVDrift() and add BasicCCDBManager-based overloads to VDriftHelper/PressureTemperatureHelper so O2Physics can call these directly instead of reimplementing the T/P-scaling logic (see AliceO2Group/O2Physics#17656). Calling these every event is cheap: laser/TGL/pressure/temperature are only re-accounted when the underlying CCDB object actually changed and logging is throttled to avoid stdout spam in trains.

Split VDriftHelper::extractCCDBInputs into the CCDB-fetching part and a
framework-independent updateVDrift() and add BasicCCDBManager-based
overloads to VDriftHelper/PressureTemperatureHelper so O2Physics can
call these directly instead of reimplementing the T/P-scaling logic
(see AliceO2Group/O2Physics#17656). Calling these every event is cheap:
laser/TGL/pressure/temperature are only re-accounted when the
underlying CCDB object actually changed and logging is throttled to
avoid stdout spam in trains.

@shahor02 shahor02 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @matthias-kleiner !

@f3sch with this you just need to create a VDriftHelper instance and simply do

mVDHelper.extractCCDBInputs(*mCCDB, timestamp);
return mVDHelper.getVDriftObject().getVDrift();

either directly from the analysis task of from your TPCVDriftManager.

Comment thread Detectors/TPC/calibration/include/TPCCalibration/VDriftHelper.h
@alibuild

alibuild commented Sep 2, 2026

Copy link
Copy Markdown
Collaborator

Error while checking build/O2/fullCI_slc9 for 489d19f at 2026-09-08 21:44:

## sw/BUILD/O2-sim-challenge-test-latest/log
./sim-challenge.log[ERROR] SHUTTING DOWN DUE TO SIGNALED EXIT IN COMPONENT 209
./sim.log[ERROR] SHUTTING DOWN DUE TO SIGNALED EXIT IN COMPONENT 209


## sw/BUILD/o2checkcode-latest/log
--
========== List of errors found ==========
++ GRERR=0
++ grep -v clang-diagnostic-error error-log.txt
++ grep ' error:'
grep: error-log.txt: binary file matches
++ GRERR=1
++ [[ 1 == 0 ]]
++ mkdir -p /sw/INSTALLROOT/47450cc37d2c77516f3f10c1e747a082d326343b/slc9_x86-64/o2checkcode/1.0-local4/etc/modulefiles
++ alibuild-generate-module
+ HAS_BIN=
+ HAS_LIB=
+ HAS_CMAKE=
+ HAS_ROOT=
+ '[' 0 '!=' 0 ']'
+ cat
+ printf 'if ![ is-loaded '\''BASE/1.0'\'' ] {\n module load BASE/1.0\n}'
+ echo 'BUILD_REQUIRES=CMake alibuild-recipe-tools defaults-release'
BUILD_REQUIRES=CMake alibuild-recipe-tools defaults-release
+ FULL_BUILD_REQUIRES='ninja ninja-fortran FairCMakeModules Python-modules-list safe_int O2-customization CMake defaults-release MPFR UUID json-c pytorch_cpuinfo alibuild-recipe-tools date Alice-GRID-Utils bz2 double-conversion googlebenchmark'
+ echo 'FULL_BUILD_REQUIRES=ninja ninja-fortran FairCMakeModules Python-modules-list safe_int O2-customization CMake defaults-release MPFR UUID json-c pytorch_cpuinfo alibuild-recipe-tools date Alice-GRID-Utils bz2 double-conversion googlebenchmark'
FULL_BUILD_REQUIRES=ninja ninja-fortran FairCMakeModules Python-modules-list safe_int O2-customization CMake defaults-release MPFR UUID json-c pytorch_cpuinfo alibuild-recipe-tools date Alice-GRID-Utils bz2 double-conversion googlebenchmark
++ env
++ cut -f1 -d=
++ grep -v '^DEFAULT_'
++ grep -v PKGREVISION
++ grep -v ALIBUILD_RECIPE_TOOLS
++ grep REVISION
++ sed -e s/_REVISION//
+ for x in $(env | cut -f1 -d= | grep -v "^DEFAULT_" | grep -v PKGREVISION | grep -v ALIBUILD_RECIPE_TOOLS | grep REVISION | sed -e 's/_REVISION//')
++ eval 'echo $LIBFFI_REVISION'
+++ echo 14
+ REVISION_VALUE=14
++ eval 'echo $LIBFFI_VERSION'
+++ echo v3.2.1-alice1
+ VERSION_VALUE=v3.2.1-alice1
++ eval 'echo $LIBFFI_ROOT'
+++ echo /sw/slc9_x86-64/libffi/v3.2.1-alice1-14
+ ROOT_PATH_VALUE=/sw/slc9_x86-64/libffi/v3.2.1-alice1-14
+ '[' -z 14 ']'
+ echo 'ninja ninja-fortran FairCMakeModules Python-modules-list safe_int O2-customization CMake defaults-release MPFR UUID json-c pytorch_cpuinfo alibuild-recipe-tools date Alice-GRID-Utils bz2 double-conversion googlebenchmark'
+ tr '[:lower:]' '[:upper:]'
+ tr - _
[0 more errors; see full log]

Full log here.

@f3sch
f3sch merged commit e96811d into AliceO2Group:dev Sep 15, 2026
15 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

5 participants