diff --git a/algo/ca/core/tracking/CaCloneMerger.cxx b/algo/ca/core/tracking/CaCloneMerger.cxx index 5755539265d616347a68af0b53e933344ed26829..561a0f5ea8dfab75ef482fe7434000ff09e22028 100644 --- a/algo/ca/core/tracking/CaCloneMerger.cxx +++ b/algo/ca/core/tracking/CaCloneMerger.cxx @@ -22,7 +22,7 @@ using namespace cbm::algo; // --------------------------------------------------------------------------------------------------------------------- // -CloneMerger::CloneMerger(const ca::Parameters<fvec>& pars, const float mass) : fParameters(pars), fDefaultMass(mass) {} +CloneMerger::CloneMerger(const ca::Parameters<fvec>& pars, const fscal mass) : fParameters(pars), fDefaultMass(mass) {} // --------------------------------------------------------------------------------------------------------------------- // @@ -40,7 +40,7 @@ void CloneMerger::Exec(const ca::InputData& input, WindowData& wData) Vector<ca::HitIndex_t>& firstHit = fTrackFirstHit; Vector<ca::HitIndex_t>& lastHit = fTrackLastHit; Vector<unsigned short>& neighbour = fTrackNeighbour; - Vector<float>& trackChi2 = fTrackChi2; + Vector<fscal>& trackChi2 = fTrackChi2; Vector<char>& isStored = fTrackIsStored; Vector<char>& isDownstreamNeighbour = fTrackIsDownstreamNeighbour; diff --git a/algo/ca/core/tracking/CaCloneMerger.h b/algo/ca/core/tracking/CaCloneMerger.h index d063c32f08f787d07581571fd627d8b6a89ffdf3..9bfce4145a0b754c772b7a9c0fb4d68bbe829028 100644 --- a/algo/ca/core/tracking/CaCloneMerger.h +++ b/algo/ca/core/tracking/CaCloneMerger.h @@ -33,7 +33,7 @@ namespace cbm::algo::ca class CloneMerger { public: /// Default constructor - CloneMerger(const ca::Parameters<fvec>& pars, const float mass); + CloneMerger(const ca::Parameters<fvec>& pars, const fscal mass); /// Destructor ~CloneMerger(); @@ -113,7 +113,7 @@ namespace cbm::algo::ca Vector<unsigned short> fTrackNeighbour{"CloneMerger::fTrackNeighbour"}; /// Chi2 value of the track merging procedure - Vector<float> fTrackChi2{"CloneMerger::fTrackChi2"}; + Vector<fscal> fTrackChi2{"CloneMerger::fTrackChi2"}; /// Flag: is the given track already stored to the output Vector<char> fTrackIsStored{"CloneMerger::fTrackIsStored"}; @@ -126,7 +126,7 @@ namespace cbm::algo::ca Vector<ca::HitIndex_t> fRecoHitsNew{"CaCloneMerger::fRecoHitsNew"}; ///< vector of track hits after the merge const Parameters<fvec>& fParameters; ///< Object of Framework parameters class - float fDefaultMass{constants::phys::MuonMass}; ///< mass of the propagated particle [GeV/c2] + fscal fDefaultMass{constants::phys::MuonMass}; ///< mass of the propagated particle [GeV/c2] }; } // namespace cbm::algo::ca diff --git a/algo/ca/core/tracking/CaFramework.h b/algo/ca/core/tracking/CaFramework.h index 4b20fae8e2afb43425aecfea0877b768269fbd59..d9f10319dd327114854a9a1c56fee8ef8e9f2ca2 100644 --- a/algo/ca/core/tracking/CaFramework.h +++ b/algo/ca/core/tracking/CaFramework.h @@ -117,15 +117,15 @@ namespace cbm::algo::ca /// /// The function is used during the reconstruction in order to estimate the multiple scattering and energy loss /// \param mass Default particle mass - void SetDefaultParticleMass(float mass) { fDefaultMass = mass; } + void SetDefaultParticleMass(fscal mass) { fDefaultMass = mass; } /// Gets default particle mass /// \return particle mass - float GetDefaultParticleMass() const { return fDefaultMass; } + fscal GetDefaultParticleMass() const { return fDefaultMass; } /// Gets default particle mass squared /// \return particle mass squared - float GetDefaultParticleMass2() const { return fDefaultMass * fDefaultMass; } + fscal GetDefaultParticleMass2() const { return fDefaultMass * fDefaultMass; } /// \brief Gets timeslice header const TimesliceHeader& GetTsHeader() const { return fTsHeader; } @@ -190,7 +190,7 @@ namespace cbm::algo::ca KfFramework_t fKf; ///< KF framework instance int fNstationsBeforePipe{0}; ///< number of stations before pipe (MVD stations in CBM) - float fDefaultMass{constants::phys::MuonMass}; ///< mass of the propagated particle [GeV/c2] + fscal fDefaultMass{constants::phys::MuonMass}; ///< mass of the propagated particle [GeV/c2] TimesliceHeader fTsHeader; ///< current timeslice header // *************************** diff --git a/algo/ca/core/tracking/CaTrackExtender.cxx b/algo/ca/core/tracking/CaTrackExtender.cxx index a7070603b41e127fb327c1ed44a9d40ce40e0cda..07b0df3fe93f95857076d6142a8fb277bed21a20 100644 --- a/algo/ca/core/tracking/CaTrackExtender.cxx +++ b/algo/ca/core/tracking/CaTrackExtender.cxx @@ -24,7 +24,7 @@ using namespace cbm::algo::ca; // --------------------------------------------------------------------------------------------------------------------- // -TrackExtender::TrackExtender(const ca::Parameters<fvec>& pars, const float mass) : fParameters(pars), fDefaultMass(mass) +TrackExtender::TrackExtender(const ca::Parameters<fvec>& pars, const fscal mass) : fParameters(pars), fDefaultMass(mass) { } @@ -198,7 +198,7 @@ void TrackExtender::FindMoreHits(ca::Branch& t, TrackParamV& Tout, const bool up if (ista2 == frWData->CurrentIteration()->GetFirstStationIndex()) ista = ista2 + step; - const float pickGather = frWData->CurrentIteration()->GetPickGather(); + const fscal pickGather = frWData->CurrentIteration()->GetPickGather(); const fvec pickGather2 = pickGather * pickGather; const fvec maxDZ = frWData->CurrentIteration()->GetMaxDZ(); for (; (ista < fParameters.GetNstationsActive()) && (ista >= 0); ista += step) { // CHECKME why ista2? diff --git a/algo/ca/core/tracking/CaTrackExtender.h b/algo/ca/core/tracking/CaTrackExtender.h index 875db7cb3546e241af0df1c8187344f9ece34664..8936a86b9e212fd9747521a41a17fef1b85915cb 100644 --- a/algo/ca/core/tracking/CaTrackExtender.h +++ b/algo/ca/core/tracking/CaTrackExtender.h @@ -34,7 +34,7 @@ namespace cbm::algo::ca class TrackExtender { public: /// Default constructor - TrackExtender(const ca::Parameters<fvec>& pars, const float mass); + TrackExtender(const ca::Parameters<fvec>& pars, const fscal mass); /// Destructor ~TrackExtender(); @@ -92,7 +92,7 @@ namespace cbm::algo::ca const Parameters<fvec>& fParameters; ///< Object of Framework parameters class const InputData* fInputData; ///< Tracking input data WindowData* frWData; - float fDefaultMass{constants::phys::MuonMass}; ///< mass of the propagated particle [GeV/c2] + fscal fDefaultMass{constants::phys::MuonMass}; ///< mass of the propagated particle [GeV/c2] }; } // namespace cbm::algo::ca diff --git a/algo/ca/core/tracking/CaTrackFinder.cxx b/algo/ca/core/tracking/CaTrackFinder.cxx index 6c19e6c26ff65a208cc6c540cbd0cef68a53cafa..75c902a8a0c368fae53df9291eee4b15a05ce736 100644 --- a/algo/ca/core/tracking/CaTrackFinder.cxx +++ b/algo/ca/core/tracking/CaTrackFinder.cxx @@ -43,7 +43,7 @@ using constants::phys::SpeedOfLightInvD; // --------------------------------------------------------------------------------------------------------------------- // -TrackFinder::TrackFinder(const ca::Parameters<fvec>& pars, const float mass, const ca::TrackingMode& mode, +TrackFinder::TrackFinder(const ca::Parameters<fvec>& pars, const fscal mass, const ca::TrackingMode& mode, TrackingMonitorData& monitorData, int nThreads, double& recoTime) : fParameters(pars) , fDefaultMass(mass) @@ -202,11 +202,11 @@ TrackFinder::Output_t TrackFinder::FindTracks(const InputData& input, TimesliceH nWindows = 1; } - int nWindowsThread = nWindows / fNofThreads; - float windowDelta = fWindowLength - fWindowOverlap - fWindowMargin; + // int nWindowsThread = nWindows / fNofThreads; + fscal windowDelta = fWindowLength - fWindowOverlap - fWindowMargin; //LOG(info) << "CA: estimated number of time windows: " << nWindows; - std::vector<float> vWindowStartThread(fNofThreads), vWindowEndThread(fNofThreads); + std::vector<fscal> vWindowStartThread(fNofThreads), vWindowEndThread(fNofThreads); vWindowStartThread[0] = fStatTsStart; { // Estimation of number of hits in time windows @@ -350,7 +350,7 @@ TrackFinder::Output_t TrackFinder::FindTracks(const InputData& input, TimesliceH // --------------------------------------------------------------------------------------------------------------------- // -void TrackFinder::FindTracksThread(const InputData& input, int iThread, float& windowStart, float& windowEnd, +void TrackFinder::FindTracksThread(const InputData& input, int iThread, fscal& windowStart, fscal& windowEnd, int& statNwindows, int& statNhitsProcessed) { //std::stringstream filename; diff --git a/algo/ca/core/tracking/CaTrackFinder.h b/algo/ca/core/tracking/CaTrackFinder.h index 7f270d633bb6971a6f09c1e248ce6057314b2ef2..ce3c3a942c98833f7bab26b4bc824fb1460895e3 100644 --- a/algo/ca/core/tracking/CaTrackFinder.h +++ b/algo/ca/core/tracking/CaTrackFinder.h @@ -36,7 +36,7 @@ namespace cbm::algo::ca typedef std::pair<Vector<Track>, Vector<ca::HitIndex_t>> Output_t; /// Default constructora - TrackFinder(const ca::Parameters<fvec>& pars, const float mass, const ca::TrackingMode& mode, + TrackFinder(const ca::Parameters<fvec>& pars, const fscal mass, const ca::TrackingMode& mode, TrackingMonitorData& monitorData, int nThreads, double& recoTime); /// Destructor ~TrackFinder() = default; @@ -63,7 +63,7 @@ namespace cbm::algo::ca private: // ------------------------------- // Private methods - void FindTracksThread(const InputData& input, int iThread, float& windowStart, float& windowEnd, int& statNwindows, + void FindTracksThread(const InputData& input, int iThread, fscal& windowStart, fscal& windowEnd, int& statNwindows, int& statNhitsProcessed); // bool checkTripletMatch(const ca::Triplet& l, const ca::Triplet& r, fscal& dchi2) const; @@ -73,7 +73,7 @@ namespace cbm::algo::ca Vector<CaHitTimeInfo> fHitTimeInfo; const Parameters<fvec>& fParameters; ///< Object of Framework parameters class - float fDefaultMass{constants::phys::MuonMass}; ///< mass of the propagated particle [GeV/c2] + fscal fDefaultMass{constants::phys::MuonMass}; ///< mass of the propagated particle [GeV/c2] ca::TrackingMode fTrackingMode; TrackingMonitorData& fMonitorData; ///< Tracking monitor data (statistics per call) @@ -87,12 +87,12 @@ namespace cbm::algo::ca std::vector<Vector<Track>> fvRecoTracks; ///< reconstructed tracks std::vector<Vector<HitIndex_t>> fvRecoHitIndices; ///< packed hits of reconstructed tracks - float fWindowLength = 0.; ///< Time window length [ns] - float fWindowOverlap = 15.; ///< Time window overlap [ns] - float fWindowMargin = 5.; ///< Time window margin [ns] (TODO: Why cannot we include margin into the overlap?) + fscal fWindowLength = 0.; ///< Time window length [ns] + fscal fWindowOverlap = 15.; ///< Time window overlap [ns] + fscal fWindowMargin = 5.; ///< Time window margin [ns] (TODO: Why cannot we include margin into the overlap?) - float fStatTsStart = 0.; - float fStatTsEnd = 0.; + fscal fStatTsStart = 0.; + fscal fStatTsEnd = 0.; int fStatNhitsTotal = 0; }; diff --git a/algo/ca/core/tracking/CaTrackFinderWindow.cxx b/algo/ca/core/tracking/CaTrackFinderWindow.cxx index 4fdb1f2ab8469d09fa52f58a01584aaf33c55dfc..5f0d81e7d9671b59c3ce21d0c17f088ac72c0afe 100644 --- a/algo/ca/core/tracking/CaTrackFinderWindow.cxx +++ b/algo/ca/core/tracking/CaTrackFinderWindow.cxx @@ -46,7 +46,7 @@ using namespace cbm::algo::ca; // --------------------------------------------------------------------------------------------------------------------- // -TrackFinderWindow::TrackFinderWindow(const ca::Parameters<fvec>& pars, const float mass, const ca::TrackingMode& mode, +TrackFinderWindow::TrackFinderWindow(const ca::Parameters<fvec>& pars, const fscal mass, const ca::TrackingMode& mode, ca::TrackingMonitorData& monitorData) : fParameters(pars) , fDefaultMass(mass) @@ -81,7 +81,7 @@ bool TrackFinderWindow::checkTripletMatch(const ca::Triplet& l, const ca::Triple if (r.GetMSta() != l.GetRSta()) return false; if (r.GetLSta() != l.GetMSta()) return false; - const float tripletLinkChi2 = wData.CurrentIteration()->GetTripletLinkChi2(); + const fscal tripletLinkChi2 = wData.CurrentIteration()->GetTripletLinkChi2(); if (r.IsMomentumFitted()) { assert(l.IsMomentumFitted()); @@ -210,7 +210,7 @@ void TrackFinderWindow::CaTrackFinderSlice(const ca::InputData& input, WindowDat const int nBins2D = 1 + nSliceHits; // TODO: SG: the coefficients should be removed - const fscal scale = fParameters.GetStation(iS).GetZ<float>() - fParameters.GetTargetPositionZ()[0]; + const fscal scale = fParameters.GetStation(iS).GetZ<fscal>() - fParameters.GetTargetPositionZ()[0]; const fscal maxScale = 0.3 * scale; const fscal minScale = 0.01 * scale; diff --git a/algo/ca/core/tracking/CaTrackFinderWindow.h b/algo/ca/core/tracking/CaTrackFinderWindow.h index 0bb4b0e90577dfdf716ffc90ccddc5f36e62289b..e072fb8677f7963519dfd06fabfd39ce6ec68f1b 100644 --- a/algo/ca/core/tracking/CaTrackFinderWindow.h +++ b/algo/ca/core/tracking/CaTrackFinderWindow.h @@ -38,7 +38,7 @@ namespace cbm::algo::ca class TrackFinderWindow { public: /// Default constructor - TrackFinderWindow(const ca::Parameters<fvec>& pars, const float mass, const ca::TrackingMode& mode, + TrackFinderWindow(const ca::Parameters<fvec>& pars, const fscal mass, const ca::TrackingMode& mode, ca::TrackingMonitorData& monitorData); /// Destructor ~TrackFinderWindow(); @@ -105,7 +105,7 @@ namespace cbm::algo::ca static constexpr bool fDebug = false; // print debug info const Parameters<fvec>& fParameters; ///< Object of Framework parameters class - float fDefaultMass{constants::phys::MuonMass}; ///< mass of the propagated particle [GeV/c2] + fscal fDefaultMass{constants::phys::MuonMass}; ///< mass of the propagated particle [GeV/c2] ca::TrackingMode fTrackingMode; TrackingMonitorData& frMonitorData; ///< Reference to monitor data diff --git a/algo/ca/core/tracking/CaTrackFit.cxx b/algo/ca/core/tracking/CaTrackFit.cxx index e0118834efd56e211eeef9cb02811533d4608072..af0745e0f3bb7501822ee6d0aeef0d70189b532c 100644 --- a/algo/ca/core/tracking/CaTrackFit.cxx +++ b/algo/ca/core/tracking/CaTrackFit.cxx @@ -1068,7 +1068,7 @@ namespace cbm::algo::ca } - void TrackFit::EnergyLossCorrection(int atomicZ, float atomicA, float rho, float radLen, fvec radThick, + void TrackFit::EnergyLossCorrection(int atomicZ, fscal atomicA, fscal rho, fscal radLen, fvec radThick, fvec upstreamDirection) { cnst qp2cut(1. / (10. * 10.)); // 10 GeV cut @@ -1220,8 +1220,8 @@ namespace cbm::algo::ca cnst kp3 = 173e-9f; cnst kp4 = 0.49848f; - constexpr float mK = 0.307075e-3f; // [GeV*cm^2/g] - constexpr float _2me = 1.022e-3f; // [GeV/c^2] + constexpr fscal mK = 0.307075e-3f; // [GeV*cm^2/g] + constexpr fscal _2me = 1.022e-3f; // [GeV/c^2] cnst rho = kp0; cnst x0 = kp1 * 2.303f; cnst x1 = kp2 * 2.303f; @@ -1266,8 +1266,8 @@ namespace cbm::algo::ca // cnst &kp3 = 173e-9f; // cnst &kp4 = 0.49848f; - constexpr float mK = 0.307075e-3f; // [GeV*cm^2/g] - constexpr float _2me = 1.022e-3f; // [GeV/c^2] + constexpr fscal mK = 0.307075e-3f; // [GeV*cm^2/g] + constexpr fscal _2me = 1.022e-3f; // [GeV/c^2] fvec rho = kp0; cnst x0 = kp1 * 2.303f; cnst x1 = kp2 * 2.303f; diff --git a/algo/ca/core/tracking/CaTrackFit.h b/algo/ca/core/tracking/CaTrackFit.h index f0f1b12924dd861a20757161901b335283b82b8a..8105e31b2ea6e2e2c3076332e57f371ed57e5777 100644 --- a/algo/ca/core/tracking/CaTrackFit.h +++ b/algo/ca/core/tracking/CaTrackFit.h @@ -143,7 +143,7 @@ namespace cbm::algo::ca /// \param radLen - radiation length of the material /// \param radThick - radiation length of the material /// \param upstreamDirection - direction of the track (1 or 0) - void EnergyLossCorrection(int atomicZ, float atomicA, float rho, float radLen, fvec radThick, + void EnergyLossCorrection(int atomicZ, fscal atomicA, fscal rho, fscal radLen, fvec radThick, fvec upstreamDirection); diff --git a/algo/ca/core/tracking/CaTrackFitter.cxx b/algo/ca/core/tracking/CaTrackFitter.cxx index 00a599fb12862e5e9c28661dab8f55d09a4efcab..29ca0e61dd293c77fea4d36300146c3e64a34f2f 100644 --- a/algo/ca/core/tracking/CaTrackFitter.cxx +++ b/algo/ca/core/tracking/CaTrackFitter.cxx @@ -20,7 +20,7 @@ using namespace cbm::algo; // --------------------------------------------------------------------------------------------------------------------- // -TrackFitter::TrackFitter(const ca::Parameters<fvec>& pars, const float mass, const ca::TrackingMode& mode) +TrackFitter::TrackFitter(const ca::Parameters<fvec>& pars, const fscal mass, const ca::TrackingMode& mode) : fParameters(pars) , fDefaultMass(mass) , fTrackingMode(mode) diff --git a/algo/ca/core/tracking/CaTrackFitter.h b/algo/ca/core/tracking/CaTrackFitter.h index d45271690884770956adee18b08b2c5c7f04d439..01bfd1e6e90438fe9f099a896ba4819304818f78 100644 --- a/algo/ca/core/tracking/CaTrackFitter.h +++ b/algo/ca/core/tracking/CaTrackFitter.h @@ -32,7 +32,7 @@ namespace cbm::algo::ca class TrackFitter { public: /// Default constructor - TrackFitter(const ca::Parameters<fvec>& pars, const float mass, const ca::TrackingMode& mode); + TrackFitter(const ca::Parameters<fvec>& pars, const fscal mass, const ca::TrackingMode& mode); /// Destructor ~TrackFitter(); @@ -58,7 +58,7 @@ namespace cbm::algo::ca /// Data members const Parameters<fvec>& fParameters; ///< Object of Framework parameters class - float fDefaultMass{constants::phys::MuonMass}; ///< mass of the propagated particle [GeV/c2] + fscal fDefaultMass{constants::phys::MuonMass}; ///< mass of the propagated particle [GeV/c2] ca::TrackingMode fTrackingMode; }; diff --git a/algo/ca/core/tracking/CaTripletConstructor.cxx b/algo/ca/core/tracking/CaTripletConstructor.cxx index f07fe9653ba6d7c1c7b90c18d0ba2d62857672a5..b77b5c8af40cae8410e6c1c905c291bbfbd12583 100644 --- a/algo/ca/core/tracking/CaTripletConstructor.cxx +++ b/algo/ca/core/tracking/CaTripletConstructor.cxx @@ -20,7 +20,7 @@ using namespace cbm::algo::ca; TripletConstructor::TripletConstructor(const ca::Parameters<fvec>& pars, const ca::InputData& input, WindowData& wData, - const float mass, const ca::TrackingMode& mode) + const fscal mass, const ca::TrackingMode& mode) : fParameters(pars) , fInputData(input) , frWData(wData) @@ -523,7 +523,7 @@ void TripletConstructor::FitTriplets() // repeat several times in order to improve the precision for (int iiter = 0; iiter < nIterations; ++iiter) { - auto fitTrack = [&](int startIdx, int endIdx, int step, float energyLossSign) { + auto fitTrack = [&](int startIdx, int endIdx, int step, fscal energyLossSign) { fit.SetQp0(T.Qp()); fit.Qp0()(fit.Qp0() > maxQp) = maxQp; fit.Qp0()(fit.Qp0() < -maxQp) = -maxQp; @@ -591,8 +591,8 @@ void TripletConstructor::FitTriplets() /* cbm::ca::tools::Debugger::Instance().FillNtuple( "triplets", mctr.iEvent, frAlgo.fCurrentIterationIndex, ih0, h0.X(), h0.Y(), h0.Z(), ih1, h1.X(), h1.Y(), - h1.Z(), ih2, h2.X(), h2.Y(), h2.Z(), mc1, fIstaL, mctr.p, mctr.x, mctr.y, mctr.z, (float) T.GetChiSq()[0], - (float) T.Ndf()[0], (float) T.ChiSqTime()[0], (float) T.NdfTime()[0]); + h1.Z(), ih2, h2.X(), h2.Y(), h2.Z(), mc1, fIstaL, mctr.p, mctr.x, mctr.y, mctr.z, (fscal) T.GetChiSq()[0], + (fscal) T.Ndf()[0], (fscal) T.ChiSqTime()[0], (fscal) T.NdfTime()[0]); */ } } @@ -613,7 +613,7 @@ void TripletConstructor::StoreTriplets() fTriplets.clear(); fTriplets.reserve(n3); - const float tripletFinalChi2Cut = frWData.CurrentIteration()->GetTripletFinalChi2Cut(); + const fscal tripletFinalChi2Cut = frWData.CurrentIteration()->GetTripletFinalChi2Cut(); for (Tindex i3 = 0; i3 < n3; ++i3) { TrackParamV& T3 = fTracks_3[i3]; diff --git a/algo/ca/core/tracking/CaTripletConstructor.h b/algo/ca/core/tracking/CaTripletConstructor.h index 2c39596c4b1ac1cc4db9f909e8e5528eb6cbc341..a6d160681b13dffcadcd7ca87f40fffb22907d74 100644 --- a/algo/ca/core/tracking/CaTripletConstructor.h +++ b/algo/ca/core/tracking/CaTripletConstructor.h @@ -35,7 +35,7 @@ namespace cbm::algo::ca /// Constructor /// \param nThreads Number of threads for multi-threaded mode TripletConstructor(const ca::Parameters<fvec>& pars, const ca::InputData& input, WindowData& wData, - const float mass, const ca::TrackingMode& mode); + const fscal mass, const ca::TrackingMode& mode); /// Copy constructor TripletConstructor(const TripletConstructor&) = delete; @@ -85,7 +85,7 @@ namespace cbm::algo::ca const Parameters<fvec>& fParameters; ///< Object of Framework parameters class const InputData& fInputData; ///< Tracking input data WindowData& frWData; - float fDefaultMass{constants::phys::MuonMass}; ///< mass of the propagated particle [GeV/c2] + fscal fDefaultMass{constants::phys::MuonMass}; ///< mass of the propagated particle [GeV/c2] ca::TrackingMode fTrackingMode; bool fIsTargetField{false}; ///< is the magnetic field present at the target