fCurrentDip(0),
fBeamEnergy(0),
fMagneticField(0),
+ fDiamondZ(0),
+ fDiamondSig2Z(0),
fPeriodNumber(0),
fRunNumber(0),
fRecoVersion(0),
fBeamType(""),
- fTriggerClasses(kNTriggerClasses)
+ fTriggerClasses(kNTriggerClasses),
+ fDetInDAQ(0),
+ fDetInReco(0)
{
for (Int_t i=0; i<2; i++) fDiamondXY[i]=0.;
fDiamondCovXY[0]=fDiamondCovXY[2]=3.*3.;
fDiamondCovXY[1]=0.;
fTriggerClasses.SetOwner(kTRUE);
+ fMeanBeamInt[0][0]=fMeanBeamInt[0][1]=fMeanBeamInt[1][0]=fMeanBeamInt[1][1]=-1;
for (Int_t m=0; m<kNPHOSMatrix; m++) fPHOSMatrix[m]=NULL;
for (Int_t sm=0; sm<kNEMCALMatrix; sm++) fEMCALMatrix[sm]=NULL;
}
fCurrentDip(0),
fBeamEnergy(0),
fMagneticField(esd.fMagneticField),
+ fDiamondZ(esd.fDiamondZ),
+ fDiamondSig2Z(esd.fDiamondSig2Z),
fPeriodNumber(esd.fPeriodNumber),
fRunNumber(esd.fRunNumber),
fRecoVersion(esd.fRecoVersion),
fBeamType(""),
- fTriggerClasses(TObjArray(kNTriggerClasses))
+ fTriggerClasses(TObjArray(kNTriggerClasses)),
+ fDetInDAQ(0),
+ fDetInReco(0)
{
// Copy constructor
for (Int_t i=0; i<2; i++) fDiamondXY[i]=esd.fDiamondXY[i];
else
fPHOSMatrix[m]=NULL;
}
-
+
+ for (int ib=2;ib--;) for (int it=2;it--;) fMeanBeamInt[ib][it] = esd.fMeanBeamInt[ib][it];
+
for(Int_t sm=0; sm<kNEMCALMatrix; sm++){
if(esd.fEMCALMatrix[sm])
fEMCALMatrix[sm]=new TGeoHMatrix(*(esd.fEMCALMatrix[sm])) ;
fPeriodNumber=esd.fPeriodNumber;
fRecoVersion=esd.fRecoVersion;
fMagneticField=esd.fMagneticField;
+ fDiamondZ=esd.fDiamondZ;
+ fDiamondSig2Z=esd.fDiamondSig2Z;
fBeamType = esd.fBeamType;
fCurrentL3 = esd.fCurrentL3;
fCurrentDip = esd.fCurrentDip;
if (str) fTriggerClasses.AddAt(new TNamed(*str),i);
}
+ fDetInDAQ = esd.fDetInDAQ;
+ fDetInReco = esd.fDetInReco;
+
+ for (int ib=2;ib--;) for (int it=2;it--;) fMeanBeamInt[ib][it] = esd.fMeanBeamInt[ib][it];
+
for(Int_t m=0; m<kNPHOSMatrix; m++){
if(esd.fPHOSMatrix[m])
fPHOSMatrix[m]=new TGeoHMatrix(*(esd.fPHOSMatrix[m])) ;
// set the interaction diamond
fDiamondXY[0]=vertex->GetXv();
fDiamondXY[1]=vertex->GetYv();
+ fDiamondZ=vertex->GetZv();
Double32_t cov[6];
vertex->GetCovMatrix(cov);
fDiamondCovXY[0]=cov[0];
fDiamondCovXY[1]=cov[1];
fDiamondCovXY[2]=cov[2];
+ fDiamondSig2Z=cov[5];
}
void AliESDRun::Print(const Option_t *) const
{
// Print some data members
- printf("Mean vertex in RUN %d: X=%.4f Y=%.4f cm\n",
- GetRunNumber(),GetDiamondX(),GetDiamondY());
+ printf("Mean vertex in RUN %d: X=%.4f Y=%.4f Z=%.4f cm\n",
+ GetRunNumber(),GetDiamondX(),GetDiamondY(),GetDiamondZ());
printf("Beam Type: %s, Energy: %.1f GeV\n",fBeamType.IsNull() ? "N/A":fBeamType.Data(),fBeamEnergy);
printf("Magnetic field in IP= %f T | Currents: L3:%+.1f Dipole:%+.1f %s\n",
GetMagneticField(),fCurrentL3,fCurrentDip,TestBit(kUniformBMap) ? "(Uniform)":"");
TNamed *str = (TNamed *)((fTriggerClasses).At(i));
if (str) printf("%s ",str->GetName());
}
+ printf("Mean intenstity for interacting : beam1:%+.3e beam2:%+.3e\n",fMeanBeamInt[0][0],fMeanBeamInt[1][0]);
+ printf("Mean intenstity for non-intecting : beam1:%+.3e beam2:%+.3e\n",fMeanBeamInt[0][1],fMeanBeamInt[1][1]);
printf("\n");
}
fCurrentDip = 0;
fBeamEnergy = 0;
fBeamType = "";
- ResetBit(kBInfoStored|kUniformBMap);
+ ResetBit(kBInfoStored|kUniformBMap|kConvSqrtSHalfGeV);
for (Int_t i=0; i<2; i++) fDiamondXY[i]=0.;
fDiamondCovXY[0]=fDiamondCovXY[2]=3.*3.;
fDiamondCovXY[1]=0.;
+ fDiamondZ=0.;
+ fDiamondSig2Z=10.*10.;
fTriggerClasses.Clear();
+ fDetInDAQ = 0;
+ fDetInReco = 0;
}
//______________________________________________________________________________
}
//
AliMagF* fld = AliMagF::CreateFieldMap(fCurrentL3,fCurrentDip,AliMagF::kConvLHC,
- TestBit(kUniformBMap),fBeamEnergy,fBeamType.Data());
+ TestBit(kUniformBMap), GetBeamEnergy(), GetBeamType());
if (fld) {
TGeoGlobalMagField::Instance()->SetField( fld );
TGeoGlobalMagField::Instance()->Lock();