GeneralBrokenLines V03-01-03
using EIGEN
Functions
exampleComposedGeo.cpp File Reference

Example (cylindrical) drift chamber application (composed trajectory with geometric constraint). More...

#include <time.h>
#include "exampleUtilCdc.h"
#include "GblTrajectory.h"

Go to the source code of this file.

Functions

void exampleComposedGeo ()
 Drift chamber example. More...
 

Detailed Description

Example (cylindrical) drift chamber application (composed trajectory with geometric constraint).

Author
Claus Kleinwort, DESY, 2023 (Claus.nosp@m..Kle.nosp@m.inwor.nosp@m.t@de.nosp@m.sy.de)

Definition in file exampleComposedGeo.cpp.

Function Documentation

◆ exampleComposedGeo()

void exampleComposedGeo ( )

Drift chamber example.

Simulate and reconstruct helical tracks in a (cylindrical) drift chamber.

Create points on initial trajectories, create COMPOSED trajectory (for two tracks from same vertex) from points, fit and write trajectory to MP-II binary file (for rigid body alignment).

Setup:

  • Collider, beams in Z direction
  • Constant magnetic field in Z direction
  • Cylindrical drift chamber
  • No multiple scattering in detectors (gas, wires, walls) (air in between ignored)
  • Curvilinear system (T,U,V) as local coordinate system and (q/p, slopes, offsets) as local track parameters
Remarks
To exercise (mis)alignment different sets of layers (with different geometry) for simulation and reconstruction can be used.

Example steering file for Millepede-II (B=0, chamber alignment):

Cfiles
milleBinaryISN.dat
method inversion 3 0.1
chiscut 30. 6.
printcounts
! fix first layer as reference
parameter
1001 0. -1.
1002 0. -1.
1003 0. -1.
1004 0. -1.
1005 0. -1.
1006 0. -1.
end

Definition at line 75 of file exampleComposedGeo.cpp.

References gbl::GblPoint::addGlobals(), gbl::GblPoint::addMeasurement(), gbl::GblPoint::addScatterer(), gbl::CreateImpactPar(), gbl::CreateWireCdc(), gbl::GblTrajectory::fit(), gbl::gblMultipleScatteringError(), gbl::gblSimpleJacobian(), gbl::GblHelixPrediction::getArcLength(), gbl::GblSimpleHelix::getArcLengthR(), gbl::GblSimpleHelix::getArcLengthXY(), gbl::GblHelixPrediction::getCosIncidence(), gbl::GblHelixPrediction::getCurvilinearDirs(), gbl::GblHelixPrediction::getDirection(), gbl::GblDetectorLayer::getLayerID(), gbl::GblHelixPrediction::getMeasPred(), gbl::GblDetectorLayer::getMeasSystemDirs(), gbl::GblSimpleHelix::getPhi(), gbl::GblHelixPrediction::getPosition(), gbl::GblDetectorLayer::getPrecision(), gbl::GblDetectorLayer::getRadiationLength(), gbl::GblDetectorLayer::getResolution(), gbl::GblDetectorLayer::getRigidBodyDerGlobal(), gbl::GblDetectorLayer::intersectWithHelix(), gbl::GblTrajectory::milleOut(), gbl::GblTrajectory::printTrajectory(), gbl::unif(), and gbl::unrm().