10 using namespace magfieldparam;
15 BCylParam<float> fpar1{4.90541f,17.8768f,2.02355f,0.0210538f,0.000321885f,2.37511f,0.00326725f,2.07656f,1.71879f};
16 BCylParam<float> fpar2{4.41982f,15.7732f,3.02621f,0.0197814f,0.000515759f,2.43385f,0.00584258f,2.11333f,1.76079f};
17 BCylParam<float> fpar3{4.30161f,15.2586f,3.51926f,0.0183494f,0.000606773f,2.45110f,0.00709986f,2.12161f,1.77038f};
18 BCylParam<float> fpar4{4.24326f,15.0201f,3.81492f,0.0178712f,0.000656527f,2.45818f,0.00778695f,2.12500f,1.77436f};
19 BCylParam<float> fpar5{4.21136f,14.8824f,4.01683f,0.0175932f,0.000695541f,2.45311f,0.00813447f,2.11688f,1.76076f};
20 std::string const flds[] = {
"2_0T",
"3_0T",
"3_5T",
"3_8T",
"4_0T"};
21 float flds_f[] = {2.0, 3.0, 3.5, 3.8, 4.0};
25 for (
int i=0;
i<5; ++
i){
26 if (fabs(fld-flds_f[
i])<0.001) {
30 throw cms::Exception(
"BadParameters") <<
"Undefined field value " << fld;
38 <<
"Defined keys are: \"2_0T\" \"3_0T\" \"3_5T\" \"3_8T\" and \"4_0T\"\n";
55 float r2=x[0]*x[0]+x[1]*x[1];
56 bcyl(x[0]*x[0]+x[1]*x[1],x[2], br, bz); Brfz[0]=
std::sqrt(r2)*
br; Brfz[1]=0; Brfz[2]=bz;
61 float r2=x[0]*x[0]+x[1]*x[1];
62 bcyl(r2, x[2], br,bz);
void getBxyz(float const *__restrict__ x, float *__restrict__ Bxyz) const
B out in cartesian.
void getBrfz(float const *__restrict__ x, float *__restrict__ Brfz) const
B out in cylindrical.
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)