Skip to content

TPC: createFromLocalCorrection with irregular spline knots - #16028

Merged
wiechula merged 1 commit into
AliceO2Group:devfrom
matthias-kleiner:tpc-fastsc-irregular-knots
Nov 11, 2026
Merged

wiechula merged 1 commit into
AliceO2Group:devfrom
matthias-kleiner:tpc-fastsc-irregular-knots

Conversation

@matthias-kleiner

Copy link
Copy Markdown
Contributor

New overload of TPCFastSpaceChargeCorrectionHelper::createFromLocalCorrection taking the knot positions in y and z as vectors, so a correction from a continuous function can have dense knots where it changes fast (e.g. at the sector edges). The knots are rounded to an integer grid with 1/10 of the smallest knot distance as step, as in createFromTrackResiduals; the first and the last knot are put at the ends of the grid (row y edges; central electrode and readout in z). The function is sampled at 6 points per knot interval over the whole grid.

The existing uniform version is unchanged. It samples y only between the outermost pad centres, so the outer half pad of each row is extrapolated by the spline. Test with a B = 0 cosmics correction map (spline - map, rms in dx / dy / dz):

  • 10 x 10 uniform knots: new overload 61 / 42 / 43 um, existing function 60 / 49 / 42 um; within 6 % of the row width of the sector edges dy 41 um (1.7 mm max) vs 218 um (3.9 mm max).
  • 20 x 10 uniform knots: new overload 59 / 38 / 39 um; existing function 0.5 / 2.1 / 1.0 mm, up to 16 cm on the pad range and 36 cm at the sector edges.

New overload of TPCFastSpaceChargeCorrectionHelper::createFromLocalCorrection taking the knot positions in y and z as vectors,
so a correction from a continuous function can have dense knots where it changes fast (e.g. at the sector edges). The knots are
rounded to an integer grid with 1/10 of the smallest knot distance as step, as in createFromTrackResiduals; the first and the last
knot are put at the ends of the grid (row y edges; central electrode and readout in z). The function is sampled at 6 points per
knot interval over the whole grid.

The existing uniform version is unchanged. It samples y only between the outermost pad centres, so the outer half pad of each row
is extrapolated by the spline. Test with a B = 0 cosmics correction map (spline - map, rms in dx / dy / dz):
- 10 x 10 uniform knots: new overload 61 / 42 / 43 um, existing function 60 / 49 / 42 um; within 6 % of the row width of the
  sector edges dy 41 um (1.7 mm max) vs 218 um (3.9 mm max).
- 20 x 10 uniform knots: new overload 59 / 38 / 39 um; existing function 0.5 / 2.1 / 1.0 mm, up to 16 cm on the pad range and
  36 cm at the sector edges.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@wiechula
wiechula merged commit 18fe8f8 into AliceO2Group:dev Nov 11, 2026
13 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.

3 participants