- find sx3 events, gainmatch them, calibrate, make a vector of these called SX3_Events
- same step for QQQ, call it QQQ_Events
- find anodeWire clusters, cathodeWire clusters, make vectors of these
- make PC_Events from wire clusters, save 'anode only' and 'cathode only' cases just in case
* since PC_Events, QQQ_Events, SX3_Events are all STL containers, we can pass them to functions that perform modular analyses
* In this commit:
- 4-wire offsets used, along with reliably figuring out phi-offset between QQQ/SX3/PC. We are close, except for some QQQ fine-tuning due to their angular extent not being 90 deg
- the pczfix step now makes sense, 1-wire calculations also loosely match between guess and pcz
- the nonlinearity correction/dynamic range fix is just adding to the resolution
- p(a,a) data analysable by QQQ alphas show good kinematics, when doing the following gates:
> A1C1 event pczs dithered, A1C2 events made into pczfix
> phicut (45 deg) to gate out p+a correlations, SiE < 5 MeV && PCa > 6000 to select the alpha blob in p+a
> Some selection on VertexReconXY so that the Perp() of the vertex is < 6mm
> Selection on VertexReconZ so that z is in [-173.6, 100]. Fine alignment pending
- Doing all the above gives reasonable p(a,a) kinematic curves with good statistics, Ex peaked at -0.7 MeV, close but not perfect
- The above steps, when repeated with oneWire anode events stored in aClusters also yields a very reasonable kinematic locus, and Ex value, even more statistics
- Not sure how much of this is autocorrelation stuff but
> VertexReconZ vs Ef in QQQ (Ef is eloss-fixed alpha energy using path length) shows sensible trends.
- Why Ex is not centered around zero might need more thought.
- VertexReconXY is suspiciously well-centered, might need some more thought as well.
* Some infrastructure that allows processing of 17F data is also in the pipeline now.
* One fairly important bug got fixed which was ignoring qqq.id[0] when making QQQ_Events
* Ideally, follow-ups to the above done on 27Al, 17F will make their own functions that are then called separately using booleans at the very top.
* The fate of proton dE signals is out to jury.
- wireOffset is now 4 not 3. Phew. Gosh Golly. Change in Armory/ClassPW.h
- Concomitant changes made to Armory/PC_Stepladder_Correction.h. In this particular version, a shift of 2 anodes in run*.sh has been replaced by an offset in z
- The above needs to be worked out carefully.
- The rho_vs_z fixes have NOT been corrected for. This version will likely yield nonsensical results, hence. To be fixed by a subsequent push that also cleans up the histogram plotting somewhat.
*Read again*
The sort uses rho from the 3 wireOffset cases in MakeVertex.C
The code assumes wireOffset=4.
Anywhere this matters, this version will break - caveat Emptor. Pushing here to plant a flag, but to also make sure the key changes are communicated across branches.
1) eloss calculations from pycatima folded in externally
2) stepladder correction moved into Armory
3) a(p,p) calculations live in their own function
4) first steps towards looking at one-wire dE/E signals, and one-wire anodes vs si-phi correlations
- Added calculations investigating QQQ-SX3 coincidences for a(p,p) scattering reaction analysis.
- General bookkeeping on naming conventions: made it QQQ_Events, SX3_Events, PC_Events.
- Pending a long cleanup.
1) Environment variables allowing flip and offset of anode wires
2) Environment variables allowing for selection of runs' start and stop time positions, to help with phi scanning runs
3) *fix histograms defined that incorporate step-ladder corrections applied to pcz, hard-coded currently in sx3cal/sx3z_vs_pcz/testmodel.h. Will need a better home in the future
4) EXFit2.C has the capability to now gainmatch all sx3 pads, and position along strip is still found from the central three pad edges. Treatment for (backE-missingfrontE) is being considered.
- pending goal, make the 'parameter set' for a particular data analysis uniquely drawn from a database or a collection of files.
- reduce human intervention when sorting
new file: ELoss/Eloss_17F
new file: ELoss/Eloss_27Al
new file: ELoss/Eloss_alpha
new file: ELoss/Eloss_p
modified: MakeVertex.C
deleted: MakeVertex.C:Zone.Identifier
deleted: MakeVertex.h:Zone.Identifier
new file: sx3cal/sx3cal/EXFit.C
new file: sx3cal/sx3cal/LRFit.C
new file: sx3cal/sx3cal/backgains.dat
new file: sx3cal/sx3cal/backgains.dat.unity
new file: sx3cal/sx3cal/frontgains.dat
new file: sx3cal/sx3cal/frontgains.dat.unity
new file: sx3cal/sx3cal/rightgains.dat
new file: sx3cal/sx3cal/rightgains.dat.unity
new file: Armory/ClassData.h
new file: Armory/Hit.h
modified: Armory/Makefile
new file: Armory/fsuReader.h
new file: Armory/macro.h
new file: BatchProcess.sh
modified: ProcessRun.sh
modified: process_mapped_run.sh
deleted: Armory/README.md
modified: Calibration.C Sudarsan pointed out that the gain match and calibration stages have the ring and wedge swapped, so I fixed that.
modified: ProcessRun.sh changes for running on laptop
modified: TrackRecon.C same inconsistency as in Calibration.C fixed
deleted: makeplots.C not used anymore
modified: mapping.h corrected teh mapping for the QQQs poptentially, need to confirm
modified: mapping_old.txt
modified: GainMatchSX3.C to make the calib a 2 factor calib insteade of inlcuding the fronts
modified: GainMatchSX3Front.C chcanged the readout for the new back calib