// about the suitability of this software for any purpose. It is
// provided "as is" without express or implied warranty.
//========================================================================
-//
+//
// Class AliEMCALTrack
// ---------------------
// A class implementing a track which is propagated to EMCAL and
#include "TVector3.h"
#include "AliLog.h"
-#include "AliTracker.h"
#include "AliESDtrack.h"
#include "AliEMCALTrack.h"
// Sets to meaningless values the indexes corresponding to
// ESD seed track and matched cluster.
//
+
}
//
//------------------------------------------------------------------------------
// parameters are chosen according to static variable fUseOuterParams
Double_t alpha, x, params[5], cov[15];
if (fgUseOuterParams) {
- t.GetOuterExternalParameters(alpha, x, params);
- t.GetOuterExternalCovariance(cov);
+ if(t.GetOuterParam()){
+ t.GetOuterExternalParameters(alpha, x, params);
+ t.GetOuterExternalCovariance(cov);
+ }
+ else{ // no outer param available leave the default as is
+ return;
+ }
}
else {
alpha = t.GetAlpha();
fSeedIndex = t.fSeedIndex;
fSeedLabel = t.fSeedLabel;
-
return *this;
}
//
//
//------------------------------------------------------------------------------
//
-Double_t AliEMCALTrack::GetBz() const
-{
- //
- // Returns Z-component of the magnetic field in kG.
- // In case it B is not constant, its value is returned
- // at the current position of the track (local X,Y,Z)
- //
-
- // if magnetic field is constant...
- if (AliTracker::UniformField()) return AliTracker::GetBz();
-
- // ...else:
- Double_t r[3];
- GetXYZ(r);
- return AliTracker::GetBz(r);
-}
-//
-//------------------------------------------------------------------------------
-//
Bool_t AliEMCALTrack::PropagateTo(Double_t xk, Double_t d, Double_t x0)
{
//
//
Bool_t AliEMCALTrack::SimplePropagation(Double_t xk, Double_t d, Double_t x0)
{
- //
- // Recall base class method for track propagation.
- //
-
- Double_t field = GetBz();
-
- // propagation...
- if (!AliExternalTrackParam::PropagateTo(xk, field)) return kFALSE;
+ //
+ // Recall base class method for track propagation.
+ //
+
+ Double_t field[3];
+
+ GetBxByBz(field);
- // EL correction is computed only if requested...
- if (!fgCorrectForEL) return kTRUE;
- return AliExternalTrackParam::CorrectForMaterial(d, x0, GetMass());
+ // propagation...
+ if (!AliExternalTrackParam::PropagateToBxByBz(xk, field)) return kFALSE;
+
+ // EL correction is computed only if requested...
+ if (!fgCorrectForEL) return kTRUE;
+ return AliExternalTrackParam::CorrectForMeanMaterial(d, x0, GetMass());
}