CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
CurvilinearLorentzForce.h
Go to the documentation of this file.
1 #ifndef CurvilinearLorentzForce_H
2 #define CurvilinearLorentzForce_H
3 
5 #include "RKDerivative.h"
6 
8 
9 template <typename T, int N>
10 class dso_internal CurvilinearLorentzForce GCC11_FINAL : public RKDerivative<T,N> {
11 public:
12 
14  typedef typename Base::Scalar Scalar;
15  typedef typename Base::Vector Vector;
16 
17  CurvilinearLorentzForce( const RKLocalFieldProvider& field) : theField(field) {}
18 
19  virtual Vector operator()( Scalar z, const Vector& state) const;
20 
21 private:
22 
23  const RKLocalFieldProvider& theField;
24 
25 };
26 
27 #include "TrackPropagation/RungeKutta/src/CurvilinearLorentzForce.icc"
28 
29 #endif
CurvilinearLorentzForce(const RKLocalFieldProvider &field)
double Scalar
Definition: Definitions.h:27
ROOT::Math::Plane3D::Vector Vector
Definition: EcalHitMaker.cc:29
float float float z
RKDerivative< T, N > Base
#define dso_internal
Definition: Visibility.h:13
Base class for derivative calculation.
Definition: RKDerivative.h:13
virtual Vector operator()(Scalar startPar, const Vector &startState) const =0
Unlimited (trivial) bounds.