star-bnl / star-sw

Core software for STAR experiment
26 stars 63 forks source link

New FWD tracking mode based on FST-track finding #571

Open jdbrice opened 9 months ago

jdbrice commented 9 months ago

These updates provide a new FWD tracking mode in which the track finding is one with FST information. Tracks are then fit to valid Seeds and then (optionally) any FTT hits are added to the track if found along the trajectory.

This mode is needed for any analysis of real data at this point. That would include fast offline for ongoing data taking.

jdbrice commented 9 months ago

Note, this PR includes the changes from PR #569 but the only changes relevant here are those in StRoot/StFwdTrackMaker and StRoot/StFwdUtils/

jdbrice commented 9 months ago

Also the CI jobs seem to be failing on code unrelated to my changes (things in StEvent)

plexoos commented 9 months ago

These errors should be fixed first:

2023-07-25T19:47:18.5349686Z #10 1453.7 g++ -m64 -fPIC -pipe -Wall -Woverloaded-virtual -std=c++0x -Wno-long-long -pthread -Wno-deprecated-declarations -Werror -O2 -g -falign-loops -falign-jumps -falign-functions -Dsl79_gcc485 -D__ROOT__ -DNEW_DAQ_READER -I. -IStRoot -I.sl79_gcc485/include -I/opt/software/linux-scientific7-x86_64/gcc-4.8.5/root-5.34.38-l3v6vso6qgojm4l2ctwjojs6trbt4hpn/include -c .sl79_gcc485/OBJ/StRoot/StFwdUtils/StFwdAnalysisMaker.cxx -o .sl79_gcc485/OBJ/StRoot/StFwdUtils/StFwdAnalysisMaker.o
2023-07-25T19:47:19.4377677Z #10 1454.6 .sl79_gcc485/OBJ/StRoot/StFwdUtils/StFwdAnalysisMaker.cxx: In member function 'void StFwdAnalysisMaker::ProcessFwdTracks()':
2023-07-25T19:47:19.4378676Z #10 1454.6 .sl79_gcc485/OBJ/StRoot/StFwdUtils/StFwdAnalysisMaker.cxx:191:54: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare]
2023-07-25T19:47:19.4379329Z #10 1454.6          for( int i = 0; i < fcs->clusters(iDet).size(); i++){
2023-07-25T19:47:19.4379659Z #10 1454.6                                                       ^
2023-07-25T19:47:19.4380367Z #10 1454.6 .sl79_gcc485/OBJ/StRoot/StFwdUtils/StFwdAnalysisMaker.cxx:245:68: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare]
2023-07-25T19:47:19.4381434Z #10 1454.6          for ( int iEcal = 0; iEcal < fwdTrack->ecalClusters().size(); iEcal++ ){
2023-07-25T19:47:19.4381970Z #10 1454.6                                                                     ^
2023-07-25T19:47:19.4382676Z #10 1454.6 .sl79_gcc485/OBJ/StRoot/StFwdUtils/StFwdAnalysisMaker.cxx:263:62: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare]
2023-07-25T19:47:19.4383319Z #10 1454.6                  for( int i = 0; i < fcs->clusters(iDet).size(); i++){
2023-07-25T19:47:19.4383665Z #10 1454.6                                                               ^
2023-07-25T19:47:19.4384345Z #10 1454.6 .sl79_gcc485/OBJ/StRoot/StFwdUtils/StFwdAnalysisMaker.cxx:301:62: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare]
2023-07-25T19:47:19.4384994Z #10 1454.6                  for( int i = 0; i < fcs->clusters(iDet).size(); i++){
2023-07-25T19:47:19.4385329Z #10 1454.6                                                               ^
2023-07-25T19:47:19.4385933Z #10 1454.6 .sl79_gcc485/OBJ/StRoot/StFwdUtils/StFwdAnalysisMaker.cxx:235:15: error: unused variable 'c' [-Werror=unused-variable]
2023-07-25T19:47:19.4386330Z #10 1454.6          float c[9];
2023-07-25T19:47:19.4386574Z #10 1454.6                ^
2023-07-25T19:47:19.4387294Z #10 1454.6 .sl79_gcc485/OBJ/StRoot/StFwdUtils/StFwdAnalysisMaker.cxx: In member function 'void StFwdAnalysisMaker::ProcessFwdMuTracks()':
2023-07-25T19:47:19.4388295Z #10 1454.6 .sl79_gcc485/OBJ/StRoot/StFwdUtils/StFwdAnalysisMaker.cxx:413:55: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare]
2023-07-25T19:47:19.4388939Z #10 1454.6              for( int i = 0; i < fcs->numberOfClusters(); i++){
2023-07-25T19:47:19.4389281Z #10 1454.6                                                        ^
2023-07-25T19:47:19.4389984Z #10 1454.6 .sl79_gcc485/OBJ/StRoot/StFwdUtils/StFwdAnalysisMaker.cxx:437:70: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare]
2023-07-25T19:47:19.4390652Z #10 1454.6          for ( size_t i = 0; i < muFwdTrack->mEcalClusters.GetEntries(); i++ ){
2023-07-25T19:47:19.4391042Z #10 1454.6                                                                       ^
2023-07-25T19:47:19.4391851Z #10 1454.6 .sl79_gcc485/OBJ/StRoot/StFwdUtils/StFwdAnalysisMaker.cxx:455:70: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare]
2023-07-25T19:47:19.4392547Z #10 1454.6          for ( size_t i = 0; i < muFwdTrack->mHcalClusters.GetEntries(); i++ ){
2023-07-25T19:47:19.4392918Z #10 1454.6                                                                       ^
2023-07-25T19:47:19.4393526Z #10 1454.6 .sl79_gcc485/OBJ/StRoot/StFwdUtils/StFwdAnalysisMaker.cxx:402:15: error: unused variable 'c' [-Werror=unused-variable]
2023-07-25T19:47:19.4394034Z #10 1454.6          float c[9];
2023-07-25T19:47:19.4394264Z #10 1454.6                ^
jdbrice commented 9 months ago

@klendathu2k I will remove everything StFtt related from this PR. Everything you suggest is valid - but it I've addressed it in PR #569 instead of here

jdbrice commented 9 months ago

Well, I thought that PR #538 (Add Fwd Tracks to MuDst) was already merged. It was submitted in May but has not received any review. So I removed MuDST from the PR also (done in https://github.com/star-bnl/star-sw/pull/571/commits/ae1dae2f96d009378c6be9dcf21e19c0f523380d)

plexoos commented 9 months ago

Well, I thought that PR #538 (Add Fwd Tracks to MuDst) was already merged. It was submitted in May but has not received any review. So I removed MuDST from the PR also (done in ae1dae2)

I reviewed #538 just now. It looks good to me. I suggest we merge it before this one

jdbrice commented 5 months ago

I finally updated this PR to include only the needed changes for this feature (FST based tracking) Review can go ahead now

jdbrice commented 5 months ago

commit e65362f made changes to verify everything works for the ideal simulation cases:

I added: StRoot/StFwdTrackMaker/macro/sim/ideal_sim.C StRoot/StFwdTrackMaker/macro/sim/gen

to make running the code in this way easy. It can be tested with:

cons
ln -s StRoot/StFwdTrackMaker/macro/sim/ .
./sim/gen 100
./sim/ideal_sim.C 100
jdbrice commented 4 weeks ago

OK with 99752c4 I think I have brought in all of the most important updates: