CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Member Functions | Private Attributes
cms::FastMuPropagator Class Reference

#include <FastMuPropagator.h>

Inheritance diagram for cms::FastMuPropagator:
Propagator

Public Member Functions

virtual FastMuPropagatorclone () const
 
 FastMuPropagator (const MagneticField *mf, PropagationDirection dir=alongMomentum)
 
 FastMuPropagator (const MagneticField *mf, FmpConst *fmp, PropagationDirection dir=alongMomentum)
 
virtual const MagneticFieldmagneticField () const
 
TrajectoryStateOnSurface propagate (const FreeTrajectoryState &fts, const Cylinder &bound) const
 
TrajectoryStateOnSurface propagate (const FreeTrajectoryState &fts, const Plane &) const
 
TrajectoryStateOnSurface propagate (const FreeTrajectoryState &fts, const Surface &surface) const
 
virtual std::pair
< TrajectoryStateOnSurface,
double > 
propagateWithPath (const FreeTrajectoryState &state, const Plane &bc) const
 
virtual std::pair
< TrajectoryStateOnSurface,
double > 
propagateWithPath (const FreeTrajectoryState &state, const Cylinder &bc) const
 
virtual ~FastMuPropagator ()
 
- Public Member Functions inherited from Propagator
virtual TrajectoryStateOnSurface propagate (const TrajectoryStateOnSurface &, const Surface &) const
 
virtual TrajectoryStateOnSurface propagate (const TrajectoryStateOnSurface &, const Plane &) const
 
virtual TrajectoryStateOnSurface propagate (const TrajectoryStateOnSurface &, const Cylinder &) const
 
virtual FreeTrajectoryState propagate (const FreeTrajectoryState &, const reco::BeamSpot &) const
 
virtual std::pair
< TrajectoryStateOnSurface,
double > 
propagateWithPath (const FreeTrajectoryState &, const Surface &) const
 
virtual std::pair
< TrajectoryStateOnSurface,
double > 
propagateWithPath (const TrajectoryStateOnSurface &, const Surface &) const
 
virtual std::pair
< TrajectoryStateOnSurface,
double > 
propagateWithPath (const TrajectoryStateOnSurface &, const Plane &) const
 
virtual std::pair
< TrajectoryStateOnSurface,
double > 
propagateWithPath (const TrajectoryStateOnSurface &, const Cylinder &) const
 
virtual std::pair
< FreeTrajectoryState, double > 
propagateWithPath (const FreeTrajectoryState &, const GlobalPoint &, const GlobalPoint &) const
 
virtual PropagationDirection propagationDirection () const
 
 Propagator (PropagationDirection dir=alongMomentum)
 
virtual bool setMaxDirectionChange (float phiMax)
 
virtual void setPropagationDirection (PropagationDirection dir) const
 
virtual ~Propagator ()
 

Private Member Functions

bool checkfts (const FreeTrajectoryState &fts) const
 

Private Attributes

const MagneticFieldfield
 
FmpConsttheFmpConst
 

Detailed Description

Definition at line 18 of file FastMuPropagator.h.

Constructor & Destructor Documentation

cms::FastMuPropagator::FastMuPropagator ( const MagneticField mf,
PropagationDirection  dir = alongMomentum 
)
inline

Definition at line 20 of file FastMuPropagator.h.

References field, and theFmpConst.

Referenced by clone().

21  {theFmpConst=new FmpConst(); field = mf;}
const MagneticField * field
cms::FastMuPropagator::FastMuPropagator ( const MagneticField mf,
FmpConst fmp,
PropagationDirection  dir = alongMomentum 
)
inline

Definition at line 23 of file FastMuPropagator.h.

References field, and theFmpConst.

24  {theFmpConst=fmp; field = mf;}
const MagneticField * field
virtual cms::FastMuPropagator::~FastMuPropagator ( )
inlinevirtual

Definition at line 28 of file FastMuPropagator.h.

28  {
29  // delete theFmpConst;
30  }

Member Function Documentation

bool cms::FastMuPropagator::checkfts ( const FreeTrajectoryState fts) const
private

Definition at line 283 of file FastMuPropagator.cc.

References abs, CastorDataFrameFilter_impl::check(), gather_cfg::cout, FreeTrajectoryState::parameters(), PV3DBase< T, PVType, FrameType >::perp(), GlobalTrajectoryParameters::position(), alignCSCRings::r, detailsBasic3DVector::z, and PV3DBase< T, PVType, FrameType >::z().

283  {
284  bool check=true;
285  double z=fts.parameters().position().z();
286  double r=fts.parameters().position().perp();
287  float mubarrelrad=theFmpConst->mubarrelrad;
288  float muforwardrad=theFmpConst->muforwardrad;
289  float muoffset=theFmpConst->muoffset;
290  mubarrelrad=350.; muforwardrad=400.;
291 #ifdef PROPAGATOR_DB
292  cout<<"checkfts::r,z="<<r<<" "<<z<<" "<<check<<endl;
293 #endif
294  if(r<mubarrelrad-muoffset&&abs(z)<muforwardrad-muoffset){
295  check=false;
296 #ifdef PROPAGATOR_DB
297  cout<<"checkfts::false="<<check<<endl;
298 #endif
299  }
300  return check;
301 }
T perp() const
Definition: PV3DBase.h:71
const GlobalTrajectoryParameters & parameters() const
#define abs(x)
Definition: mlp_lapack.h:159
double double double z
bool check(const DataFrame &df, bool capcheck, bool dvercheck)
T z() const
Definition: PV3DBase.h:63
float muforwardrad
Definition: FmpConst.h:76
float mubarrelrad
Definition: FmpConst.h:75
tuple cout
Definition: gather_cfg.py:121
float muoffset
Definition: FmpConst.h:77
virtual FastMuPropagator* cms::FastMuPropagator::clone ( void  ) const
inlinevirtual

Implements Propagator.

Definition at line 38 of file FastMuPropagator.h.

References alongMomentum, dir, FastMuPropagator(), and field.

39  {
41  return new FastMuPropagator(field,dir);
42  }
const MagneticField * field
PropagationDirection
FastMuPropagator(const MagneticField *mf, PropagationDirection dir=alongMomentum)
dbl *** dir
Definition: mlp_gen.cc:35
virtual const MagneticField* cms::FastMuPropagator::magneticField ( ) const
inlinevirtual

Implements Propagator.

Definition at line 60 of file FastMuPropagator.h.

References field.

60 {return field;}
const MagneticField * field
TrajectoryStateOnSurface cms::FastMuPropagator::propagate ( const FreeTrajectoryState fts,
const Cylinder bound 
) const
virtual

Implements Propagator.

Definition at line 22 of file FastMuPropagator.cc.

References abs, DeDxDiscriminatorTools::charge(), GlobalTrajectoryParameters::charge(), funct::cos(), gather_cfg::cout, FreeTrajectoryState::curvilinearError(), m, CurvilinearTrajectoryError::matrix(), GlobalTrajectoryParameters::momentum(), FreeTrajectoryState::parameters(), PV3DBase< T, PVType, FrameType >::perp(), phi, PV3DBase< T, PVType, FrameType >::phi(), pi, GlobalTrajectoryParameters::position(), ptmin, Cylinder::radius(), funct::sin(), launcher::step, funct::tan(), PV3DBase< T, PVType, FrameType >::theta(), theta(), detailsBasic3DVector::z, and PV3DBase< T, PVType, FrameType >::z().

24 {
26 
27  if(!checkfts(fts)) return badtsos;
28 
29 #ifdef PROPAGATOR_DB
30  cout<<"FastMuPropagator::propagate::Start propagation in barrel::zvert "<<theFmpConst->zvert<<endl;
31 #endif
32 
33  // Extract information from muchambers
34 
35  int charge;
36 
37  int imin0, imax0;
38  double ptmax,ptmin,pt,phi,theta,z,pl;
39  double dfcalc,phnext,bound;
40  float ptboun=theFmpConst->ptboun;
41  float step=theFmpConst->step;
42 
43  GlobalVector moment=fts.parameters().momentum();
44  GlobalPoint posit=fts.parameters().position();
45  pt=moment.perp();
46 
47 // Correct theta
48  double zfts=fts.parameters().position().z()-theFmpConst->zvert;
49  double rfts=fts.parameters().position().perp();
50  theta = atan2(rfts,zfts);
51 
52 #ifdef PROPAGATOR_DB
53  cout<<"FastMuPropagator::propagate::Start propagation in barrel::theta old, new "<<moment.theta()<<" "<<theta<<endl;
54 #endif
55 
56  phi=posit.phi();
57  ptmax=pt+fts.curvilinearError().matrix()(1,1);
58  ptmin=pt-fts.curvilinearError().matrix()(1,1);
59  bound=boundcyl.radius();
60  charge=fts.parameters().charge();
61 
62  imax0=(int)((ptmax-ptboun)/step)+1;
63  imin0=(int)((ptmin-ptboun)/step)+1;
64 #ifdef PROPAGATOR_DB
65  cout<<"FastMuPropagator::Look ptboun,step,imin0,imax0="<<ptboun<<" "<<step<<
66  " "<<imin0<<" "<<imax0<<endl;
67  cout<<"FastMuPropagator::Parameters (pt,theta,phi,ptmax,ptmin,bound)="<<pt<<" "
68  <<theta<<" "<<phi<<" "<<ptmax<<" "<<ptmin<<" "<<bound<<endl;
69 #endif
70  if(imax0 > 1){
71  if(imin0<1) imin0=1;
72  // ========================== phi ========================================
73  // new parametrisation (because of second mu-station)
74  //
75 
76 #ifdef PROPAGATOR_DB
77  cout<<"FastMuPropagator::New parameters="<<theFmpConst->newparam[0]<<endl;
78  cout<<"FastMuPropagator::New parameters for pt>40="<<
79  theFmpConst->newparamgt40[0]<<endl;
80 #endif
81 
82  if(pt<40.) {
83  dfcalc=charge/(theFmpConst->newparam[0]+theFmpConst->newparam[1]*pt
84  +theFmpConst->newparam[2]*pt*pt);
85  }else{
86  dfcalc=charge/(theFmpConst->newparamgt40[0]+
88  }
89 //
90 // !!!! temporarily decision till new parametrization appears.
91 //
92  if (abs(dfcalc) > 0.6 ) dfcalc = charge*0.6;
93 
94  phnext=dfcalc+phi;
95  if(phnext>=twopi) phnext=phnext-twopi;
96  if(phnext <0.) phnext=twopi+phnext;
97 #ifdef PROPAGATOR_DB
98  cout<<"FastMuPropagator::Phi in Muon Chamb="<<phi<<endl;
99  cout<<"FastMuPropagator::Phnext determined="<<phnext<<" dfcalc="<<dfcalc<<endl;
100 #endif
101  // ========================== Z ========================================
102  if(abs(theta-pi/2.)>0.00001){
103  z=bound/tan(theta)+theFmpConst->zvert;
104  if(fabs(z)>140) {
105 // Temporary implementation =====
106 // if(z>0.) z = z-45.;
107 // if(z<0.) z = z+45.;
108 // ==============================
109  }
110  }else{
111  z=0.;
112  }
113 #ifdef PROPAGATOR_DB
114  cout<<"FastMuPropgator::Z coordinate="<<z<<"bound="<<bound<<"theta="<<theta<<" "<<
115  abs(theta-pi/2.)<<endl;
116 #endif
117  // ====================== fill global point/vector =======================
118  GlobalPoint aX(bound*cos(phnext),bound*sin(phnext),z);
119  if(abs(theta-pi/2.)<0.00001){
120  pl=0.;
121  }else{
122  pl=pt/tan(theta);
123  }
124  // Recalculate momentum with some trick...
125  double dfcalcmom=charge*theFmpConst->partrack*bound/pt;
126  GlobalVector aP(pt*cos(phnext-dfcalcmom),pt*sin(phnext-dfcalcmom),pl);
127 
128 #ifdef PROPAGATOR_DB
129  cout<<"phnextmom="<<phnext-dfcalcmom<<endl;
130  cout<<"Cylinder aP="<<aP<<endl;
131  cout<<"Before propagation="<<pt*cos(phi)<< " "<<pt*sin(phi)<<" "<<pl<<endl;
132 #endif
133  // =======================================================================
134 
135  GlobalTrajectoryParameters gtp(aX,aP,charge,field);
137  int iwin;
138  float awin,bwin,phbound;
139 
140  if(pt>40.) {
141  iwin=8;
142  phbound=theFmpConst->phiwinb[7];
143  }else{
144  iwin=(int)(pt/theFmpConst->ptstep);
145  awin=(theFmpConst->phiwinb[iwin+1]-theFmpConst->phiwinb[iwin])
146  /(theFmpConst->ptwmax[iwin]-theFmpConst->ptwmin[iwin]);
147  bwin=theFmpConst->phiwinb[iwin]-awin*theFmpConst->ptwmin[iwin];
148  phbound=awin*pt+bwin;
149 
150  }
151 #ifdef PROPAGATOR_DB
152  cout<<"Size of window in phi="<<phbound<<" "<<iwin<<endl;
153  cout<<theFmpConst->phiwinb[iwin+1]<<" "<<theFmpConst->phiwinb[iwin]
154  <<" "<<theFmpConst->ptwmin[iwin]<<
155  " "<<theFmpConst->ptwmax[iwin]<<" awin="<<awin<<" bwin="<<bwin<<endl;
156 #endif
157  m(0,0)=(ptmax-ptmin)/6.; m(1,1)=phbound/theFmpConst->sigf;
159  m(3,3)=phbound/(2.*theFmpConst->sigf);m(4,4)=theFmpConst->zwin/(2.*theFmpConst->sigz);
160 
162 
163  FreeTrajectoryState fts(gtp,cte);
165  return tsos;
166 
167  }
168  return badtsos;
169 }
const MagneticField * field
float ptboun
Definition: FmpConst.h:79
T perp() const
Definition: PV3DBase.h:71
list step
Definition: launcher.py:15
const GlobalTrajectoryParameters & parameters() const
bool checkfts(const FreeTrajectoryState &fts) const
Sin< T >::type sin(const T &t)
Definition: Sin.h:22
Geom::Phi< T > phi() const
Definition: PV3DBase.h:68
Geom::Theta< T > theta() const
float partrack
Definition: FmpConst.h:93
#define abs(x)
Definition: mlp_lapack.h:159
float ptstep
Definition: FmpConst.h:82
float zvert
Definition: FmpConst.h:94
ROOT::Math::SMatrix< double, 5, 5, ROOT::Math::MatRepSym< double, 5 > > AlgebraicSymMatrix55
double charge(const std::vector< uint8_t > &Ampls)
const CurvilinearTrajectoryError & curvilinearError() const
double double double z
Geom::Theta< T > theta() const
Definition: PV3DBase.h:74
float sigz
Definition: FmpConst.h:89
T z() const
Definition: PV3DBase.h:63
float phiwinb[8]
Definition: FmpConst.h:84
Cos< T >::type cos(const T &t)
Definition: Cos.h:22
Tan< T >::type tan(const T &t)
Definition: Tan.h:22
float ptwmin[8]
Definition: FmpConst.h:87
float newparam[3]
Definition: FmpConst.h:71
float sigf
Definition: FmpConst.h:90
float step
Definition: FmpConst.h:80
float newparamgt40[3]
Definition: FmpConst.h:72
double ptmin
Definition: HydjetWrapper.h:86
float ptwmax[8]
Definition: FmpConst.h:86
const AlgebraicSymMatrix55 & matrix() const
tuple cout
Definition: gather_cfg.py:121
double pi
float zwin
Definition: FmpConst.h:88
Definition: DDAxes.h:10
TrajectoryStateOnSurface cms::FastMuPropagator::propagate ( const FreeTrajectoryState fts,
const Plane boundplane 
) const
virtual

Implements Propagator.

Definition at line 173 of file FastMuPropagator.cc.

References abs, DeDxDiscriminatorTools::charge(), GlobalTrajectoryParameters::charge(), funct::cos(), gather_cfg::cout, FreeTrajectoryState::curvilinearError(), m, CurvilinearTrajectoryError::matrix(), GlobalTrajectoryParameters::momentum(), FreeTrajectoryState::parameters(), PV3DBase< T, PVType, FrameType >::perp(), phi, PV3DBase< T, PVType, FrameType >::phi(), GloballyPositioned< T >::position(), GlobalTrajectoryParameters::position(), ptmin, alignCSCRings::r, funct::sin(), launcher::step, funct::tan(), PV3DBase< T, PVType, FrameType >::theta(), theta(), detailsBasic3DVector::z, and PV3DBase< T, PVType, FrameType >::z().

176 {
177  TrajectoryStateOnSurface badtsos;
178 
179 #ifdef PROPAGATOR_DB
180  cout<<"FastMuPropagator::propagate::Start propagation in forward::zvert "<<theFmpConst->zvert<<endl;
181 #endif
182  if(!checkfts(fts)) return badtsos;
183 
184  // Extract information from muchambers
185 
186  int imin0, imax0;
187  double ptmax,ptmin,pt,phi,theta,z,r,pl,plmin,plmax;
188  double dfcalc,phnext;
190  float ptboun=theFmpConst->ptboun;
191  float step=theFmpConst->step;
192 
193 
194  GlobalVector moment=fts.parameters().momentum();
195  GlobalPoint posit=fts.parameters().position();
196  pt=moment.perp();
197 
198 // Correct theta
199  double zfts=fts.parameters().position().z()-theFmpConst->zvert;
200  double rfts=fts.parameters().position().perp();
201  theta = atan2(rfts,zfts);
202 
203 #ifdef PROPAGATOR_DB
204  cout<<"FastMuPropagator::propagate::Start propagation in forward::theta old, new "<<moment.theta()<<" "<<theta<<endl;
205 #endif
206 
207  phi=posit.phi();
208  ptmax=pt+fts.curvilinearError().matrix()(1,1);
209  ptmin=pt-fts.curvilinearError().matrix()(1,1);
210  pl=pt/tan(theta);
211  plmin=ptmin/tan(theta);
212  plmax=ptmax/tan(theta);
213  imax0=(int)((ptmax-ptboun)/step)+1;
214  imin0=(int)((ptmin-ptboun)/step)+1;
215 #ifdef PROPAGATOR_DB
216  cout<<"FastMuPropagator::Look ptboun,step,imin0,imax0="<<ptboun<<" "<<step<<
217  " "<<imin0<<" "<<imax0<<endl;
218  cout<<"FastMuPropagator::Parameters (pt,theta,phi,ptmax,ptmin)="<<pt<<" "
219  <<theta<<" "<<phi<<" "<<ptmax<<" "<<ptmin<<endl;
220 #endif
221  if(imax0 > 1){
222  if(imin0<1) imin0=1;
223 
224  z=boundplane.position().z();
225  r=(z-theFmpConst->zvert)*tan(theta);
226  charge=fts.parameters().charge();
227 
228  // pl evaluation
229 
230  dfcalc=theFmpConst->forwparam[0]+
231  charge*theFmpConst->forwparam[1]/abs(pl);
232  phnext=dfcalc+phi;
233  if(phnext>=twopi) phnext=phnext-twopi;
234  if(phnext <0.) phnext=twopi+phnext;
235 #ifdef PROPAGATOR_DB
236  cout<<"FastMuPropagator::Phi in Muon Chamb="<<phi<<endl;
237  cout<<"FastMuPropagator::Phnext determined="<<phnext<<" dfcalc="<<dfcalc<<endl;
238 #endif
239 
240  int iwin;
241  float awin,bwin,phbound;
243 
244  if(pt>40.) {
245  phbound=theFmpConst->phiwinf[7];
246  }else{ // r < bound
247  iwin=(int)(pt/theFmpConst->ptstep);
248  awin=(theFmpConst->phiwinf[iwin+1]-theFmpConst->phiwinf[iwin])
249  /(theFmpConst->ptwmax[iwin]-theFmpConst->ptwmin[iwin]);
250  bwin=theFmpConst->phiwinf[iwin]-awin*theFmpConst->ptwmin[iwin];
251  phbound=awin*pt+bwin;
252  }
253 #ifdef PROPAGATOR_DB
254  cout<<"Forward::Size of window in phi="<<phbound<<endl;
255 #endif
256  m(0,0)=abs(plmax-plmin)/6.; m(1,1)=phbound/theFmpConst->sigf;
258  m(3,3)=phbound/(2.*theFmpConst->sigf);m(4,4)=theFmpConst->zwin/(2.*theFmpConst->sigz);
259 
260  GlobalPoint aX(r*cos(phnext),r*sin(phnext),z);
261 
262  // Recalculate momentum with some trick...
263  double dfcalcmom=charge*theFmpConst->partrack*abs(z)/abs(pl);
264  GlobalVector aP(pt*cos(phnext-dfcalcmom),pt*sin(phnext-dfcalcmom),pl);
265 #ifdef PROPAGATOR_DB
266  cout<<"dfcalcmom="<<charge<<" "<<theFmpConst->partrack<<" "<<z<<" "<<pl<<" "<<phnext<<endl;
267  cout<<"phnextmom="<<phnext-dfcalcmom<<endl;
268 
269  cout<<"Plane aP="<<aP<<endl;
270  cout<<"Before propagation="<<pt*cos(phi)<< " "<<pt*sin(phi)<<" "<<pl<<endl;
271 #endif
272 
273  GlobalTrajectoryParameters gtp(aX,aP,charge,field);
275 
276  TrajectoryStateOnSurface tsos(gtp, CurvilinearTrajectoryError(m), boundplane);
277  return tsos;
278  }
279 
280  return badtsos;
281 }
const MagneticField * field
float ptboun
Definition: FmpConst.h:79
T perp() const
Definition: PV3DBase.h:71
list step
Definition: launcher.py:15
const GlobalTrajectoryParameters & parameters() const
bool checkfts(const FreeTrajectoryState &fts) const
Sin< T >::type sin(const T &t)
Definition: Sin.h:22
Geom::Phi< T > phi() const
Definition: PV3DBase.h:68
Geom::Theta< T > theta() const
float partrack
Definition: FmpConst.h:93
#define abs(x)
Definition: mlp_lapack.h:159
float ptstep
Definition: FmpConst.h:82
float zvert
Definition: FmpConst.h:94
ROOT::Math::SMatrix< double, 5, 5, ROOT::Math::MatRepSym< double, 5 > > AlgebraicSymMatrix55
double charge(const std::vector< uint8_t > &Ampls)
const CurvilinearTrajectoryError & curvilinearError() const
double double double z
Geom::Theta< T > theta() const
Definition: PV3DBase.h:74
int TrackCharge
Definition: TrackCharge.h:4
float sigz
Definition: FmpConst.h:89
T z() const
Definition: PV3DBase.h:63
Cos< T >::type cos(const T &t)
Definition: Cos.h:22
Tan< T >::type tan(const T &t)
Definition: Tan.h:22
float forwparam[2]
Definition: FmpConst.h:73
float phiwinf[8]
Definition: FmpConst.h:85
float ptwmin[8]
Definition: FmpConst.h:87
float sigf
Definition: FmpConst.h:90
float step
Definition: FmpConst.h:80
double ptmin
Definition: HydjetWrapper.h:86
float ptwmax[8]
Definition: FmpConst.h:86
const AlgebraicSymMatrix55 & matrix() const
tuple cout
Definition: gather_cfg.py:121
const PositionType & position() const
float zwin
Definition: FmpConst.h:88
Definition: DDAxes.h:10
TrajectoryStateOnSurface cms::FastMuPropagator::propagate ( const FreeTrajectoryState state,
const Surface sur 
) const
inlinevirtual

Propagate from a free state (e.g. position and momentum in in global cartesian coordinates) to a surface.Only use the generic method if the surface type (plane or cylinder) is not known at the calling point.

Reimplemented from Propagator.

Definition at line 44 of file FastMuPropagator.h.

References Propagator::propagate().

45  {
46  return Propagator::propagate( fts, surface);
47  }
virtual TrajectoryStateOnSurface propagate(const FreeTrajectoryState &, const Surface &) const
Definition: Propagator.cc:12
virtual std::pair< TrajectoryStateOnSurface, double> cms::FastMuPropagator::propagateWithPath ( const FreeTrajectoryState state,
const Plane bc 
) const
inlinevirtual

Implements Propagator.

Definition at line 50 of file FastMuPropagator.h.

50  {
51  std::pair<TrajectoryStateOnSurface,double> tp;
52  return tp;
53  }
virtual std::pair< TrajectoryStateOnSurface, double> cms::FastMuPropagator::propagateWithPath ( const FreeTrajectoryState state,
const Cylinder bc 
) const
inlinevirtual

Implements Propagator.

Definition at line 55 of file FastMuPropagator.h.

55  {
56  std::pair<TrajectoryStateOnSurface,double> tp;
57  return tp;
58  }

Member Data Documentation

const MagneticField* cms::FastMuPropagator::field
private

Definition at line 65 of file FastMuPropagator.h.

Referenced by clone(), FastMuPropagator(), and magneticField().

FmpConst* cms::FastMuPropagator::theFmpConst
private

Definition at line 64 of file FastMuPropagator.h.

Referenced by FastMuPropagator().