tomeichlersmith / hps

0 stars 0 forks source link

Look Into Starting Alignment #4

Closed tomeichlersmith closed 2 years ago

tomeichlersmith commented 2 years ago

SDF

/sdf/group/hps/users/bravo/run/ali21

Email Nathan Balt*, Stepan, Matt G, and Cam about getting added to ifarm at JLab.

tomeichlersmith commented 2 years ago

HPS "Qualification Task" taken from https://indico.slac.stanford.edu/event/7319/

PF comments

  1. Global KF within ACTS
  2. Re-fit tracks found with KF using global fitter so we can obtain global covariance matrix for alignment
    • need to construct global chi2 fitter for hps
  3. Use GBL (General Broken Line) on global-scale interfacing with Millipede for alignment
    • this is the path we are going take - in principle, should be "easy"

Code already drafted by PF (needs to be tested, validated, cleaned up) - ask PF about questions related to mathematics/algorithms Issues:

Bkgd Material

Need to "tune" detector sensor positions to their real position based on collected data.

Correcting assumed geometry to match the real one.

Alignment Steps

  1. Build large linear system
    • will change
  2. Solve large matrix equation
    • MilliPede will do this for us

Test algorithm by inserting known misalignments in MC and checking if we can resolve that

SimpleGBLTrajAliDriver in hps-java

tomeichlersmith commented 2 years ago

Weak Modes

Unbiased Residuals

Unbiased residuals thin gaussians around zero is a good sign, but still need to check physical track parameters to make sure we are not in a Weak Mode

slot (hole) side : three hits in back of detector on slot (hole) slide

Getting out of Weak Modes

New geometry -> recompute global position of hits (don't need to re-decode or cluster) Re-define local->global transformation Always run on lcio as long as we cleanup computed variables No worries about evio -> lcio decoding

java -DdisableSvtAlignmentConstants -Djna.library.path="/sdf/group/hps/users/pbutti/sw/GeneralBrokenLines/cpp/install/lib/" -XX:+UseSerialGC -Xmx5000m -jar /sdf/group/hps/users/pbutti/sw/hps-java/distribution/target/hps-distribution-5.1-SNAPSHOT-bin.jar -R 10031 -d HPS_Nominal_201920216SensorSurvey_iter0 -D outputFile=data_events_aliRecon /sdf/group/hps/users/pbutti/run/alignmentDriver_chi2.lcsim -n 10 -i /sdf/group/hps/data/physrun2019/hps_010031/HPS_PhysicsRun2019-v2-FEE-Pass0/data_events_141.slcio

java should point to Cam's install of 15.0.1 JDK

First Goal: Run Kalman tracking by itself

SensorSetup - associate hits with sensors TrackerHitDriver - associate clusters with tracker modules Kalman can skip a lot of the (Helical, Track strategies, track merge) SimpleGBLTrajAliDriver - pass completed Kalman tracks

/sdf/group/hps/users/pbutti/sw/hps-java/steering-files/src/main/resources/org/hps/steering/recon/