TABLE OF CONTENTS
/InvMassesAnalysis [ Modules ]
NAME
module InvMassesAnalysis
PURPOSE
Provides routines to produce histograms of the invariant mass distributions of pi+N,pi+pi,N+N pairs in the final particle vector.
Used by HiPionAnalysis and HiLeptonAnalysis
InvMassesAnalysis/InvMasses_INIT [ Subroutines ]
[ Top ] [ InvMassesAnalysis ] [ Subroutines ]
NAME
subroutine InvMasses_INIT
PURPOSE
Initialize the histograms to be used in this module
InvMassesAnalysis/InvMasses_Write [ Subroutines ]
[ Top ] [ InvMassesAnalysis ] [ Subroutines ]
NAME
subroutine InvMasses_Write (mul)
PURPOSE
Write out the histograms
INPUTS
- real, intent(in) :: mul -- multiplicative factor for writing histograms
InvMassesAnalysis/partClass [ Functions ]
[ Top ] [ InvMassesAnalysis ] [ Functions ]
NAME
integer function partClass(ID,IZ,anti)
PURPOSE
Put a particle in the classes: "pi-","pi0","pi+","n ","p "
InvMassesAnalysis/InvMasses_FillEvent [ Subroutines ]
[ Top ] [ InvMassesAnalysis ] [ Subroutines ]
NAME
subroutine InvMasses_FillEvent(L)
PURPOSE
Given one event, this routine calculates all possible invariant masses and fills the corresponding histograms.
INPUTS
- type(tAnaEvent) :: L -- the event to analyse
NOTES
- At the moment this routine does not respect the acceptance of any detector. We would have to find a way to give these weights as an additional argument to the routine. (A direct call to some routine, as done before directly in the module HiLeptonAnalysis, is not appropriate.)
It could e.g. be done as for 'FindRho0': allocate(Probs(EventArr(i,j)%particleList%nEntries)) pNode => EventArr(i,j)%particleList%first Probs = 0 ii = 1 do while (ASSOCIATED(pNode)) call checkCuts(pNode%V,nu,Q2,Ebeam,phi_Lepton,AccFlag,AccWeight) Probs(ii) = AccWeight pNode=>pNode%next ii=ii+1 end do