CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes
CSCXonStrip_MatchGatti Class Reference

#include <CSCXonStrip_MatchGatti.h>

Public Member Functions

 CSCXonStrip_MatchGatti (const edm::ParameterSet &ps)
 
void findXOnStrip (const CSCDetId &id, const CSCLayer *layer, const CSCStripHit &stripHit, int centralStrip, float &xWithinChamber, float &stripWidth, const float &tpeak, float &xWithinStrip, float &sigma, int &quality_flag)
 Returns fitted local x position and its estimated error. More...
 
void initChamberSpecs ()
 Use specs to setup Gatti parameters. More...
 
void setConditions (const CSCRecoConditions *reco)
 Cache pointer to conditions data. More...
 
void setupMatrix ()
 Set matrix for XT corrections and noise. More...
 
 ~CSCXonStrip_MatchGatti ()
 

Private Member Functions

double calculateXonStripError (float stripWidth, bool ME1_1)
 
double calculateXonStripPosition (float stripWidth, bool ME1_1)
 
 CSCXonStrip_MatchGatti (const CSCXonStrip_MatchGatti &)
 
double estimated2Gatti (double Xestimated, float StripWidth, bool ME1_1)
 
double estimated2GattiCorrection (double Xestimated, float StripWidth, bool ME1_1)
 
void getCorrectionValues (std::string Estimator)
 
void hardcodedCorrectionInitialization ()
 
CSCXonStrip_MatchGattioperator= (const CSCXonStrip_MatchGatti &)
 
double xfError_Noise (double noise)
 
double xfError_XTasym (double XTasym)
 

Private Attributes

float a11 [3]
 Store elements of auto-correlation matrices: 0 = left, 1 = middle, 2 = right. More...
 
float a12 [3]
 
float a13 [3]
 
float a22 [3]
 
float a23 [3]
 
float a33 [3]
 
float chargeSignal [3][3]
 
float const_syst
 
float const_syst_ME12
 
float const_syst_ME13
 
float const_syst_ME1a
 
float const_syst_ME1b
 
float const_syst_ME21
 
float const_syst_ME22
 
float const_syst_ME31
 
float const_syst_ME32
 
float const_syst_ME41
 
double h
 
double k_1
 
double k_2
 
double k_3
 
float noise_level
 
float noise_level_ME12
 
float noise_level_ME13
 
float noise_level_ME1a
 
float noise_level_ME1b
 
float noise_level_ME21
 
float noise_level_ME22
 
float noise_level_ME31
 
float noise_level_ME32
 
float noise_level_ME41
 
double norm
 
double q_sum
 
double q_sumC
 
double q_sumL
 
double q_sumR
 
double r
 
const CSCRecoConditionsrecoConditions_
 
const CSCChamberSpecsspecs_
 
double sqrt_k_3
 
float stripWidth
 
bool use3TimeBins
 
bool useCalib
 
float v11 [3]
 Store elements of matrices for chi^2 computation: 0 = left, 1 = middle, 2 = right. More...
 
float v12 [3]
 
float v13 [3]
 
float v22 [3]
 
float v23 [3]
 
float v33 [3]
 
float x_centralVal [n_val]
 
float x_correction_ME1_1 [n_SW_ME1_1][n_val]
 
float x_correction_noME1_1 [n_SW_noME1_1][n_val]
 
float xt_asymmetry
 
float xt_asymmetry_ME12
 
float xt_asymmetry_ME13
 
float xt_asymmetry_ME1a
 
float xt_asymmetry_ME1b
 
float xt_asymmetry_ME21
 
float xt_asymmetry_ME22
 
float xt_asymmetry_ME31
 
float xt_asymmetry_ME32
 
float xt_asymmetry_ME41
 
float xt_l [3][3]
 x-talks 0 = left, 1 = middle, 2 = right ; and then second [] is for time bin tmax-1, tmax, tmax+1 More...
 
float xt_lr0 [3]
 
float xt_lr1 [3]
 
float xt_lr2 [3]
 
float xt_r [3][3]
 
float xtalksOffset
 

Static Private Attributes

static const int n_SW_ME1_1 = 6
 
static const int n_SW_noME1_1 = 11
 
static const int n_val = 501
 

Detailed Description

When having both strip and wire hit in a layer, use Gatti "matching" to calculate position ond error of strip hit.

Author
Stoyan Stoynev - NU

Definition at line 24 of file CSCXonStrip_MatchGatti.h.

Constructor & Destructor Documentation

◆ CSCXonStrip_MatchGatti() [1/2]

CSCXonStrip_MatchGatti::CSCXonStrip_MatchGatti ( const edm::ParameterSet ps)
explicit

Definition at line 35 of file CSCXonStrip_MatchGatti.cc.

35  : recoConditions_(nullptr) {
36  useCalib = ps.getParameter<bool>("CSCUseCalibrations");
37  xtalksOffset = ps.getParameter<double>("CSCStripxtalksOffset");
38  noise_level_ME1a = ps.getParameter<double>("NoiseLevel_ME1a");
39  xt_asymmetry_ME1a = ps.getParameter<double>("XTasymmetry_ME1a");
40  const_syst_ME1a = ps.getParameter<double>("ConstSyst_ME1a");
41  noise_level_ME1b = ps.getParameter<double>("NoiseLevel_ME1b");
42  xt_asymmetry_ME1b = ps.getParameter<double>("XTasymmetry_ME1b");
43  const_syst_ME1b = ps.getParameter<double>("ConstSyst_ME1b");
44  noise_level_ME12 = ps.getParameter<double>("NoiseLevel_ME12");
45  xt_asymmetry_ME12 = ps.getParameter<double>("XTasymmetry_ME12");
46  const_syst_ME12 = ps.getParameter<double>("ConstSyst_ME12");
47  noise_level_ME13 = ps.getParameter<double>("NoiseLevel_ME13");
48  xt_asymmetry_ME13 = ps.getParameter<double>("XTasymmetry_ME13");
49  const_syst_ME13 = ps.getParameter<double>("ConstSyst_ME13");
50  noise_level_ME21 = ps.getParameter<double>("NoiseLevel_ME21");
51  xt_asymmetry_ME21 = ps.getParameter<double>("XTasymmetry_ME21");
52  const_syst_ME21 = ps.getParameter<double>("ConstSyst_ME21");
53  noise_level_ME22 = ps.getParameter<double>("NoiseLevel_ME22");
54  xt_asymmetry_ME22 = ps.getParameter<double>("XTasymmetry_ME22");
55  const_syst_ME22 = ps.getParameter<double>("ConstSyst_ME22");
56  noise_level_ME31 = ps.getParameter<double>("NoiseLevel_ME31");
57  xt_asymmetry_ME31 = ps.getParameter<double>("XTasymmetry_ME31");
58  const_syst_ME31 = ps.getParameter<double>("ConstSyst_ME31");
59  noise_level_ME32 = ps.getParameter<double>("NoiseLevel_ME32");
60  xt_asymmetry_ME32 = ps.getParameter<double>("XTasymmetry_ME32");
61  const_syst_ME32 = ps.getParameter<double>("ConstSyst_ME32");
62  noise_level_ME41 = ps.getParameter<double>("NoiseLevel_ME41");
63  xt_asymmetry_ME41 = ps.getParameter<double>("XTasymmetry_ME41");
64  const_syst_ME41 = ps.getParameter<double>("ConstSyst_ME41");
65 
66  getCorrectionValues("StringCurrentlyNotUsed");
67 }

References const_syst_ME12, const_syst_ME13, const_syst_ME1a, const_syst_ME1b, const_syst_ME21, const_syst_ME22, const_syst_ME31, const_syst_ME32, const_syst_ME41, getCorrectionValues(), edm::ParameterSet::getParameter(), noise_level_ME12, noise_level_ME13, noise_level_ME1a, noise_level_ME1b, noise_level_ME21, noise_level_ME22, noise_level_ME31, noise_level_ME32, noise_level_ME41, useCalib, xt_asymmetry_ME12, xt_asymmetry_ME13, xt_asymmetry_ME1a, xt_asymmetry_ME1b, xt_asymmetry_ME21, xt_asymmetry_ME22, xt_asymmetry_ME31, xt_asymmetry_ME32, xt_asymmetry_ME41, and xtalksOffset.

◆ ~CSCXonStrip_MatchGatti()

CSCXonStrip_MatchGatti::~CSCXonStrip_MatchGatti ( )

Definition at line 69 of file CSCXonStrip_MatchGatti.cc.

69 {}

◆ CSCXonStrip_MatchGatti() [2/2]

CSCXonStrip_MatchGatti::CSCXonStrip_MatchGatti ( const CSCXonStrip_MatchGatti )
private

Member Function Documentation

◆ calculateXonStripError()

double CSCXonStrip_MatchGatti::calculateXonStripError ( float  stripWidth,
bool  ME1_1 
)
private

Definition at line 622 of file CSCXonStrip_MatchGatti.cc.

622  {
623  double min;
624  if (q_sumR > q_sumL) {
625  min = q_sumL;
626  } else {
627  min = q_sumR;
628  }
629 
630  double xf = (q_sumR - q_sumL) / (q_sumC - min) / 2;
631  double xf_ErrorNoise = xfError_Noise(noise_level);
632  double xf_ErrorXTasym = xfError_XTasym(xt_asymmetry);
633  // x_G = x_F + correction_functon(x_F)
634  // as these are correlated the error should be simply d(x_G) = |d(x_F)| + [correction_functon(x_F+|d(x_F)|) - correction_functon(x_F)]
635  double d_xf = std::sqrt(std::pow(xf_ErrorNoise, 2) + std::pow(xf_ErrorXTasym, 2));
636  double d_corr =
638  double x_shift = d_xf + d_corr;
639  // double x_shift = sqrt( pow( xf_ErrorNoise, 2) + pow( xf_ErrorXTasym, 2)) *
640  //(1 + (estimated2GattiCorrection(xf+0.001, stripWidth, ME1_1) -
641  // estimated2GattiCorrection(xf, stripWidth, ME1_1))*1000.);
642  double x_error = std::sqrt(std::pow(std::abs(x_shift) * stripWidth, 2) + std::pow(const_syst, 2));
643  return x_error;
644 }

References funct::abs(), const_syst, estimated2GattiCorrection(), min(), noise_level, funct::pow(), q_sumC, q_sumL, q_sumR, mathSSE::sqrt(), stripWidth, xfError_Noise(), xfError_XTasym(), and xt_asymmetry.

Referenced by findXOnStrip().

◆ calculateXonStripPosition()

double CSCXonStrip_MatchGatti::calculateXonStripPosition ( float  stripWidth,
bool  ME1_1 
)
private

Definition at line 646 of file CSCXonStrip_MatchGatti.cc.

646  {
647  double x_estimated = -99.;
648  double min;
649  if (q_sumR > q_sumL) {
650  min = q_sumL;
651  } else {
652  min = q_sumR;
653  }
654  //---- This is XF ( X Florida - after the first group that used it)
655  x_estimated = (q_sumR - q_sumL) / (q_sumC - min) / 2;
656  double x_gatti = estimated2Gatti(x_estimated, stripWidth, ME1_1);
657  return x_gatti;
658 }

References estimated2Gatti(), min(), q_sumC, q_sumL, q_sumR, and stripWidth.

Referenced by findXOnStrip().

◆ estimated2Gatti()

double CSCXonStrip_MatchGatti::estimated2Gatti ( double  Xestimated,
float  StripWidth,
bool  ME1_1 
)
private

Definition at line 580 of file CSCXonStrip_MatchGatti.cc.

580  {
581  double x_corr = estimated2GattiCorrection(x_estimated, stripWidth, ME1_1);
582  double x_gatti = x_estimated + x_corr;
583 
584  return x_gatti;
585 }

References estimated2GattiCorrection(), and stripWidth.

Referenced by calculateXonStripPosition().

◆ estimated2GattiCorrection()

double CSCXonStrip_MatchGatti::estimated2GattiCorrection ( double  Xestimated,
float  StripWidth,
bool  ME1_1 
)
private

Definition at line 502 of file CSCXonStrip_MatchGatti.cc.

502  {
503  //---- 11 "nominal" strip widths : 0.6 - 1.6 cm; for ME1_1 just 6 "nominal" strip widths : 0.3 - 0.8 cm; see HardCodedCorrectionInitialization()
504  //---- Calculate corrections at specific Xestimated (linear interpolation between points)
505  int n_SW;
506  int min_SW;
507  if (ME1_1) {
508  n_SW = n_SW_ME1_1;
509  min_SW = 3; // min SW calculated is 0.3 cm
510  } else {
511  n_SW = n_SW_noME1_1;
512  min_SW = 6; // min SW calculated is 0.6 cm
513  }
514  int stripDown = int(10. * stripWidth) - min_SW; // 0 is at min strip width calculated
515  int stripUp = stripDown + 1;
516  if (stripUp > n_SW - 1) {
517  //---- to be checked...
518  //if(stripUp>n_SW){
519  //std::cout<<" Is strip width = "<<stripWidth<<" OK?" <<std::endl;
520  //}
521  stripUp = n_SW - 1;
522  }
523 
524  double half_strip_width = 0.5;
525  //const int Nbins = 501;
526  const int n_bins = n_val;
527  double corr_2_xestim = 999.;
528  if (stripDown < 0) {
529  corr_2_xestim = 1;
530  } else {
531  //---- Parametrized x_gatti minus x_estimated differences
532 
533  int xestim_bin = -999;
534  double delta_strip_width = 999.;
535  double delta_strip_widthUpDown = 999.;
536  double diff_2_strip_width = 999.;
537  delta_strip_width = stripWidth - int(stripWidth * 10) / 10.;
538  delta_strip_widthUpDown = 0.1;
539 
540  if (std::abs(x_estimated) > 0.5) {
541  if (std::abs(x_estimated) > 1.) {
542  corr_2_xestim = 1.; // for now; to be investigated
543  } else {
544  //if(std::abs(Xestimated)>0.55){
545  //std::cout<<"X position from the estimated position above 0.55 (safty margin)?! "<<std::endl;
546  //CorrToXc = 999.;
547  //}
548  xestim_bin = int((1. - std::abs(x_estimated)) / half_strip_width * n_bins);
549  if (ME1_1) {
550  diff_2_strip_width = x_correction_ME1_1[stripUp][xestim_bin] - x_correction_ME1_1[stripDown][xestim_bin];
551  corr_2_xestim = x_correction_ME1_1[stripDown][xestim_bin] +
552  (delta_strip_width / delta_strip_widthUpDown) * diff_2_strip_width;
553  } else {
554  diff_2_strip_width = x_correction_noME1_1[stripUp][xestim_bin] - x_correction_noME1_1[stripDown][xestim_bin];
555  corr_2_xestim = x_correction_noME1_1[stripDown][xestim_bin] +
556  (delta_strip_width / delta_strip_widthUpDown) * diff_2_strip_width;
557  }
558  corr_2_xestim = -corr_2_xestim;
559  }
560  } else {
561  xestim_bin = int((std::abs(x_estimated) / half_strip_width) * n_bins);
562  if (ME1_1) {
563  diff_2_strip_width = x_correction_ME1_1[stripUp][xestim_bin] - x_correction_ME1_1[stripDown][xestim_bin];
564  corr_2_xestim = x_correction_ME1_1[stripDown][xestim_bin] +
565  (delta_strip_width / delta_strip_widthUpDown) * diff_2_strip_width;
566  } else {
567  diff_2_strip_width = x_correction_noME1_1[stripUp][xestim_bin] - x_correction_noME1_1[stripDown][xestim_bin];
568  corr_2_xestim = x_correction_noME1_1[stripDown][xestim_bin] +
569  (delta_strip_width / delta_strip_widthUpDown) * diff_2_strip_width;
570  }
571  }
572  if (x_estimated < 0.) {
573  corr_2_xestim = -corr_2_xestim;
574  }
575  }
576 
577  return corr_2_xestim;
578 }

References funct::abs(), createfilelist::int, n_SW_ME1_1, n_SW_noME1_1, n_val, stripWidth, x_correction_ME1_1, and x_correction_noME1_1.

Referenced by calculateXonStripError(), and estimated2Gatti().

◆ findXOnStrip()

void CSCXonStrip_MatchGatti::findXOnStrip ( const CSCDetId id,
const CSCLayer layer,
const CSCStripHit stripHit,
int  centralStrip,
float &  xWithinChamber,
float &  stripWidth,
const float &  tpeak,
float &  xWithinStrip,
float &  sigma,
int &  quality_flag 
)

Returns fitted local x position and its estimated error.

Definition at line 74 of file CSCXonStrip_MatchGatti.cc.

83  {
84  quality_flag = 0;
85  // Initialize Gatti parameters using chamberSpecs
86  // Cache specs_ info for ease of access
87  specs_ = layer->chamber()->specs();
88  stripWidth = sWidth;
89  //initChamberSpecs();
90  // Initialize output parameters
91  xWithinStrip = xWithinChamber;
92 
93  CSCStripHit::ChannelContainer const& strips = stripHit.strips();
94  int nStrips = strips.size();
95  int centStrip = nStrips / 2 + 1;
96  std::vector<float> const& adcs = stripHit.s_adc();
97  int tmax = stripHit.tmax();
98 
100  //float t_peak = tpeak;
101  //float t_zero = 0.;
102  //float adc[4];
103  //
104  //if ( useCalib ) {
105  //
106  // for ( int t = 0; t < 4; ++t ) {
107  // int k = t + 4 * (centStrip-1);
108  // adc[t] = adcs[k];
109  // }
110  //
111  // // t_peak from peak finder is now 'absolute' i.e. in ns from start of sca time bin 0
112  // t_peak = peakTimeFinder_->peakTime( tmax, adc, t_peak );
113  // // Just for completeness, the start time of the pulse is 133 ns earlier, according to Stan :)
114  // t_zero = t_peak - 133.;
115  // // and reset tpeak since that's the way it gets passed out of this function (Argh!)
116  // tpeak = t_peak;
117  // LogTrace("CSCRecHit|CSCXonStrip_MatchGatti") << "CSCXonStrip_MatchGatti: " <<
118  // id << " strip=" << centralStrip << ", t_zero=" << t_zero << ", t_peak=" << t_peak;
119  //}
120 
121  //---- fill the charge matrix (3x3)
122  float adc[4];
123  int j = 0;
124  for (int i = 1; i <= nStrips; ++i) {
125  if (i > (centStrip - 2) && i < (centStrip + 2)) {
126  std::vector<float> adcsFit;
127  for (int t = 0; t < 4; ++t) {
128  int k = t + 4 * (i - 1);
129  adc[t] = adcs[k];
130  if (t < 3)
131  chargeSignal[j][t] = adc[t];
132  }
133  j++;
134  }
135  }
136 
137  // Load in x-talks:
138 
139  if (useCalib) {
140  std::vector<float> xtalks;
141  recoConditions_->crossTalk(id, centralStrip, xtalks);
142  float dt = 50.f * tmax - tpeak;
143  // XTalks; l,r are for left, right XTalk; lr0,1,2 are for what charge "remains" in the strip
144  for (int t = 0; t < 3; ++t) {
145  xt_l[0][t] = xtalks[0] * (50.f * (t - 1) + dt) + xtalks[1] + xtalksOffset;
146  xt_r[0][t] = xtalks[2] * (50.f * (t - 1) + dt) + xtalks[3] + xtalksOffset;
147  xt_l[1][t] = xtalks[4] * (50.f * (t - 1) + dt) + xtalks[5] + xtalksOffset;
148  xt_r[1][t] = xtalks[6] * (50.f * (t - 1) + dt) + xtalks[7] + xtalksOffset;
149  xt_l[2][t] = xtalks[8] * (50.f * (t - 1) + dt) + xtalks[9] + xtalksOffset;
150  xt_r[2][t] = xtalks[10] * (50.f * (t - 1) + dt) + xtalks[11] + xtalksOffset;
151 
152  xt_lr0[t] = (1. - xt_l[0][t] - xt_r[0][t]);
153  xt_lr1[t] = (1. - xt_l[1][t] - xt_r[1][t]);
154  xt_lr2[t] = (1. - xt_l[2][t] - xt_r[2][t]);
155  }
156  } else {
157  for (int t = 0; t < 3; ++t) {
158  xt_l[0][t] = xtalksOffset;
159  xt_r[0][t] = xtalksOffset;
160  xt_l[1][t] = xtalksOffset;
161  xt_r[1][t] = xtalksOffset;
162  xt_l[2][t] = xtalksOffset;
163  xt_r[2][t] = xtalksOffset;
164 
165  xt_lr0[t] = (1. - xt_l[0][t] - xt_r[0][t]);
166  xt_lr1[t] = (1. - xt_l[1][t] - xt_r[1][t]);
167  xt_lr2[t] = (1. - xt_l[2][t] - xt_r[2][t]);
168  }
169  }
170 
171  // vector containing noise starts at tmax - 1, and tmax > 3, but....
172  int tbin = tmax - 4;
173 
174  // .... originally, suppose to have tmax in tbin 4 or 5, but noticed in MTCC lots of
175  // hits with tmax == 3, so let's allow these, and shift down noise matrix by one element...
176  // This is a patch because the calibration database doesn't have elements for tbin = 2,
177  // e.g. there is no element e[tmax-1,tmax+1] = e[2,4].
178 
179  if (tmax < 4)
180  tbin = 0; // patch
181 
182  // Load in auto-correlation noise matrices
183  if (useCalib) {
184  std::vector<float> nmatrix;
185  recoConditions_->noiseMatrix(id, centralStrip, nmatrix);
186  for (int istrip = 0; istrip < 3; ++istrip) {
187  a11[istrip] = nmatrix[0 + tbin * 3 + istrip * 15];
188  a12[istrip] = nmatrix[1 + tbin * 3 + istrip * 15];
189  a13[istrip] = nmatrix[2 + tbin * 3 + istrip * 15];
190  a22[istrip] = nmatrix[3 + tbin * 3 + istrip * 15];
191  a23[istrip] = nmatrix[4 + tbin * 3 + istrip * 15];
192  a33[istrip] = nmatrix[6 + tbin * 3 + istrip * 15];
193  }
194  } else {
195  // FIXME: NO HARD WIRED VALUES !!!
196  for (int istrip = 0; istrip < 3; ++istrip) {
197  a11[istrip] = 10.0;
198  a12[istrip] = 0.0;
199  a13[istrip] = 0.0;
200  a22[istrip] = 10.0;
201  a23[istrip] = 0.0;
202  a33[istrip] = 10.0;
203  }
204  }
205 
206  //---- Set up noise, XTalk matrices
207  setupMatrix();
208  //---- Calculate the coordinate within the strip and associate uncertainty
209 
210  static const std::string ME1a("ME1/a");
211  static const std::string ME1b("ME1/b");
212 
213  bool ME1_1 = (ME1a == specs_->chamberTypeName() || ME1b == specs_->chamberTypeName());
214 
215  // due to cross talks and 3 time bin sum it is in principe possible that the center strip is not the maximum strip
216  // in some cases the consequences could be quite extreme
217  // take some measures against the extreme cases
218  bool peakMismatch = false;
219  std::vector<float> charges(3);
220  charges[0] = q_sumL;
221  charges[1] = q_sumC;
222  charges[2] = q_sumR;
223  int min_index = min_element(charges.begin(), charges.end()) - charges.begin();
224  int max_index = max_element(charges.begin(), charges.end()) - charges.begin();
225  if (1 != max_index && (1 == min_index ||
226  // the condition below means that if the initial position estimate within strip (|xF|)
227  // is above 1.1/2 = 0.55 "strip widths" peakMismatch is set to true (so special case);
228  // in normal cases |xF|<=0.5 (0.5 is at the edge of the "central" strip)
229  (charges[max_index] - charges[min_index]) > 1.1 * (q_sumC - charges[min_index]))) {
230  peakMismatch = true;
231  switch (max_index) {
232  case 0:
233  xWithinStrip = -1;
234  break;
235  case 2:
236  xWithinStrip = 1;
237  break;
238  default:
239  // should be an error message here
240  xWithinStrip = 0; // in case?
241  break;
242  }
243  }
244  // we don't have the needed information (it's similar to the "edge" strip case)
245  //else if(stripHit.isNearDeadStrip()){
246  else if (stripHit.deadStrip() > 0) {
247  xWithinStrip = 0;
248  } else {
249  //
250  xWithinStrip = float(calculateXonStripPosition(stripWidth, ME1_1));
251  }
252  xWithinChamber = xWithinChamber + (xWithinStrip * stripWidth);
253  if (peakMismatch) {
254  sigma = stripWidth / std::sqrt(12.f);
255  } else {
256  //---- error estimation
257  int factorStripWidth = int(std::sqrt(stripWidth / 0.38f));
258  int maxConsecutiveStrips = 8;
259  if (factorStripWidth) {
260  maxConsecutiveStrips /= factorStripWidth;
261  }
262  maxConsecutiveStrips++;
263 
264  struct ChamberTypes {
265  std::map<std::string, int> chamberTypes;
266  int operator()(std::string const& s) const {
267  auto p = chamberTypes.find(s);
268  return p != chamberTypes.end() ? (*p).second : 0;
269  }
270  ChamberTypes() {
271  chamberTypes["ME1/a"] = 1;
272  chamberTypes["ME1/b"] = 2;
273  chamberTypes["ME1/2"] = 3;
274  chamberTypes["ME1/3"] = 4;
275  chamberTypes["ME2/1"] = 5;
276  chamberTypes["ME2/2"] = 6;
277  chamberTypes["ME3/1"] = 7;
278  chamberTypes["ME3/2"] = 8;
279  chamberTypes["ME4/1"] = 9;
280  chamberTypes["ME4/2"] = 8;
281  }
282  };
283  static const ChamberTypes chamberTypes;
284 
285  switch (chamberTypes(specs_->chamberTypeName())) {
286  case 1:
290  break;
291 
292  case 2:
296  break;
297 
298  case 3:
302  break;
303 
304  case 4:
308  break;
309 
310  case 5:
314  break;
315 
316  case 6:
320  break;
321 
322  case 7:
326  break;
327 
328  case 8:
332  break;
333 
334  case 9:
338  break;
339 
340  default:
344  }
345  if (0 == stripHit.deadStrip() && stripHit.numberOfConsecutiveStrips() < maxConsecutiveStrips &&
346  std::abs(stripHit.closestMaximum()) > maxConsecutiveStrips / 2) {
347  sigma = float(calculateXonStripError(stripWidth, ME1_1));
348  } else { //---- near dead strip or too close maxima or too wide strip cluster
349  sigma = stripWidth / std::sqrt(12.f);
350  }
351  }
352  quality_flag = 1;
353 }

References a11, a12, a13, a22, a23, a33, funct::abs(), gpuClustering::adc, calculateXonStripError(), calculateXonStripPosition(), CSCChamberSpecs::chamberTypeName(), CosmicGenFilterHelix_cfi::charges, chargeSignal, CSCStripHit::closestMaximum(), const_syst, const_syst_ME12, const_syst_ME13, const_syst_ME1a, const_syst_ME1b, const_syst_ME21, const_syst_ME22, const_syst_ME31, const_syst_ME32, const_syst_ME41, CSCRecoConditions::crossTalk(), CSCStripHit::deadStrip(), dt, f, dqmMemoryStats::float, mps_fire::i, createfilelist::int, dqmiolumiharvest::j, dqmdumpme::k, phase1PixelTopology::layer, hgcal_clustering::max_index(), HLT_FULL_cff::ME1a, noise_level, noise_level_ME12, noise_level_ME13, noise_level_ME1a, noise_level_ME1b, noise_level_ME21, noise_level_ME22, noise_level_ME31, noise_level_ME32, noise_level_ME41, CSCRecoConditions::noiseMatrix(), me0TriggerPseudoDigis_cff::nStrips, CSCStripHit::numberOfConsecutiveStrips(), AlCaHLTBitMon_ParallelJobs::p, q_sumC, q_sumL, q_sumR, recoConditions_, alignCSCRings::s, CSCStripHit::s_adc(), setupMatrix(), specs_, mathSSE::sqrt(), AlCaHLTBitMon_QueryRunRegistry::string, DigiDM_cff::strips, CSCStripHit::strips(), stripWidth, submitPVValidationJobs::t, tmax, CSCStripHit::tmax(), useCalib, xt_asymmetry, xt_asymmetry_ME12, xt_asymmetry_ME13, xt_asymmetry_ME1a, xt_asymmetry_ME1b, xt_asymmetry_ME21, xt_asymmetry_ME22, xt_asymmetry_ME31, xt_asymmetry_ME32, xt_asymmetry_ME41, xt_l, xt_lr0, xt_lr1, xt_lr2, xt_r, and xtalksOffset.

Referenced by CSCMake2DRecHit::hitFromStripAndWire().

◆ getCorrectionValues()

void CSCXonStrip_MatchGatti::getCorrectionValues ( std::string  Estimator)
private

◆ hardcodedCorrectionInitialization()

void CSCXonStrip_MatchGatti::hardcodedCorrectionInitialization ( )
private

Definition at line 11 of file HardCodedCorrectionInitialization.cc.

11  {
12  //---- Corrections depend on strip width (SW), position within the strip (XFlorida is used) and type of chamber
13 
14  //---- Corrections for non-ME1_1 chambers (all have practically equal Gatti parameters):
15 
16  //---- min SW ~ 6.6 cm (ME1/2), max SW ~ 1.6 cm (ME234/2)
17  //---- Corrections are calculated for N_SW_noME1_1 strip widths (0.6 - 1.6 cm)
18  //---- and for 501 values in
19  float corrections_noME1_1[n_SW_noME1_1][n_val] = {
20  {0, 0.00019078, 0.000383855,
21  0.000579201, 0.000776796, 0.000976616,
22  0.00117891, 0.00138342, 0.00159008,
23  0.00179887, 0.00200977, 0.00222304,
24  0.00243835, 0.00265569, 0.00287502,
25  0.00309646, 0.00332001, 0.00354547,
26  0.00377282, 0.00400203, 0.00423336,
27  0.0044665, 0.00470141, 0.00493807,
28  0.00517666, 0.005417, 0.00565901,
29  0.00590266, 0.00614806, 0.00639514,
30  0.00664377, 0.00689391, 0.00714568,
31  0.00739901, 0.00765376, 0.0079099,
32  0.00816756, 0.00842663, 0.00868701,
33  0.00894865, 0.00921171, 0.00947602,
34  0.0097415, 0.0100081, 0.0102761,
35  0.0105451, 0.0108152, 0.0110863,
36  0.0113586, 0.0116318, 0.011906,
37  0.0121811, 0.0124572, 0.0127341,
38  0.0130118, 0.0132904, 0.0135697,
39  0.0138497, 0.0141305, 0.014412,
40  0.014694, 0.0149767, 0.01526,
41  0.0155438, 0.015828, 0.0161128,
42  0.016398, 0.0166836, 0.0169696,
43  0.0172559, 0.0175426, 0.0178295,
44  0.0181166, 0.018404, 0.0186915,
45  0.0189791, 0.0192669, 0.0195548,
46  0.0198427, 0.0201306, 0.0204185,
47  0.0207063, 0.0209941, 0.0212817,
48  0.0215692, 0.0218565, 0.0221436,
49  0.0224305, 0.0227171, 0.0230034,
50  0.0232894, 0.023575, 0.0238602,
51  0.024145, 0.0244293, 0.0247132,
52  0.0249966, 0.0252793, 0.0255616,
53  0.0258432, 0.0261243, 0.0264046,
54  0.0266843, 0.0269633, 0.0272415,
55  0.027519, 0.0277957, 0.0280716,
56  0.0283466, 0.0286207, 0.028894,
57  0.0291663, 0.0294377, 0.0297081,
58  0.0299776, 0.030246, 0.0305133,
59  0.0307796, 0.0310449, 0.0313089,
60  0.0315718, 0.0318336, 0.0320942,
61  0.0323536, 0.0326117, 0.0328687,
62  0.0331243, 0.0333786, 0.0336316,
63  0.0338833, 0.0341336, 0.0343825,
64  0.0346301, 0.0348763, 0.035121,
65  0.0353642, 0.035606, 0.0358463,
66  0.0360851, 0.0363223, 0.036558,
67  0.0367921, 0.0370248, 0.0372557,
68  0.037485, 0.0377128, 0.0379389,
69  0.0381633, 0.038386, 0.0386071,
70  0.0388265, 0.0390442, 0.0392601,
71  0.0394742, 0.0396866, 0.0398974,
72  0.0401062, 0.0403132, 0.0405184,
73  0.0407219, 0.0409236, 0.0411233,
74  0.0413211, 0.0415171, 0.0417113,
75  0.0419036, 0.042094, 0.0422824,
76  0.0424689, 0.0426535, 0.0428362,
77  0.043017, 0.0431956, 0.0433724,
78  0.0435472, 0.04372, 0.043891,
79  0.0440598, 0.0442266, 0.0443913,
80  0.0445541, 0.0447149, 0.0448738,
81  0.0450305, 0.0451851, 0.0453376,
82  0.0454882, 0.0456367, 0.0457831,
83  0.0459275, 0.0460698, 0.0462099,
84  0.0463479, 0.0464839, 0.0466178,
85  0.0467496, 0.0468794, 0.0470071,
86  0.0471324, 0.0472557, 0.0473769,
87  0.047496, 0.047613, 0.0477279,
88  0.0478407, 0.0479514, 0.0480598,
89  0.0481661, 0.0482702, 0.0483723,
90  0.0484722, 0.0485699, 0.0486656,
91  0.0487591, 0.0488505, 0.0489397,
92  0.0490268, 0.0491116, 0.0491943,
93  0.0492749, 0.0493533, 0.0494296,
94  0.0495037, 0.0495757, 0.0496456,
95  0.0497133, 0.0497789, 0.0498423,
96  0.0499037, 0.0499628, 0.0500198,
97  0.0500746, 0.0501273, 0.0501778,
98  0.0502262, 0.0502724, 0.0503165,
99  0.0503585, 0.0503984, 0.0504361,
100  0.0504717, 0.0505052, 0.0505366,
101  0.0505658, 0.050593, 0.050618,
102  0.0506409, 0.0506617, 0.0506803,
103  0.0506969, 0.0507114, 0.0507237,
104  0.050734, 0.0507422, 0.0507482,
105  0.0507522, 0.0507541, 0.0507539,
106  0.0507517, 0.0507473, 0.0507409,
107  0.0507324, 0.0507219, 0.0507093,
108  0.0506946, 0.0506779, 0.0506591,
109  0.0506382, 0.0506154, 0.0505905,
110  0.0505635, 0.0505345, 0.0505035,
111  0.0504705, 0.0504355, 0.0503984,
112  0.0503594, 0.0503183, 0.0502753,
113  0.0502302, 0.0501832, 0.0501342,
114  0.0500832, 0.0500302, 0.0499752,
115  0.0499182, 0.0498592, 0.0497983,
116  0.0497354, 0.0496705, 0.0496037,
117  0.049535, 0.0494644, 0.0493918,
118  0.0493173, 0.0492409, 0.0491626,
119  0.0490824, 0.0490003, 0.0489162,
120  0.0488301, 0.0487422, 0.0486524,
121  0.0485607, 0.0484671, 0.0483717,
122  0.0482745, 0.0481754, 0.0480744,
123  0.0479716, 0.0478668, 0.0477601,
124  0.0476517, 0.0475414, 0.0474293,
125  0.0473154, 0.0471997, 0.0470823,
126  0.046963, 0.0468417, 0.0467186,
127  0.0465938, 0.0464672, 0.0463389,
128  0.0462088, 0.046077, 0.0459434,
129  0.0458078, 0.0456705, 0.0455315,
130  0.0453908, 0.0452484, 0.0451043,
131  0.0449585, 0.0448107, 0.0446612,
132  0.04451, 0.0443572, 0.0442028,
133  0.0440467, 0.0438887, 0.0437289,
134  0.0435675, 0.0434045, 0.0432399,
135  0.0430737, 0.0429056, 0.0427358,
136  0.0425643, 0.0423913, 0.0422167,
137  0.0420406, 0.0418625, 0.0416828,
138  0.0415016, 0.0413188, 0.0411344,
139  0.0409484, 0.0407606, 0.0405712,
140  0.0403803, 0.040188, 0.0399941,
141  0.0397982, 0.0396009, 0.0394021,
142  0.0392018, 0.039, 0.0387963,
143  0.0385912, 0.0383846, 0.0381765,
144  0.037967, 0.0377555, 0.0375427,
145  0.0373284, 0.0371128, 0.0368954,
146  0.0366764, 0.0364561, 0.0362343,
147  0.0360112, 0.0357861, 0.0355597,
148  0.0353319, 0.0351028, 0.034872,
149  0.0346396, 0.0344059, 0.0341709,
150  0.0339343, 0.0336961, 0.0334565,
151  0.0332157, 0.0329735, 0.0327294,
152  0.0324841, 0.0322375, 0.0319897,
153  0.0317399, 0.031489, 0.0312367,
154  0.0309832, 0.0307279, 0.0304713,
155  0.0302135, 0.0299544, 0.0296935,
156  0.0294315, 0.0291682, 0.0289035,
157  0.0286372, 0.0283698, 0.0281011,
158  0.0278309, 0.0275592, 0.0272864,
159  0.0270125, 0.0267367, 0.0264598,
160  0.0261818, 0.0259024, 0.0256214,
161  0.0253393, 0.0250561, 0.0247713,
162  0.0244852, 0.024198, 0.0239095,
163  0.0236194, 0.0233283, 0.0230361,
164  0.0227422, 0.0224472, 0.0221511,
165  0.0218536, 0.0215547, 0.0212548,
166  0.0209538, 0.0206511, 0.0203474,
167  0.0200426, 0.0197363, 0.0194288,
168  0.0191203, 0.0188104, 0.0184992,
169  0.0181871, 0.0178736, 0.0175588,
170  0.017243, 0.016926, 0.0166075,
171  0.0162881, 0.0159677, 0.0156456,
172  0.0153226, 0.0149987, 0.014673,
173  0.0143465, 0.0140191, 0.01369,
174  0.01336, 0.0130291, 0.0126966,
175  0.0123631, 0.0120288, 0.0116929,
176  0.011356, 0.0110183, 0.0106789,
177  0.0103387, 0.00999765, 0.00965491,
178  0.00931136, 0.00896692, 0.00862087,
179  0.00827404, 0.00792623, 0.00757693,
180  0.00722686, 0.00687569, 0.00652318,
181  0.0061699, 0.0058154, 0.00545971,
182  0.00510328, 0.00474545, 0.00438662,
183  0.00402707, 0.00366593, 0.00330401,
184  0.00294123, 0.00257695, 0.00221198,
185  0.00184591, 0.0014786, 0.00111061,
186  0.000741268, 0.000370968, 0},
187 
188  {0, 0.00041187, 0.000826272, 0.00124349, 0.00166337, 0.00208575, 0.00251089, 0.00293832, 0.00336842,
189  0.00380078, 0.00423553, 0.00467258, 0.00511179, 0.0055533, 0.00599674, 0.00644249, 0.00689004, 0.00733967,
190  0.0077911, 0.00824439, 0.00869946, 0.00915618, 0.00961462, 0.0100746, 0.0105361, 0.010999, 0.0114635,
191  0.0119291, 0.0123962, 0.0128644, 0.0133338, 0.0138042, 0.0142757, 0.0147481, 0.0152215, 0.0156957,
192  0.0161706, 0.0166463, 0.0171227, 0.0175996, 0.018077, 0.018555, 0.0190333, 0.019512, 0.0199909,
193  0.02047, 0.0209493, 0.0214287, 0.0219081, 0.0223875, 0.0228668, 0.023346, 0.0238249, 0.0243035,
194  0.0247819, 0.0252598, 0.0257373, 0.0262142, 0.0266906, 0.0271664, 0.0276415, 0.0281158, 0.0285894,
195  0.0290621, 0.0295338, 0.0300047, 0.0304745, 0.0309433, 0.0314108, 0.0318773, 0.0323424, 0.0328064,
196  0.033269, 0.0337302, 0.03419, 0.0346482, 0.035105, 0.0355602, 0.0360138, 0.0364656, 0.0369159,
197  0.0373642, 0.0378108, 0.0382556, 0.0386984, 0.0391394, 0.0395783, 0.0400153, 0.0404501, 0.0408829,
198  0.0413135, 0.041742, 0.0421683, 0.0425922, 0.043014, 0.0434333, 0.0438504, 0.044265, 0.0446772,
199  0.0450871, 0.0454943, 0.0458991, 0.0463013, 0.0467009, 0.047098, 0.0474923, 0.0478841, 0.0482731,
200  0.0486594, 0.0490431, 0.0494237, 0.0498018, 0.050177, 0.0505493, 0.050919, 0.0512855, 0.0516492,
201  0.0520102, 0.0523678, 0.0527228, 0.0530748, 0.0534235, 0.0537695, 0.0541124, 0.0544521, 0.0547889,
202  0.0551226, 0.0554531, 0.0557806, 0.056105, 0.0564261, 0.0567442, 0.0570593, 0.0573708, 0.0576794,
203  0.057985, 0.058287, 0.0585859, 0.0588818, 0.0591743, 0.0594634, 0.0597496, 0.0600325, 0.0603119,
204  0.0605881, 0.0608613, 0.0611311, 0.0613974, 0.0616606, 0.0619207, 0.0621773, 0.0624305, 0.0626806,
205  0.0629275, 0.0631709, 0.063411, 0.0636478, 0.0638816, 0.0641118, 0.0643387, 0.0645623, 0.0647828,
206  0.065, 0.0652136, 0.065424, 0.0656312, 0.0658352, 0.0660359, 0.0662331, 0.066427, 0.0666178,
207  0.0668053, 0.0669897, 0.0671705, 0.067348, 0.0675224, 0.0676935, 0.0678615, 0.0680262, 0.0681875,
208  0.0683455, 0.0685004, 0.0686521, 0.0688006, 0.068946, 0.0690879, 0.0692266, 0.0693622, 0.0694946,
209  0.0696238, 0.06975, 0.0698729, 0.0699928, 0.0701093, 0.0702226, 0.0703328, 0.0704399, 0.0705439,
210  0.0706449, 0.0707427, 0.0708375, 0.0709291, 0.0710177, 0.0711031, 0.0711853, 0.0712646, 0.0713408,
211  0.071414, 0.0714842, 0.0715514, 0.0716155, 0.0716767, 0.0717349, 0.0717901, 0.0718423, 0.0718916,
212  0.0719379, 0.0719812, 0.0720216, 0.072059, 0.0720935, 0.0721251, 0.0721537, 0.0721795, 0.0722025,
213  0.0722225, 0.0722397, 0.0722541, 0.0722656, 0.0722743, 0.0722801, 0.0722832, 0.0722835, 0.0722809,
214  0.0722756, 0.0722675, 0.0722567, 0.0722431, 0.0722268, 0.0722078, 0.072186, 0.0721615, 0.0721344,
215  0.0721045, 0.072072, 0.0720369, 0.071999, 0.0719584, 0.0719152, 0.0718694, 0.0718209, 0.0717699,
216  0.0717162, 0.07166, 0.0716012, 0.0715399, 0.071476, 0.0714096, 0.0713406, 0.0712692, 0.0711952,
217  0.0711188, 0.0710399, 0.0709584, 0.0708743, 0.0707878, 0.0706988, 0.0706074, 0.0705137, 0.0704175,
218  0.0703189, 0.070218, 0.0701147, 0.070009, 0.0699007, 0.0697901, 0.0696771, 0.0695618, 0.0694443,
219  0.0693244, 0.0692023, 0.0690779, 0.0689511, 0.0688218, 0.0686903, 0.0685566, 0.0684207, 0.0682826,
220  0.0681423, 0.0679999, 0.0678548, 0.0677076, 0.0675583, 0.0674068, 0.0672532, 0.0670976, 0.0669396,
221  0.0667793, 0.0666169, 0.0664524, 0.0662859, 0.0661173, 0.0659466, 0.0657735, 0.0655984, 0.0654213,
222  0.0652422, 0.0650612, 0.0648778, 0.0646923, 0.0645048, 0.0643155, 0.0641242, 0.0639308, 0.0637351,
223  0.0635376, 0.0633381, 0.0631368, 0.0629335, 0.0627279, 0.0625205, 0.0623112, 0.0621002, 0.061887,
224  0.0616717, 0.0614547, 0.0612359, 0.0610153, 0.0607924, 0.0605677, 0.0603412, 0.0601131, 0.0598829,
225  0.0596506, 0.0594167, 0.0591811, 0.0589437, 0.0587041, 0.0584628, 0.0582199, 0.0579754, 0.0577285,
226  0.05748, 0.05723, 0.0569783, 0.0567244, 0.0564688, 0.0562118, 0.0559531, 0.0556921, 0.0554297,
227  0.0551658, 0.0549, 0.0546323, 0.0543631, 0.0540924, 0.0538197, 0.0535453, 0.0532695, 0.0529922,
228  0.0527126, 0.0524317, 0.0521493, 0.0518652, 0.0515792, 0.0512918, 0.0510031, 0.0507122, 0.0504199,
229  0.0501263, 0.0498308, 0.0495336, 0.0492352, 0.0489352, 0.0486333, 0.04833, 0.0480255, 0.0477189,
230  0.047411, 0.0471018, 0.0467907, 0.0464781, 0.0461643, 0.0458489, 0.0455317, 0.0452134, 0.0448936,
231  0.0445719, 0.0442491, 0.0439249, 0.0435988, 0.0432715, 0.042943, 0.0426125, 0.042281, 0.0419481,
232  0.0416133, 0.0412775, 0.0409404, 0.0406013, 0.0402613, 0.0399199, 0.0395767, 0.0392324, 0.0388869,
233  0.0385395, 0.0381912, 0.0378414, 0.03749, 0.0371377, 0.0367837, 0.0364283, 0.036072, 0.0357139,
234  0.0353546, 0.0349943, 0.0346321, 0.0342689, 0.0339046, 0.0335385, 0.0331715, 0.0328031, 0.0324332,
235  0.0320626, 0.03169, 0.0313165, 0.0309419, 0.0305656, 0.0301884, 0.0298098, 0.0294298, 0.029049,
236  0.0286664, 0.0282829, 0.0278983, 0.027512, 0.027125, 0.0267364, 0.0263467, 0.0259561, 0.0255637,
237  0.0251706, 0.0247761, 0.0243804, 0.0239839, 0.0235855, 0.0231864, 0.0227861, 0.0223844, 0.0219821,
238  0.0215779, 0.021173, 0.0207668, 0.0203594, 0.0199513, 0.0195414, 0.0191309, 0.0187189, 0.018306,
239  0.0178921, 0.0174766, 0.0170606, 0.0166429, 0.0162245, 0.0158049, 0.0153841, 0.0149626, 0.0145394,
240  0.0141157, 0.0136904, 0.0132644, 0.0128373, 0.0124088, 0.0119799, 0.0115491, 0.0111179, 0.0106852,
241  0.0102517, 0.00981723, 0.00938147, 0.00894511, 0.0085071, 0.00806868, 0.00762866, 0.00718802, 0.00674618,
242  0.00630334, 0.00585968, 0.00541467, 0.00496919, 0.00452202, 0.00407449, 0.00362542, 0.00317576, 0.00272489,
243  0.00227312, 0.00182046, 0.0013666, 0.000912158, 0.000456222, 0},
244 
245  {0, 0.000672915, 0.00134894, 0.00202799, 0.00271026, 0.00339538, 0.00408321, 0.00477386, 0.00546709,
246  0.00616272, 0.00686075, 0.00756109, 0.00826349, 0.00896789, 0.0096743, 0.0103824, 0.0110922, 0.0118036,
247  0.0125164, 0.0132306, 0.0139459, 0.0146623, 0.0153797, 0.0160979, 0.0168169, 0.0175365, 0.0182565,
248  0.0189769, 0.0196976, 0.0204185, 0.0211393, 0.0218601, 0.0225807, 0.0233009, 0.0240207, 0.0247399,
249  0.0254585, 0.0261763, 0.0268933, 0.0276092, 0.028324, 0.0290376, 0.0297499, 0.0304607, 0.03117,
250  0.0318777, 0.0325836, 0.0332877, 0.03399, 0.03469, 0.035388, 0.0360838, 0.0367772, 0.0374682,
251  0.0381568, 0.0388427, 0.0395259, 0.0402065, 0.0408841, 0.0415587, 0.0422304, 0.0428991, 0.0435644,
252  0.0442266, 0.0448855, 0.0455409, 0.0461929, 0.0468414, 0.0474861, 0.0481274, 0.0487648, 0.0493984,
253  0.0500284, 0.0506541, 0.0512761, 0.0518941, 0.0525078, 0.0531176, 0.053723, 0.0543243, 0.0549214,
254  0.055514, 0.0561024, 0.0566863, 0.0572658, 0.0578408, 0.0584112, 0.0589773, 0.0595384, 0.0600953,
255  0.0606472, 0.0611946, 0.0617372, 0.0622751, 0.0628083, 0.0633366, 0.0638602, 0.0643788, 0.0648927,
256  0.0654015, 0.0659058, 0.0664047, 0.0668991, 0.0673882, 0.0678727, 0.0683519, 0.0688264, 0.0692957,
257  0.0697602, 0.0702196, 0.0706739, 0.0711234, 0.0715676, 0.0720072, 0.0724412, 0.0728706, 0.0732947,
258  0.0737139, 0.0741282, 0.0745371, 0.0749414, 0.0753403, 0.0757344, 0.0761235, 0.0765073, 0.0768865,
259  0.0772604, 0.0776293, 0.0779936, 0.0783523, 0.0787064, 0.0790556, 0.0793995, 0.0797387, 0.0800731,
260  0.0804022, 0.0807267, 0.0810464, 0.0813607, 0.0816704, 0.0819756, 0.0822754, 0.0825705, 0.082861,
261  0.0831465, 0.0834271, 0.0837032, 0.0839746, 0.0842409, 0.0845025, 0.0847597, 0.0850123, 0.0852596,
262  0.0855026, 0.085741, 0.085975, 0.0862039, 0.0864283, 0.0866483, 0.0868638, 0.0870748, 0.0872809,
263  0.0874827, 0.0876801, 0.0878732, 0.0880617, 0.0882456, 0.0884251, 0.0886004, 0.0887714, 0.0889381,
264  0.0891003, 0.089258, 0.0894116, 0.089561, 0.0897062, 0.0898472, 0.0899841, 0.0901165, 0.0902447,
265  0.0903688, 0.0904889, 0.0906049, 0.0907168, 0.0908248, 0.0909287, 0.0910286, 0.0911242, 0.0912159,
266  0.0913036, 0.0913875, 0.0914674, 0.0915435, 0.0916157, 0.0916841, 0.0917486, 0.0918093, 0.0918662,
267  0.0919194, 0.0919688, 0.0920144, 0.0920562, 0.0920943, 0.0921287, 0.0921595, 0.0921866, 0.0922101,
268  0.09223, 0.0922464, 0.0922592, 0.0922684, 0.0922741, 0.0922763, 0.092275, 0.0922703, 0.092262,
269  0.0922504, 0.0922354, 0.0922169, 0.0921951, 0.09217, 0.0921415, 0.0921096, 0.0920745, 0.0920361,
270  0.0919945, 0.0919494, 0.0919012, 0.0918497, 0.091795, 0.0917372, 0.0916762, 0.091612, 0.0915448,
271  0.0914745, 0.091401, 0.0913246, 0.0912451, 0.0911625, 0.091077, 0.0909885, 0.0908967, 0.090802,
272  0.0907043, 0.0906037, 0.0905003, 0.0903939, 0.0902848, 0.0901727, 0.0900579, 0.0899401, 0.0898192,
273  0.0896956, 0.0895692, 0.0894402, 0.0893084, 0.0891739, 0.0890367, 0.0888966, 0.0887536, 0.088608,
274  0.0884598, 0.0883091, 0.0881558, 0.0879999, 0.0878409, 0.0876794, 0.0875154, 0.0873489, 0.0871799,
275  0.0870085, 0.0868341, 0.0866572, 0.086478, 0.0862963, 0.0861123, 0.0859257, 0.0857363, 0.0855446,
276  0.0853506, 0.0851544, 0.0849557, 0.0847542, 0.0845504, 0.0843445, 0.0841363, 0.0839258, 0.0837125,
277  0.0834971, 0.0832795, 0.0830598, 0.0828375, 0.0826128, 0.0823861, 0.0821573, 0.0819262, 0.0816925,
278  0.0814567, 0.081219, 0.0809793, 0.0807367, 0.0804922, 0.0802458, 0.0799975, 0.0797463, 0.0794933,
279  0.0792384, 0.0789816, 0.078722, 0.0784606, 0.0781974, 0.0779322, 0.0776644, 0.0773949, 0.0771236,
280  0.0768501, 0.0765743, 0.0762968, 0.0760177, 0.0757359, 0.0754523, 0.0751671, 0.0748799, 0.0745903,
281  0.0742992, 0.0740065, 0.0737111, 0.0734141, 0.0731156, 0.0728148, 0.0725121, 0.0722079, 0.0719018,
282  0.0715934, 0.0712836, 0.0709722, 0.0706583, 0.0703429, 0.0700262, 0.0697069, 0.0693862, 0.069064,
283  0.0687396, 0.0684135, 0.0680861, 0.0677565, 0.0674252, 0.0670926, 0.0667578, 0.0664214, 0.0660838,
284  0.0657439, 0.0654025, 0.0650598, 0.0647149, 0.0643685, 0.064021, 0.063671, 0.0633198, 0.0629673,
285  0.0626125, 0.0622565, 0.0618991, 0.0615395, 0.0611789, 0.0608165, 0.0604524, 0.0600872, 0.0597199,
286  0.0593512, 0.0589815, 0.0586094, 0.0582363, 0.0578617, 0.0574852, 0.0571078, 0.0567284, 0.0563476,
287  0.0559658, 0.0555817, 0.0551968, 0.0548102, 0.054422, 0.0540329, 0.0536416, 0.0532493, 0.0528556,
288  0.0524601, 0.0520639, 0.0516655, 0.0512661, 0.0508654, 0.050463, 0.0500597, 0.0496544, 0.0492481,
289  0.0488405, 0.0484312, 0.0480212, 0.047609, 0.047196, 0.0467816, 0.0463657, 0.0459489, 0.0455301,
290  0.0451107, 0.0446894, 0.0442671, 0.0438436, 0.0434185, 0.0429927, 0.0425648, 0.0421363, 0.0417061,
291  0.0412748, 0.0408424, 0.0404084, 0.0399738, 0.0395371, 0.0390999, 0.0386609, 0.0382211, 0.0377799,
292  0.0373374, 0.0368941, 0.036449, 0.0360035, 0.0355558, 0.0351078, 0.034658, 0.0342073, 0.0337554,
293  0.0333023, 0.0328482, 0.0323926, 0.0319364, 0.0314784, 0.03102, 0.0305596, 0.0300988, 0.0296363,
294  0.0291731, 0.0287085, 0.028243, 0.0277763, 0.0273084, 0.0268397, 0.0263695, 0.0258987, 0.0254262,
295  0.0249533, 0.0244786, 0.0240036, 0.0235267, 0.0230495, 0.0225705, 0.0220912, 0.0216101, 0.0211286,
296  0.0206456, 0.0201619, 0.0196768, 0.019191, 0.018704, 0.0182161, 0.017727, 0.017237, 0.016746,
297  0.016254, 0.0157609, 0.0152669, 0.0147719, 0.0142758, 0.0137788, 0.0132808, 0.0127819, 0.0122819,
298  0.011781, 0.011279, 0.0107762, 0.0102724, 0.00976763, 0.00926186, 0.0087552, 0.00824756, 0.00773898,
299  0.0072295, 0.006719, 0.00620769, 0.00569529, 0.00518218, 0.00466788, 0.00415298, 0.0036368, 0.00312014,
300  0.00260207, 0.00208368, 0.00156373, 0.00104362, 0.00052181, 0},
301 
302  {0, 0.000982554, 0.00196886, 0.00295871, 0.00395189, 0.00494819, 0.00594739, 0.00694928, 0.00795364,
303  0.00896026, 0.0099689, 0.0109794, 0.0119914, 0.0130048, 0.0140193, 0.0150348, 0.016051, 0.0170676,
304  0.0180845, 0.0191014, 0.0201181, 0.0211344, 0.0221501, 0.023165, 0.0241788, 0.0251913, 0.0262023,
305  0.0272117, 0.0282192, 0.0292245, 0.0302276, 0.0312282, 0.0322261, 0.0332211, 0.034213, 0.0352017,
306  0.036187, 0.0371686, 0.0381465, 0.0391204, 0.0400901, 0.0410556, 0.0420167, 0.0429731, 0.0439248,
307  0.0448715, 0.0458132, 0.0467497, 0.0476809, 0.0486067, 0.0495269, 0.0504414, 0.0513501, 0.0522529,
308  0.0531496, 0.0540403, 0.0549246, 0.0558025, 0.056674, 0.057539, 0.0583974, 0.0592492, 0.0600943,
309  0.0609324, 0.0617635, 0.0625877, 0.0634048, 0.064215, 0.0650181, 0.0658137, 0.066602, 0.0673832,
310  0.0681571, 0.0689236, 0.0696824, 0.0704339, 0.0711781, 0.0719148, 0.0726436, 0.0733651, 0.0740791,
311  0.0747853, 0.0754839, 0.0761751, 0.0768586, 0.0775342, 0.0782025, 0.0788631, 0.0795158, 0.0801612,
312  0.0807988, 0.0814287, 0.0820513, 0.0826658, 0.0832729, 0.0838726, 0.0844644, 0.0850491, 0.0856256,
313  0.0861951, 0.0867569, 0.0873111, 0.0878581, 0.0883973, 0.0889296, 0.0894539, 0.0899715, 0.090481,
314  0.0909839, 0.0914788, 0.0919672, 0.0924476, 0.0929215, 0.0933876, 0.0938471, 0.0942991, 0.0947443,
315  0.0951824, 0.0956134, 0.0960378, 0.0964547, 0.0968652, 0.0972685, 0.0976651, 0.0980553, 0.0984381,
316  0.0988146, 0.0991844, 0.0995473, 0.0999041, 0.100254, 0.100597, 0.100935, 0.101265, 0.101589,
317  0.101907, 0.102218, 0.102523, 0.102823, 0.103115, 0.103402, 0.103682, 0.103957, 0.104225,
318  0.104487, 0.104744, 0.104995, 0.105239, 0.105477, 0.10571, 0.105938, 0.106159, 0.106375,
319  0.106585, 0.106789, 0.106988, 0.107182, 0.107369, 0.107552, 0.107729, 0.1079, 0.108067,
320  0.108227, 0.108383, 0.108533, 0.108679, 0.108819, 0.108954, 0.109084, 0.109208, 0.109328,
321  0.109443, 0.109552, 0.109657, 0.109758, 0.109853, 0.109943, 0.110029, 0.11011, 0.110186,
322  0.110257, 0.110324, 0.110386, 0.110443, 0.110497, 0.110545, 0.110589, 0.110629, 0.110664,
323  0.110695, 0.110721, 0.110743, 0.110761, 0.110775, 0.110784, 0.110789, 0.11079, 0.110787,
324  0.11078, 0.110768, 0.110753, 0.110733, 0.11071, 0.110682, 0.110651, 0.110615, 0.110576,
325  0.110533, 0.110486, 0.110435, 0.110381, 0.110322, 0.11026, 0.110195, 0.110125, 0.110052,
326  0.109976, 0.109895, 0.109811, 0.109724, 0.109633, 0.109538, 0.10944, 0.109339, 0.109234,
327  0.109126, 0.109014, 0.108899, 0.10878, 0.108659, 0.108533, 0.108405, 0.108274, 0.108139,
328  0.108001, 0.10786, 0.107715, 0.107568, 0.107417, 0.107263, 0.107107, 0.106947, 0.106784,
329  0.106618, 0.106449, 0.106277, 0.106102, 0.105924, 0.105743, 0.105559, 0.105373, 0.105184,
330  0.104992, 0.104796, 0.104598, 0.104397, 0.104194, 0.103988, 0.103778, 0.103566, 0.103352,
331  0.103135, 0.102915, 0.102692, 0.102467, 0.10224, 0.10201, 0.101776, 0.10154, 0.101302,
332  0.101062, 0.100819, 0.100573, 0.100325, 0.100074, 0.099821, 0.0995652, 0.0993072, 0.0990471,
333  0.098784, 0.0985186, 0.0982511, 0.0979815, 0.0977087, 0.097434, 0.0971573, 0.096878, 0.0965961,
334  0.0963123, 0.0960266, 0.0957379, 0.0954472, 0.0951546, 0.0948595, 0.094562, 0.0942627, 0.0939615,
335  0.0936573, 0.0933514, 0.0930437, 0.0927332, 0.0924209, 0.0921068, 0.0917902, 0.0914715, 0.0911512,
336  0.0908285, 0.0905036, 0.0901772, 0.0898485, 0.0895175, 0.089185, 0.0888504, 0.0885135, 0.0881751,
337  0.0878346, 0.0874919, 0.0871477, 0.0868013, 0.0864529, 0.0861032, 0.0857509, 0.085397, 0.0850417,
338  0.0846837, 0.0843243, 0.0839635, 0.0835999, 0.0832352, 0.0828687, 0.0824999, 0.08213, 0.0817578,
339  0.0813839, 0.0810089, 0.0806311, 0.0802522, 0.0798717, 0.079489, 0.0791052, 0.0787191, 0.0783315,
340  0.0779427, 0.0775514, 0.0771591, 0.0767649, 0.0763689, 0.0759719, 0.0755724, 0.0751719, 0.0747696,
341  0.0743655, 0.0739605, 0.0735529, 0.0731446, 0.0727342, 0.0723224, 0.0719094, 0.0714941, 0.0710781,
342  0.0706599, 0.0702405, 0.0698197, 0.069397, 0.0689735, 0.0685476, 0.068121, 0.0676924, 0.0672626,
343  0.0668314, 0.0663984, 0.0659646, 0.0655285, 0.0650918, 0.064653, 0.0642132, 0.0637719, 0.0633291,
344  0.0628852, 0.0624394, 0.0619931, 0.0615443, 0.061095, 0.0606437, 0.0601915, 0.0597378, 0.0592827,
345  0.0588265, 0.0583686, 0.05791, 0.0574493, 0.0569882, 0.0565247, 0.0560609, 0.055595, 0.0551285,
346  0.0546601, 0.054191, 0.0537202, 0.0532484, 0.0527753, 0.0523008, 0.0518254, 0.0513483, 0.0508705,
347  0.0503909, 0.0499108, 0.0494287, 0.0489461, 0.0484616, 0.0479767, 0.0474897, 0.0470025, 0.0465131,
348  0.0460235, 0.0455317, 0.0450398, 0.0445458, 0.0440515, 0.0435552, 0.0430586, 0.04256, 0.0420612,
349  0.0415603, 0.0410592, 0.0405562, 0.0400528, 0.0395475, 0.039042, 0.0385345, 0.0380268, 0.0375171,
350  0.0370073, 0.0364953, 0.0359834, 0.0354693, 0.0349552, 0.034439, 0.0339227, 0.0334045, 0.032886,
351  0.0323659, 0.0318452, 0.031323, 0.0308002, 0.0302761, 0.0297512, 0.0292252, 0.028698, 0.0281702,
352  0.0276409, 0.0271112, 0.0265798, 0.0260483, 0.0255148, 0.0249813, 0.0244459, 0.0239103, 0.0233731,
353  0.0228354, 0.0222964, 0.0217567, 0.021216, 0.0206742, 0.0201318, 0.019588, 0.0190439, 0.018498,
354  0.0179521, 0.0174044, 0.0168564, 0.0163071, 0.0157571, 0.0152062, 0.0146542, 0.0141018, 0.0135478,
355  0.0129937, 0.0124378, 0.0118817, 0.0113243, 0.0107663, 0.0102073, 0.00964732, 0.00908693, 0.00852496,
356  0.007963, 0.00739923, 0.00683529, 0.00627013, 0.00570424, 0.00513772, 0.00456988, 0.00400203, 0.00343225,
357  0.00286246, 0.00229137, 0.00171965, 0.00114727, 0.000573636, 0},
358 
359  {0, 0.00135166, 0.00270752, 0.00406723, 0.00543052, 0.0067968, 0.00816576, 0.00953697, 0.01091,
360  0.0122844, 0.0136597, 0.0150357, 0.0164118, 0.0177876, 0.0191627, 0.0205367, 0.0219092, 0.0232797,
361  0.024648, 0.0260136, 0.027376, 0.028735, 0.0300902, 0.0314411, 0.0327875, 0.0341289, 0.0354649,
362  0.0367955, 0.0381201, 0.0394383, 0.04075, 0.042055, 0.0433525, 0.0446427, 0.0459254, 0.0471998,
363  0.048466, 0.0497239, 0.0509732, 0.0522132, 0.0534442, 0.0546659, 0.0558782, 0.0570807, 0.0582731,
364  0.0594556, 0.0606279, 0.06179, 0.0629416, 0.0640825, 0.0652126, 0.0663318, 0.0674402, 0.0685376,
365  0.0696239, 0.0706991, 0.071763, 0.0728156, 0.0738568, 0.0748866, 0.075905, 0.0769119, 0.0779072,
366  0.078891, 0.0798632, 0.0808239, 0.081773, 0.0827105, 0.0836365, 0.0845509, 0.0854539, 0.0863453,
367  0.0872253, 0.0880939, 0.0889509, 0.0897963, 0.0906304, 0.0914533, 0.092265, 0.0930655, 0.0938546,
368  0.0946324, 0.0953993, 0.0961553, 0.0969003, 0.097634, 0.0983571, 0.0990697, 0.099771, 0.100462,
369  0.101142, 0.101812, 0.102471, 0.10312, 0.103759, 0.104387, 0.105005, 0.105613, 0.106211,
370  0.106799, 0.107377, 0.107945, 0.108504, 0.109053, 0.109592, 0.110122, 0.110642, 0.111153,
371  0.111654, 0.112147, 0.11263, 0.113105, 0.11357, 0.114027, 0.114474, 0.114913, 0.115343,
372  0.115765, 0.116178, 0.116582, 0.116979, 0.117366, 0.117746, 0.118118, 0.118481, 0.118836,
373  0.119184, 0.119523, 0.119855, 0.120179, 0.120495, 0.120804, 0.121106, 0.121399, 0.121686,
374  0.121965, 0.122237, 0.122501, 0.122759, 0.12301, 0.123253, 0.123489, 0.123719, 0.123942,
375  0.124158, 0.124367, 0.12457, 0.124766, 0.124956, 0.125139, 0.125316, 0.125486, 0.125651,
376  0.125809, 0.125961, 0.126107, 0.126246, 0.12638, 0.126507, 0.126629, 0.126745, 0.126856,
377  0.126961, 0.127059, 0.127152, 0.12724, 0.127322, 0.127398, 0.127469, 0.127535, 0.127595,
378  0.12765, 0.1277, 0.127745, 0.127784, 0.127819, 0.127848, 0.127872, 0.127892, 0.127906,
379  0.127915, 0.12792, 0.12792, 0.127915, 0.127905, 0.12789, 0.127871, 0.127847, 0.127819,
380  0.127786, 0.127749, 0.127707, 0.127661, 0.12761, 0.127555, 0.127496, 0.127432, 0.127364,
381  0.127292, 0.127216, 0.127136, 0.127052, 0.126963, 0.12687, 0.126774, 0.126673, 0.126569,
382  0.12646, 0.126348, 0.126232, 0.126112, 0.125989, 0.125861, 0.12573, 0.125594, 0.125456,
383  0.125314, 0.125168, 0.125019, 0.124866, 0.124709, 0.124549, 0.124385, 0.124219, 0.124049,
384  0.123875, 0.123697, 0.123517, 0.123333, 0.123146, 0.122956, 0.122762, 0.122565, 0.122365,
385  0.122162, 0.121956, 0.121746, 0.121534, 0.121318, 0.1211, 0.120878, 0.120653, 0.120425,
386  0.120195, 0.119962, 0.119725, 0.119485, 0.119243, 0.118998, 0.11875, 0.118499, 0.118245,
387  0.117989, 0.11773, 0.117468, 0.117203, 0.116936, 0.116666, 0.116393, 0.116118, 0.11584,
388  0.115559, 0.115276, 0.114991, 0.114702, 0.114411, 0.114118, 0.113822, 0.113523, 0.113222,
389  0.112919, 0.112613, 0.112305, 0.111995, 0.111682, 0.111366, 0.111049, 0.110729, 0.110406,
390  0.110082, 0.109755, 0.109425, 0.109094, 0.10876, 0.108424, 0.108086, 0.107746, 0.107403,
391  0.107059, 0.106711, 0.106362, 0.106012, 0.105658, 0.105302, 0.104945, 0.104585, 0.104223,
392  0.10386, 0.103494, 0.103126, 0.102756, 0.102384, 0.102011, 0.101634, 0.101257, 0.100877,
393  0.100495, 0.100112, 0.0997257, 0.0993382, 0.0989492, 0.0985574, 0.0981646, 0.0977694, 0.0973724,
394  0.0969742, 0.0965731, 0.096171, 0.0957667, 0.0953606, 0.0949533, 0.0945433, 0.0941323, 0.093719,
395  0.0933042, 0.0928879, 0.0924693, 0.0920498, 0.0916276, 0.0912044, 0.0907793, 0.0903524, 0.0899244,
396  0.0894938, 0.0890626, 0.0886288, 0.088194, 0.0877573, 0.087319, 0.0868794, 0.0864376, 0.0859952,
397  0.08555, 0.0851043, 0.0846562, 0.0842071, 0.0837563, 0.0833039, 0.0828502, 0.0823946, 0.0819382,
398  0.0814793, 0.08102, 0.0805581, 0.0800957, 0.079631, 0.0791655, 0.0786981, 0.0782296, 0.0777595,
399  0.0772879, 0.0768152, 0.0763406, 0.0758652, 0.0753877, 0.0749096, 0.0744293, 0.0739485, 0.0734653,
400  0.0729819, 0.0724959, 0.0720098, 0.0715212, 0.0710323, 0.0705411, 0.0700496, 0.0695557, 0.0690615,
401  0.0685651, 0.0680684, 0.0675694, 0.06707, 0.0665685, 0.0660666, 0.0655625, 0.0650582, 0.0645516,
402  0.0640448, 0.0635357, 0.0630264, 0.0625148, 0.0620032, 0.0614891, 0.0609751, 0.0604586, 0.0599421,
403  0.0594234, 0.0589044, 0.0583834, 0.0578619, 0.0573387, 0.0568148, 0.0562895, 0.0557632, 0.0552357,
404  0.0547069, 0.0541773, 0.0536462, 0.0531145, 0.052581, 0.0520472, 0.0515114, 0.0509755, 0.0504374,
405  0.0498992, 0.0493591, 0.0488185, 0.0482765, 0.0477336, 0.0471897, 0.0466445, 0.0460987, 0.0455512,
406  0.0450036, 0.0444538, 0.0439039, 0.0433523, 0.0428001, 0.0422467, 0.0416923, 0.0411372, 0.0405805,
407  0.0400237, 0.0394648, 0.0389059, 0.0383452, 0.037784, 0.0372217, 0.0366583, 0.0360944, 0.0355288,
408  0.0349632, 0.0343955, 0.0338277, 0.0332586, 0.0326885, 0.0321179, 0.0315457, 0.0309735, 0.0303993,
409  0.0298249, 0.0292493, 0.0286727, 0.0280957, 0.027517, 0.0269383, 0.0263578, 0.025777, 0.0251952,
410  0.0246122, 0.0240291, 0.023444, 0.022859, 0.0222725, 0.0216853, 0.0210977, 0.0205084, 0.0199191,
411  0.0193282, 0.0187368, 0.0181447, 0.0175513, 0.0169579, 0.0163626, 0.0157671, 0.0151708, 0.0145732,
412  0.0139757, 0.0133763, 0.0127767, 0.0121762, 0.0115746, 0.010973, 0.0103695, 0.00976587, 0.00916142,
413  0.00855578, 0.00795015, 0.00734277, 0.00673513, 0.00612685, 0.00551723, 0.00490761, 0.00429648, 0.00368488,
414  0.00307291, 0.00245935, 0.00184578, 0.00123104, 0.000615521, 0},
415 
416  {0, 0.00179287, 0.00359052, 0.00539216, 0.00719704, 0.00900437, 0.0108134, 0.0126233, 0.0144332,
417  0.0162425, 0.0180503, 0.0198558, 0.0216583, 0.023457, 0.0252512, 0.0270402, 0.0288232, 0.0305995,
418  0.0323685, 0.0341296, 0.035882, 0.037625, 0.0393583, 0.0410813, 0.0427931, 0.0444934, 0.0461819,
419  0.0478578, 0.0495207, 0.0511703, 0.0528061, 0.0544276, 0.0560349, 0.0576269, 0.059204, 0.0607656,
420  0.0623113, 0.0638413, 0.0653548, 0.0668521, 0.0683326, 0.0697965, 0.0712434, 0.0726733, 0.0740862,
421  0.0754815, 0.0768599, 0.0782206, 0.0795639, 0.0808901, 0.0821985, 0.0834894, 0.084763, 0.0860194,
422  0.0872577, 0.0884789, 0.0896829, 0.0908698, 0.0920394, 0.0931915, 0.0943266, 0.0954448, 0.0965462,
423  0.0976309, 0.0986989, 0.0997503, 0.100785, 0.101804, 0.102806, 0.103793, 0.104763, 0.105717,
424  0.106656, 0.10758, 0.108488, 0.10938, 0.110258, 0.111121, 0.111968, 0.112801, 0.113619,
425  0.114424, 0.115214, 0.11599, 0.116751, 0.117499, 0.118233, 0.118954, 0.119661, 0.120355,
426  0.121037, 0.121705, 0.12236, 0.123003, 0.123633, 0.124251, 0.124856, 0.12545, 0.126032,
427  0.126601, 0.127159, 0.127705, 0.12824, 0.128764, 0.129277, 0.129778, 0.130269, 0.130749,
428  0.131218, 0.131677, 0.132125, 0.132563, 0.132991, 0.133408, 0.133816, 0.134214, 0.134602,
429  0.134982, 0.13535, 0.13571, 0.136061, 0.136402, 0.136734, 0.137058, 0.137372, 0.137678,
430  0.137975, 0.138263, 0.138543, 0.138815, 0.139078, 0.139333, 0.13958, 0.139819, 0.140051,
431  0.140274, 0.140489, 0.140697, 0.140898, 0.141091, 0.141276, 0.141454, 0.141625, 0.141789,
432  0.141946, 0.142095, 0.142238, 0.142373, 0.142502, 0.142625, 0.14274, 0.14285, 0.142952,
433  0.143049, 0.143138, 0.143222, 0.143299, 0.14337, 0.143435, 0.143493, 0.143546, 0.143593,
434  0.143635, 0.14367, 0.1437, 0.143723, 0.143742, 0.143754, 0.143762, 0.143763, 0.14376,
435  0.143751, 0.143736, 0.143717, 0.143692, 0.143662, 0.143627, 0.143587, 0.143542, 0.143492,
436  0.143437, 0.143377, 0.143313, 0.143243, 0.143169, 0.143091, 0.143008, 0.142919, 0.142827,
437  0.14273, 0.142628, 0.142522, 0.142412, 0.142297, 0.142179, 0.142056, 0.141928, 0.141797,
438  0.141661, 0.141521, 0.141377, 0.141229, 0.141078, 0.140922, 0.140762, 0.140598, 0.14043,
439  0.140259, 0.140084, 0.139905, 0.139722, 0.139536, 0.139346, 0.139153, 0.138956, 0.138754,
440  0.13855, 0.138342, 0.138131, 0.137916, 0.137698, 0.137476, 0.137251, 0.137023, 0.136791,
441  0.136556, 0.136318, 0.136077, 0.135832, 0.135584, 0.135333, 0.13508, 0.134822, 0.134562,
442  0.134299, 0.134033, 0.133763, 0.133491, 0.133216, 0.132938, 0.132656, 0.132372, 0.132086,
443  0.131796, 0.131503, 0.131208, 0.13091, 0.130609, 0.130305, 0.129999, 0.12969, 0.129378,
444  0.129064, 0.128747, 0.128427, 0.128105, 0.12778, 0.127453, 0.127123, 0.126791, 0.126456,
445  0.126119, 0.125779, 0.125436, 0.125092, 0.124744, 0.124395, 0.124043, 0.123689, 0.123332,
446  0.122974, 0.122612, 0.122248, 0.121883, 0.121514, 0.121144, 0.120771, 0.120396, 0.12002,
447  0.11964, 0.119259, 0.118876, 0.11849, 0.118102, 0.117712, 0.11732, 0.116926, 0.11653,
448  0.116132, 0.115731, 0.115329, 0.114925, 0.114518, 0.114111, 0.1137, 0.113288, 0.112874,
449  0.112457, 0.11204, 0.111619, 0.111198, 0.110774, 0.110348, 0.109921, 0.109491, 0.109061,
450  0.108627, 0.108193, 0.107756, 0.107317, 0.106877, 0.106435, 0.105992, 0.105546, 0.105099,
451  0.10465, 0.104199, 0.103747, 0.103293, 0.102837, 0.102379, 0.101921, 0.10146, 0.100998,
452  0.100533, 0.100068, 0.0996003, 0.0991318, 0.098661, 0.0981892, 0.0977154, 0.0972402, 0.0967635,
453  0.0962851, 0.0958054, 0.0953239, 0.0948412, 0.0943565, 0.0938709, 0.0933832, 0.0928947, 0.0924039,
454  0.0919125, 0.0914187, 0.0909245, 0.0904278, 0.0899306, 0.089431, 0.0889311, 0.0884286, 0.0879258,
455  0.0874206, 0.086915, 0.0864071, 0.0858986, 0.085388, 0.0848768, 0.0843635, 0.0838496, 0.0833337,
456  0.082817, 0.0822986, 0.0817791, 0.0812582, 0.080736, 0.0802126, 0.0796877, 0.0791619, 0.0786344,
457  0.0781062, 0.0775759, 0.0770454, 0.0765125, 0.0759796, 0.0754442, 0.0749087, 0.074371, 0.0738328,
458  0.073293, 0.0727522, 0.0722102, 0.0716668, 0.0711227, 0.0705768, 0.0700306, 0.0694821, 0.0689335,
459  0.0683828, 0.0678317, 0.067279, 0.0667254, 0.0661708, 0.0656147, 0.0650582, 0.0644995, 0.0639408,
460  0.06338, 0.0628188, 0.0622562, 0.0616926, 0.0611282, 0.0605621, 0.059996, 0.0594274, 0.0588589,
461  0.0582886, 0.0577176, 0.0571458, 0.0565724, 0.0559989, 0.0554231, 0.0548473, 0.0542699, 0.0536916,
462  0.0531128, 0.0525321, 0.0519515, 0.0513688, 0.0507858, 0.0502017, 0.0496163, 0.0490308, 0.0484431,
463  0.0478554, 0.0472662, 0.0466762, 0.0460857, 0.0454933, 0.044901, 0.0443069, 0.0437123, 0.043117,
464  0.0425201, 0.0419231, 0.0413244, 0.0407252, 0.0401253, 0.0395238, 0.0389223, 0.0383191, 0.0377153,
465  0.037111, 0.036505, 0.0358991, 0.0352915, 0.0346833, 0.0340747, 0.0334643, 0.032854, 0.0322422,
466  0.0316296, 0.0310169, 0.0304022, 0.0297874, 0.0291717, 0.0285547, 0.0279378, 0.0273191, 0.0267,
467  0.0260804, 0.0254592, 0.0248379, 0.0242154, 0.0235921, 0.0229687, 0.0223434, 0.0217179, 0.0210918,
468  0.0204642, 0.0198366, 0.0192078, 0.0185781, 0.0179484, 0.0173169, 0.0166851, 0.016053, 0.0154192,
469  0.0147853, 0.0141506, 0.0135147, 0.0128787, 0.0122414, 0.0116035, 0.0109655, 0.0103257, 0.00968566,
470  0.00904539, 0.00840336, 0.00776132, 0.00711861, 0.00647456, 0.00583051, 0.00518541, 0.00453936, 0.00389331,
471  0.00324586, 0.00259782, 0.00194978, 0.00130004, 0.00065002, 0},
472 
473  {0, 0.00232214, 0.00464938, 0.00698026, 0.00931337, 0.0116471, 0.0139801, 0.0163108, 0.0186377,
474  0.0209595, 0.0232746, 0.0255817, 0.0278796, 0.0301668, 0.0324419, 0.034704, 0.036952, 0.0391842,
475  0.0414, 0.0435984, 0.0457784, 0.0479391, 0.0500795, 0.0521989, 0.0542966, 0.056372, 0.0584245,
476  0.0604535, 0.0624585, 0.0644391, 0.0663949, 0.0683255, 0.0702308, 0.0721103, 0.0739639, 0.0757912,
477  0.0775922, 0.0793672, 0.0811159, 0.082838, 0.0845335, 0.0862031, 0.0878462, 0.0894628, 0.091054,
478  0.0926184, 0.0941575, 0.0956705, 0.0971585, 0.0986207, 0.100058, 0.10147, 0.102858, 0.104222,
479  0.105561, 0.106876, 0.108168, 0.109436, 0.110681, 0.111903, 0.113103, 0.11428, 0.115435,
480  0.116568, 0.11768, 0.118771, 0.119841, 0.120891, 0.12192, 0.122929, 0.123918, 0.124887,
481  0.125838, 0.126769, 0.127682, 0.128576, 0.129452, 0.13031, 0.131151, 0.131975, 0.13278,
482  0.133569, 0.134342, 0.135099, 0.135839, 0.136562, 0.137271, 0.137964, 0.138642, 0.139304,
483  0.139953, 0.140586, 0.141205, 0.14181, 0.142401, 0.142978, 0.143541, 0.144092, 0.144629,
484  0.145153, 0.145665, 0.146164, 0.14665, 0.147124, 0.147586, 0.148037, 0.148474, 0.148902,
485  0.149317, 0.149721, 0.150114, 0.150496, 0.150868, 0.151228, 0.151578, 0.151919, 0.152248,
486  0.152568, 0.152878, 0.153177, 0.153467, 0.153748, 0.15402, 0.154281, 0.154534, 0.154777,
487  0.155013, 0.155238, 0.155455, 0.155664, 0.155864, 0.156056, 0.156239, 0.156414, 0.156581,
488  0.156741, 0.156893, 0.157036, 0.157172, 0.1573, 0.157421, 0.157534, 0.157641, 0.15774,
489  0.157832, 0.157917, 0.157995, 0.158066, 0.15813, 0.158187, 0.158238, 0.158282, 0.15832,
490  0.158351, 0.158376, 0.158395, 0.158407, 0.158414, 0.158414, 0.158409, 0.158397, 0.15838,
491  0.158357, 0.158328, 0.158293, 0.158253, 0.158208, 0.158157, 0.1581, 0.158038, 0.157971,
492  0.157899, 0.157821, 0.157738, 0.15765, 0.157557, 0.157459, 0.157356, 0.157249, 0.157136,
493  0.15702, 0.156897, 0.15677, 0.156639, 0.156503, 0.156363, 0.156218, 0.156069, 0.155915,
494  0.155757, 0.155594, 0.155427, 0.155257, 0.155082, 0.154903, 0.154719, 0.154531, 0.15434,
495  0.154145, 0.153945, 0.153742, 0.153534, 0.153323, 0.153109, 0.15289, 0.152667, 0.152441,
496  0.152212, 0.151979, 0.151741, 0.1515, 0.151256, 0.151009, 0.150758, 0.150503, 0.150245,
497  0.149984, 0.149719, 0.149451, 0.14918, 0.148906, 0.148627, 0.148346, 0.148063, 0.147775,
498  0.147484, 0.147191, 0.146894, 0.146594, 0.146291, 0.145986, 0.145677, 0.145365, 0.145051,
499  0.144733, 0.144413, 0.14409, 0.143764, 0.143434, 0.143103, 0.142769, 0.142431, 0.142092,
500  0.141749, 0.141404, 0.141056, 0.140705, 0.140352, 0.139997, 0.139638, 0.139277, 0.138914,
501  0.138548, 0.13818, 0.137809, 0.137435, 0.13706, 0.136682, 0.136301, 0.135919, 0.135533,
502  0.135146, 0.134756, 0.134363, 0.133969, 0.133572, 0.133173, 0.132772, 0.132368, 0.131963,
503  0.131554, 0.131144, 0.130732, 0.130317, 0.129901, 0.129482, 0.129062, 0.128638, 0.128214,
504  0.127787, 0.127358, 0.126927, 0.126493, 0.126059, 0.125621, 0.125183, 0.124742, 0.124299,
505  0.123854, 0.123407, 0.122959, 0.122508, 0.122056, 0.121601, 0.121145, 0.120687, 0.120227,
506  0.119766, 0.119302, 0.118837, 0.11837, 0.117902, 0.117431, 0.116959, 0.116484, 0.116009,
507  0.115531, 0.115053, 0.114571, 0.114089, 0.113605, 0.113119, 0.112632, 0.112143, 0.111652,
508  0.11116, 0.110666, 0.11017, 0.109673, 0.109174, 0.108674, 0.108172, 0.107669, 0.107164,
509  0.106658, 0.10615, 0.10564, 0.10513, 0.104617, 0.104103, 0.103588, 0.103071, 0.102552,
510  0.102033, 0.101512, 0.10099, 0.100465, 0.0999401, 0.0994127, 0.098885, 0.098355, 0.0978242,
511  0.0972917, 0.0967581, 0.096223, 0.0956865, 0.095149, 0.0946096, 0.0940698, 0.0935275, 0.0929852,
512  0.0924401, 0.091895, 0.0913477, 0.0907997, 0.0902502, 0.0896994, 0.0891477, 0.0885942, 0.0880403,
513  0.087484, 0.0869276, 0.086369, 0.0858099, 0.0852492, 0.0846874, 0.0841247, 0.0835601, 0.0829956,
514  0.0824283, 0.081861, 0.0812919, 0.0807219, 0.080151, 0.0795784, 0.0790057, 0.0784304, 0.0778551,
515  0.077278, 0.0767001, 0.0761214, 0.0755408, 0.0749603, 0.0743773, 0.0737942, 0.0732097, 0.0726239,
516  0.0720379, 0.0714496, 0.0708612, 0.0702712, 0.0696803, 0.0690889, 0.0684954, 0.067902, 0.0673066,
517  0.0667107, 0.066114, 0.0655155, 0.064917, 0.0643166, 0.0637156, 0.063114, 0.0625105, 0.0619071,
518  0.0613017, 0.0606958, 0.0600894, 0.059481, 0.0588727, 0.0582627, 0.0576519, 0.0570409, 0.0564277,
519  0.0558145, 0.0552, 0.0545844, 0.0539688, 0.0533511, 0.0527331, 0.0521144, 0.051494, 0.0508737,
520  0.0502518, 0.0496291, 0.0490063, 0.0483813, 0.0477562, 0.0471304, 0.046503, 0.0458757, 0.0452468,
521  0.0446171, 0.0439874, 0.0433555, 0.0427235, 0.042091, 0.0414568, 0.0408225, 0.0401871, 0.0395506,
522  0.0389141, 0.0382758, 0.0376371, 0.0369983, 0.0363573, 0.0357163, 0.0350748, 0.0344316, 0.0337884,
523  0.0331443, 0.0324988, 0.0318534, 0.0312067, 0.0305591, 0.0299114, 0.0292622, 0.0286124, 0.0279626,
524  0.0273108, 0.0266588, 0.0260068, 0.0253527, 0.0246986, 0.0240442, 0.0233879, 0.0227317, 0.0220749,
525  0.0214165, 0.0207582, 0.0200992, 0.0194387, 0.0187782, 0.0181169, 0.0174543, 0.0167917, 0.0161284,
526  0.0154637, 0.014799, 0.0141335, 0.0134667, 0.0128, 0.0121324, 0.0114636, 0.0107948, 0.0101252,
527  0.00945437, 0.00878352, 0.00811197, 0.00743909, 0.00676621, 0.00609275, 0.00541785, 0.00474295, 0.00406763,
528  0.00339073, 0.00271382, 0.00203669, 0.00135779, 0.000678897, 0},
529 
530  {0, 0.00295868, 0.00592246, 0.00888848, 0.0118539, 0.014816, 0.0177719, 0.020719, 0.0236545,
531  0.0265758, 0.0294806, 0.0323664, 0.035231, 0.0380722, 0.0408879, 0.0436763, 0.0464357, 0.0491646,
532  0.0518614, 0.0545245, 0.0571534, 0.0597465, 0.062303, 0.0648223, 0.0673034, 0.069746, 0.0721497,
533  0.0745137, 0.0768385, 0.0791233, 0.081368, 0.083573, 0.0857383, 0.0878639, 0.08995, 0.0919967,
534  0.0940044, 0.0959733, 0.0979038, 0.0997963, 0.101651, 0.103469, 0.105251, 0.106997, 0.108706,
535  0.11038, 0.112021, 0.113626, 0.115199, 0.116738, 0.118245, 0.11972, 0.121164, 0.122576,
536  0.12396, 0.125312, 0.126635, 0.127931, 0.129197, 0.130436, 0.131647, 0.132833, 0.133992,
537  0.135125, 0.136233, 0.137316, 0.138375, 0.13941, 0.140421, 0.14141, 0.142376, 0.14332,
538  0.144242, 0.145143, 0.146023, 0.146883, 0.147721, 0.148541, 0.149341, 0.150122, 0.150884,
539  0.151627, 0.152353, 0.153061, 0.153751, 0.154424, 0.155081, 0.155721, 0.156344, 0.156952,
540  0.157543, 0.15812, 0.158681, 0.159228, 0.159759, 0.160277, 0.16078, 0.161269, 0.161745,
541  0.162207, 0.162655, 0.163091, 0.163514, 0.163925, 0.164322, 0.164708, 0.165082, 0.165443,
542  0.165793, 0.166132, 0.166459, 0.166775, 0.167081, 0.167375, 0.167659, 0.167933, 0.168195,
543  0.168448, 0.168691, 0.168925, 0.169148, 0.169361, 0.169566, 0.169761, 0.169947, 0.170124,
544  0.170292, 0.170451, 0.170601, 0.170744, 0.170877, 0.171003, 0.17112, 0.171229, 0.17133,
545  0.171423, 0.171508, 0.171586, 0.171656, 0.171719, 0.171775, 0.171823, 0.171864, 0.171898,
546  0.171926, 0.171946, 0.171959, 0.171966, 0.171966, 0.171959, 0.171946, 0.171926, 0.171901,
547  0.171868, 0.17183, 0.171786, 0.171736, 0.171679, 0.171617, 0.171549, 0.171476, 0.171396,
548  0.171312, 0.171221, 0.171126, 0.171025, 0.170918, 0.170806, 0.170689, 0.170566, 0.170439,
549  0.170307, 0.170169, 0.170027, 0.16988, 0.169728, 0.169571, 0.169409, 0.169243, 0.169073,
550  0.168897, 0.168717, 0.168532, 0.168343, 0.16815, 0.167953, 0.167751, 0.167544, 0.167334,
551  0.16712, 0.166901, 0.166678, 0.166451, 0.166221, 0.165986, 0.165747, 0.165505, 0.165258,
552  0.165009, 0.164754, 0.164496, 0.164235, 0.163971, 0.163702, 0.163429, 0.163154, 0.162875,
553  0.162591, 0.162305, 0.162016, 0.161723, 0.161426, 0.161127, 0.160824, 0.160517, 0.160208,
554  0.159895, 0.159579, 0.15926, 0.158938, 0.158612, 0.158284, 0.157953, 0.157618, 0.157281,
555  0.156941, 0.156597, 0.156251, 0.155903, 0.15555, 0.155196, 0.154838, 0.154478, 0.154115,
556  0.153749, 0.15338, 0.15301, 0.152635, 0.152259, 0.15188, 0.151498, 0.151114, 0.150727,
557  0.150337, 0.149946, 0.149551, 0.149154, 0.148754, 0.148352, 0.147949, 0.147541, 0.147133,
558  0.146721, 0.146307, 0.145892, 0.145473, 0.145053, 0.144629, 0.144204, 0.143777, 0.143347,
559  0.142916, 0.142481, 0.142046, 0.141607, 0.141166, 0.140724, 0.140279, 0.139832, 0.139383,
560  0.138933, 0.138479, 0.138025, 0.137567, 0.137109, 0.136647, 0.136185, 0.13572, 0.135253,
561  0.134784, 0.134313, 0.133841, 0.133366, 0.13289, 0.132412, 0.131932, 0.13145, 0.130967,
562  0.130481, 0.129994, 0.129504, 0.129014, 0.128521, 0.128027, 0.12753, 0.127033, 0.126533,
563  0.126033, 0.125529, 0.125025, 0.124518, 0.124011, 0.123501, 0.12299, 0.122477, 0.121963,
564  0.121447, 0.12093, 0.12041, 0.11989, 0.119367, 0.118843, 0.118318, 0.117791, 0.117263,
565  0.116733, 0.116201, 0.115668, 0.115134, 0.114598, 0.114061, 0.113522, 0.112982, 0.11244,
566  0.111898, 0.111353, 0.110807, 0.11026, 0.109711, 0.109161, 0.108609, 0.108057, 0.107502,
567  0.106947, 0.10639, 0.105832, 0.105272, 0.104712, 0.10415, 0.103586, 0.103022, 0.102455,
568  0.101889, 0.10132, 0.10075, 0.100179, 0.0996065, 0.0990336, 0.0984582, 0.0978827, 0.0973051,
569  0.0967267, 0.0961473, 0.0955661, 0.0949849, 0.0944009, 0.0938169, 0.0932312, 0.0926444, 0.0920571,
570  0.0914674, 0.0908778, 0.0902861, 0.0896937, 0.0891006, 0.0885054, 0.0879102, 0.0873128, 0.0867149,
571  0.0861161, 0.0855155, 0.0849148, 0.084312, 0.0837086, 0.0831046, 0.0824985, 0.0818925, 0.0812845,
572  0.0806758, 0.0800666, 0.0794552, 0.0788439, 0.0782309, 0.077617, 0.077003, 0.0763864, 0.0757698,
573  0.0751521, 0.0745329, 0.0739137, 0.0732926, 0.0726708, 0.0720487, 0.0714244, 0.0708001, 0.0701746,
574  0.0695477, 0.0689209, 0.068292, 0.0676627, 0.0670331, 0.0664012, 0.0657693, 0.0651365, 0.0645021,
575  0.0638678, 0.0632318, 0.062595, 0.0619582, 0.0613192, 0.0606799, 0.0600403, 0.0593986, 0.0587569,
576  0.0581144, 0.0574703, 0.0568261, 0.0561808, 0.0555342, 0.0548877, 0.0542395, 0.0535906, 0.0529417,
577  0.0522908, 0.0516395, 0.0509882, 0.0503347, 0.049681, 0.0490272, 0.0483713, 0.0477153, 0.0470589,
578  0.0464006, 0.0457423, 0.0450835, 0.0444229, 0.0437623, 0.043101, 0.0424382, 0.0417753, 0.0411116,
579  0.0404465, 0.0397813, 0.0391154, 0.038448, 0.0377806, 0.0371125, 0.0364428, 0.0357732, 0.0351028,
580  0.034431, 0.0337591, 0.0330867, 0.0324126, 0.0317385, 0.031064, 0.0303878, 0.0297115, 0.029035,
581  0.0283566, 0.0276781, 0.0269997, 0.0263191, 0.0256385, 0.0249579, 0.0242754, 0.0235927, 0.0229099,
582  0.0222257, 0.0215408, 0.0208559, 0.0201699, 0.0194829, 0.0187959, 0.0181082, 0.0174191, 0.01673,
583  0.0160406, 0.0153494, 0.0146583, 0.0139671, 0.013274, 0.0125808, 0.0118875, 0.011193, 0.0104977,
584  0.00980235, 0.00910632, 0.00840896, 0.0077116, 0.00701415, 0.00631477, 0.00561538, 0.00491599, 0.00421515,
585  0.00351375, 0.00281235, 0.00211021, 0.0014068, 0.000703402, 0},
586 
587  {0, 0.00372622, 0.00745647, 0.0111854, 0.0149078, 0.0186181, 0.0223116, 0.0259832, 0.029628,
588  0.0332419, 0.0368207, 0.0403603, 0.0438576, 0.0473091, 0.0507121, 0.0540643, 0.0573628, 0.0606066,
589  0.0637939, 0.0669235, 0.0699942, 0.0730053, 0.0759564, 0.078847, 0.0816773, 0.0844474, 0.0871578,
590  0.0898082, 0.0923994, 0.0949326, 0.0974072, 0.0998253, 0.102187, 0.104493, 0.106745, 0.108944,
591  0.11109, 0.113184, 0.115229, 0.117224, 0.11917, 0.12107, 0.122923, 0.12473, 0.126494,
592  0.128214, 0.129893, 0.131529, 0.133126, 0.134684, 0.136203, 0.137684, 0.139129, 0.140538,
593  0.141912, 0.143252, 0.144558, 0.145833, 0.147075, 0.148286, 0.149467, 0.150618, 0.15174,
594  0.152834, 0.153901, 0.15494, 0.155953, 0.15694, 0.157902, 0.158839, 0.159751, 0.16064,
595  0.161506, 0.16235, 0.163172, 0.163972, 0.16475, 0.165507, 0.166245, 0.166963, 0.16766,
596  0.168339, 0.169, 0.169641, 0.170265, 0.170871, 0.171459, 0.172032, 0.172587, 0.173126,
597  0.173649, 0.174157, 0.174648, 0.175126, 0.175587, 0.176035, 0.176468, 0.176888, 0.177293,
598  0.177685, 0.178064, 0.178429, 0.178782, 0.179123, 0.17945, 0.179766, 0.18007, 0.180362,
599  0.180643, 0.180912, 0.18117, 0.181417, 0.181653, 0.181879, 0.182094, 0.182298, 0.182493,
600  0.182678, 0.182853, 0.183019, 0.183174, 0.18332, 0.183457, 0.183585, 0.183705, 0.183815,
601  0.183917, 0.18401, 0.184095, 0.184171, 0.184239, 0.184299, 0.184351, 0.184396, 0.184432,
602  0.184461, 0.184483, 0.184497, 0.184504, 0.184504, 0.184496, 0.184482, 0.18446, 0.184432,
603  0.184397, 0.184356, 0.184308, 0.184253, 0.184192, 0.184125, 0.184052, 0.183973, 0.183887,
604  0.183795, 0.183697, 0.183594, 0.183484, 0.18337, 0.183249, 0.183124, 0.182993, 0.182855,
605  0.182713, 0.182565, 0.182412, 0.182255, 0.182092, 0.181924, 0.18175, 0.181572, 0.181389,
606  0.181202, 0.18101, 0.180813, 0.18061, 0.180404, 0.180193, 0.179979, 0.179758, 0.179534,
607  0.179305, 0.179073, 0.178835, 0.178594, 0.178348, 0.178099, 0.177845, 0.177587, 0.177325,
608  0.17706, 0.17679, 0.176516, 0.176239, 0.175958, 0.175673, 0.175384, 0.175092, 0.174796,
609  0.174496, 0.174194, 0.173887, 0.173577, 0.173263, 0.172947, 0.172626, 0.172302, 0.171976,
610  0.171645, 0.171311, 0.170975, 0.170634, 0.170291, 0.169945, 0.169595, 0.169243, 0.168888,
611  0.168528, 0.168167, 0.167802, 0.167435, 0.167065, 0.166691, 0.166315, 0.165936, 0.165554,
612  0.165169, 0.164782, 0.164391, 0.163999, 0.163603, 0.163205, 0.162804, 0.1624, 0.161995,
613  0.161585, 0.161175, 0.160761, 0.160344, 0.159926, 0.159504, 0.159081, 0.158654, 0.158226,
614  0.157795, 0.157362, 0.156927, 0.156488, 0.156048, 0.155605, 0.155161, 0.154713, 0.154264,
615  0.153813, 0.153359, 0.152903, 0.152445, 0.151985, 0.151522, 0.151058, 0.150591, 0.150123,
616  0.149652, 0.149179, 0.148704, 0.148227, 0.147748, 0.147268, 0.146785, 0.1463, 0.145813,
617  0.145324, 0.144834, 0.144341, 0.143847, 0.143351, 0.142853, 0.142353, 0.141851, 0.141348,
618  0.140843, 0.140335, 0.139826, 0.139315, 0.138803, 0.138289, 0.137773, 0.137255, 0.136736,
619  0.136215, 0.135692, 0.135168, 0.134641, 0.134114, 0.133584, 0.133054, 0.132521, 0.131987,
620  0.131451, 0.130914, 0.130375, 0.129834, 0.129292, 0.128749, 0.128204, 0.127657, 0.127109,
621  0.126559, 0.126009, 0.125455, 0.124902, 0.124346, 0.123789, 0.123231, 0.122671, 0.12211,
622  0.121547, 0.120984, 0.120417, 0.119851, 0.119283, 0.118713, 0.118142, 0.11757, 0.116997,
623  0.116421, 0.115845, 0.115267, 0.114688, 0.114109, 0.113527, 0.112945, 0.11236, 0.111775,
624  0.111188, 0.1106, 0.110012, 0.109421, 0.10883, 0.108237, 0.107643, 0.107048, 0.106451,
625  0.105854, 0.105255, 0.104655, 0.104055, 0.103452, 0.102849, 0.102244, 0.101638, 0.101032,
626  0.100423, 0.0998144, 0.0992041, 0.0985925, 0.0979809, 0.0973666, 0.0967521, 0.0961367, 0.0955194,
627  0.0949021, 0.0942828, 0.0936627, 0.0930423, 0.0924194, 0.0917966, 0.0911725, 0.0905469, 0.0899213,
628  0.0892935, 0.0886652, 0.0880366, 0.0874055, 0.0867744, 0.0861423, 0.0855086, 0.0848748, 0.0842393,
629  0.0836029, 0.0829665, 0.0823277, 0.0816886, 0.0810491, 0.0804074, 0.0797657, 0.0791231, 0.0784788,
630  0.0778345, 0.0771887, 0.0765418, 0.0758949, 0.0752462, 0.0745967, 0.0739472, 0.0732955, 0.0726435,
631  0.0719914, 0.0713369, 0.0706823, 0.0700275, 0.0693704, 0.0687133, 0.0680558, 0.0673962, 0.0667366,
632  0.0660764, 0.0654143, 0.0647522, 0.0640895, 0.0634249, 0.0627604, 0.0620951, 0.0614281, 0.0607611,
633  0.0600935, 0.059424, 0.0587546, 0.0580846, 0.0574128, 0.0567409, 0.0560686, 0.0553944, 0.0547202,
634  0.0540456, 0.0533691, 0.0526925, 0.0520158, 0.0513369, 0.0506579, 0.049979, 0.0492979, 0.0486166,
635  0.0479353, 0.0472522, 0.0465686, 0.045885, 0.0452, 0.0445141, 0.0438282, 0.0431413, 0.0424531,
636  0.0417649, 0.0410762, 0.0403858, 0.0396953, 0.0390049, 0.0383122, 0.0376195, 0.0369268, 0.0362324,
637  0.0355375, 0.0348426, 0.0341466, 0.0334495, 0.0327523, 0.0320548, 0.0313555, 0.0306561, 0.0299568,
638  0.0292556, 0.0285541, 0.0278526, 0.02715, 0.0264463, 0.0257426, 0.0250387, 0.0243328, 0.023627,
639  0.0229212, 0.0222138, 0.0215059, 0.0207979, 0.0200893, 0.0193792, 0.0186691, 0.0179591, 0.0172472,
640  0.016535, 0.0158228, 0.0151099, 0.0143956, 0.0136813, 0.0129671, 0.012251, 0.0115347, 0.0108183,
641  0.0101013, 0.00938289, 0.00866451, 0.00794613, 0.0072261, 0.00650568, 0.00578526, 0.00506437, 0.00434193,
642  0.00361949, 0.00289705, 0.00217335, 0.0014489, 0.000724449, 0},
643 
644  {0, 0.00465353, 0.00930808, 0.0139535, 0.0185797, 0.0231771, 0.0277365, 0.0322493, 0.0367076,
645  0.0411044, 0.045433, 0.0496882, 0.0538654, 0.0579605, 0.0619702, 0.065892, 0.0697243, 0.073466,
646  0.0771168, 0.0806756, 0.0841437, 0.0875206, 0.0908083, 0.0940077, 0.0971194, 0.100146, 0.103088,
647  0.105949, 0.108729, 0.111431, 0.114057, 0.116608, 0.119088, 0.121497, 0.123838, 0.126113,
648  0.128323, 0.13047, 0.132557, 0.134585, 0.136556, 0.138471, 0.140333, 0.142142, 0.143901,
649  0.14561, 0.147272, 0.148887, 0.150457, 0.151985, 0.153468, 0.154911, 0.156314, 0.157678,
650  0.159005, 0.160293, 0.161547, 0.162766, 0.163951, 0.165103, 0.166222, 0.167311, 0.168369,
651  0.169398, 0.170398, 0.17137, 0.172314, 0.173232, 0.174124, 0.17499, 0.175831, 0.176648,
652  0.177442, 0.178213, 0.178961, 0.179687, 0.180391, 0.181076, 0.181738, 0.182381, 0.183006,
653  0.183609, 0.184195, 0.184762, 0.185311, 0.185843, 0.186358, 0.186856, 0.187337, 0.187802,
654  0.188251, 0.188685, 0.189104, 0.189507, 0.189897, 0.190271, 0.190632, 0.190979, 0.191312,
655  0.191632, 0.19194, 0.192234, 0.192516, 0.192786, 0.193044, 0.193289, 0.193523, 0.193746,
656  0.193958, 0.194158, 0.194347, 0.194526, 0.194694, 0.194853, 0.195001, 0.195139, 0.195267,
657  0.195385, 0.195494, 0.195594, 0.195684, 0.195766, 0.195839, 0.195903, 0.195958, 0.196005,
658  0.196044, 0.196074, 0.196096, 0.19611, 0.196116, 0.196115, 0.196106, 0.196089, 0.196066,
659  0.196034, 0.195996, 0.19595, 0.195898, 0.195838, 0.195772, 0.195699, 0.195619, 0.195533,
660  0.195441, 0.195342, 0.195237, 0.195126, 0.195009, 0.194885, 0.194756, 0.194621, 0.19448,
661  0.194333, 0.194181, 0.194024, 0.19386, 0.193691, 0.193517, 0.193338, 0.193154, 0.192965,
662  0.192769, 0.192569, 0.192365, 0.192156, 0.191941, 0.191722, 0.191497, 0.191269, 0.191036,
663  0.190798, 0.190555, 0.190309, 0.190058, 0.189802, 0.189542, 0.189278, 0.18901, 0.188737,
664  0.18846, 0.18818, 0.187895, 0.187606, 0.187313, 0.187017, 0.186716, 0.186411, 0.186104,
665  0.185792, 0.185476, 0.185157, 0.184835, 0.184508, 0.184178, 0.183845, 0.183508, 0.183168,
666  0.182824, 0.182476, 0.182127, 0.181773, 0.181415, 0.181056, 0.180692, 0.180325, 0.179956,
667  0.179583, 0.179207, 0.178828, 0.178446, 0.178061, 0.177673, 0.177282, 0.176889, 0.176491,
668  0.176092, 0.175689, 0.175284, 0.174877, 0.174466, 0.174053, 0.173636, 0.173218, 0.172796,
669  0.172372, 0.171946, 0.171516, 0.171085, 0.17065, 0.170213, 0.169774, 0.169332, 0.168888,
670  0.168441, 0.167993, 0.16754, 0.167087, 0.16663, 0.166172, 0.165711, 0.165248, 0.164783,
671  0.164315, 0.163846, 0.163373, 0.162899, 0.162422, 0.161945, 0.161463, 0.160981, 0.160495,
672  0.160009, 0.159519, 0.159029, 0.158535, 0.158041, 0.157543, 0.157044, 0.156542, 0.15604,
673  0.155534, 0.155028, 0.154518, 0.154009, 0.153495, 0.152981, 0.152464, 0.151947, 0.151426,
674  0.150904, 0.15038, 0.149855, 0.149328, 0.148799, 0.148268, 0.147736, 0.147201, 0.146665,
675  0.146128, 0.145588, 0.145048, 0.144505, 0.143961, 0.143415, 0.142868, 0.142318, 0.141768,
676  0.141215, 0.140661, 0.140106, 0.139549, 0.138991, 0.13843, 0.137869, 0.137306, 0.136741,
677  0.136175, 0.135607, 0.135039, 0.134468, 0.133896, 0.133322, 0.132748, 0.132172, 0.131593,
678  0.131015, 0.130434, 0.129853, 0.129269, 0.128684, 0.128099, 0.127511, 0.126923, 0.126332,
679  0.125741, 0.125149, 0.124554, 0.12396, 0.123363, 0.122765, 0.122166, 0.121566, 0.120965,
680  0.120361, 0.119757, 0.119152, 0.118545, 0.117938, 0.117329, 0.116719, 0.116108, 0.115495,
681  0.114881, 0.114266, 0.11365, 0.113033, 0.112414, 0.111795, 0.111175, 0.110552, 0.10993,
682  0.109306, 0.10868, 0.108055, 0.107427, 0.106799, 0.106169, 0.105538, 0.104907, 0.104274,
683  0.10364, 0.103006, 0.102369, 0.101732, 0.101095, 0.100455, 0.0998157, 0.0991747, 0.0985322,
684  0.0978897, 0.0972453, 0.0966001, 0.0959548, 0.0953071, 0.0946591, 0.0940109, 0.0933601, 0.0927093,
685  0.0920581, 0.0914045, 0.090751, 0.0900967, 0.0894404, 0.0887842, 0.0881269, 0.087468, 0.086809,
686  0.0861489, 0.0854873, 0.0848256, 0.0841627, 0.0834985, 0.0828342, 0.0821686, 0.0815017, 0.0808348,
687  0.0801666, 0.0794971, 0.0788275, 0.0781568, 0.0774847, 0.0768126, 0.0761394, 0.0754648, 0.0747901,
688  0.0741145, 0.0734373, 0.0727601, 0.0720823, 0.0714025, 0.0707228, 0.0700427, 0.0693605, 0.0686783,
689  0.067996, 0.0673113, 0.0666266, 0.0659419, 0.0652552, 0.064568, 0.0638808, 0.0631921, 0.0625025,
690  0.0618129, 0.0611223, 0.0604302, 0.0597382, 0.0590457, 0.0583513, 0.0576568, 0.0569624, 0.0562658,
691  0.055569, 0.0548721, 0.0541739, 0.0534747, 0.0527755, 0.0520757, 0.0513742, 0.0506726, 0.049971,
692  0.0492674, 0.0485635, 0.0478596, 0.0471545, 0.0464483, 0.0457421, 0.0450357, 0.0443272, 0.0436187,
693  0.0429102, 0.0422002, 0.0414894, 0.0407786, 0.0400674, 0.0393543, 0.0386413, 0.0379283, 0.0372136,
694  0.0364984, 0.0357831, 0.0350674, 0.0343499, 0.0336324, 0.032915, 0.032196, 0.0314763, 0.0307567,
695  0.0300367, 0.0293149, 0.028593, 0.0278712, 0.0271482, 0.0264242, 0.0257002, 0.0249762, 0.0242502,
696  0.023524, 0.0227979, 0.0220712, 0.0213429, 0.0206146, 0.0198863, 0.0191568, 0.0184264, 0.017696,
697  0.0169656, 0.0162334, 0.0155009, 0.0147684, 0.0140356, 0.0133011, 0.0125665, 0.0118319, 0.0110966,
698  0.01036, 0.00962335, 0.00888672, 0.00814893, 0.00741025, 0.00667158, 0.00593291, 0.00519273, 0.00445202,
699  0.00371132, 0.00297062, 0.00222814, 0.00148543, 0.000742713, 0},
700 
701  {0, 0.00577596, 0.0115458, 0.0172904, 0.0229911, 0.0286301, 0.034192, 0.0396622, 0.045029,
702  0.0502812, 0.0554111, 0.0604123, 0.06528, 0.0700113, 0.0746034, 0.0790576, 0.0833726, 0.087551,
703  0.0915947, 0.0955061, 0.0992885, 0.102945, 0.106479, 0.109895, 0.113196, 0.116386, 0.11947,
704  0.12245, 0.125331, 0.128116, 0.130809, 0.133412, 0.135931, 0.138367, 0.140724, 0.143005,
705  0.145212, 0.147348, 0.149416, 0.151419, 0.153359, 0.155238, 0.157058, 0.158821, 0.160529,
706  0.162185, 0.163789, 0.165344, 0.166852, 0.168314, 0.169731, 0.171105, 0.172436, 0.173728,
707  0.174982, 0.176196, 0.177373, 0.178515, 0.179623, 0.180697, 0.181738, 0.182748, 0.183727,
708  0.184676, 0.185596, 0.186487, 0.187352, 0.188189, 0.189001, 0.189787, 0.190548, 0.191285,
709  0.192, 0.19269, 0.193359, 0.194007, 0.194631, 0.195237, 0.195822, 0.196386, 0.196933,
710  0.197459, 0.197969, 0.198459, 0.198933, 0.199388, 0.199827, 0.20025, 0.200656, 0.201048,
711  0.201423, 0.201784, 0.20213, 0.20246, 0.202778, 0.203081, 0.20337, 0.203646, 0.20391,
712  0.20416, 0.204398, 0.204623, 0.204837, 0.205039, 0.205229, 0.205407, 0.205574, 0.205731,
713  0.205876, 0.206012, 0.206136, 0.206249, 0.206353, 0.206447, 0.206532, 0.206607, 0.206673,
714  0.206729, 0.206776, 0.206815, 0.206844, 0.206865, 0.206877, 0.206881, 0.206877, 0.206865,
715  0.206844, 0.206816, 0.20678, 0.206736, 0.206685, 0.206627, 0.206561, 0.206488, 0.206408,
716  0.206321, 0.206228, 0.206127, 0.206021, 0.205907, 0.205786, 0.205659, 0.205526, 0.205387,
717  0.205243, 0.205092, 0.204935, 0.204771, 0.204602, 0.204428, 0.204248, 0.204063, 0.203871,
718  0.203674, 0.203472, 0.203265, 0.203053, 0.202836, 0.202613, 0.202385, 0.202153, 0.201916,
719  0.201673, 0.201425, 0.201174, 0.200918, 0.200656, 0.200391, 0.200121, 0.199847, 0.199568,
720  0.199285, 0.198998, 0.198705, 0.198409, 0.19811, 0.197806, 0.197497, 0.197186, 0.19687,
721  0.196549, 0.196226, 0.195899, 0.195567, 0.195232, 0.194894, 0.19455, 0.194205, 0.193855,
722  0.193502, 0.193146, 0.192785, 0.192422, 0.192056, 0.191685, 0.191311, 0.190935, 0.190554,
723  0.190171, 0.189785, 0.189395, 0.189003, 0.188606, 0.188208, 0.187806, 0.1874, 0.186994,
724  0.186582, 0.186169, 0.185752, 0.185332, 0.18491, 0.184485, 0.184058, 0.183626, 0.183193,
725  0.182757, 0.182319, 0.181878, 0.181433, 0.180988, 0.180538, 0.180087, 0.179632, 0.179176,
726  0.178716, 0.178255, 0.177791, 0.177324, 0.176856, 0.176384, 0.175912, 0.175435, 0.174958,
727  0.174476, 0.173995, 0.173509, 0.173023, 0.172532, 0.172042, 0.171547, 0.171052, 0.170553,
728  0.170054, 0.169551, 0.169047, 0.16854, 0.168032, 0.167521, 0.16701, 0.166494, 0.165979,
729  0.165459, 0.16494, 0.164417, 0.163893, 0.163366, 0.162839, 0.162308, 0.161777, 0.161243,
730  0.160708, 0.160171, 0.159631, 0.159091, 0.158548, 0.158005, 0.157458, 0.15691, 0.15636,
731  0.155809, 0.155256, 0.154702, 0.154146, 0.153587, 0.153029, 0.152466, 0.151904, 0.151339,
732  0.150773, 0.150206, 0.149636, 0.149066, 0.148493, 0.14792, 0.147344, 0.146767, 0.146189,
733  0.145609, 0.145029, 0.144445, 0.143861, 0.143275, 0.142688, 0.1421, 0.141509, 0.140918,
734  0.140325, 0.13973, 0.139135, 0.138538, 0.13794, 0.13734, 0.136739, 0.136137, 0.135532,
735  0.134928, 0.134321, 0.133713, 0.133105, 0.132494, 0.131883, 0.13127, 0.130656, 0.130041,
736  0.129424, 0.128806, 0.128187, 0.127567, 0.126946, 0.126323, 0.125699, 0.125074, 0.124447,
737  0.12382, 0.123192, 0.122562, 0.121932, 0.121299, 0.120666, 0.120032, 0.119396, 0.11876,
738  0.118122, 0.117483, 0.116844, 0.116203, 0.11556, 0.114918, 0.114273, 0.113628, 0.112983,
739  0.112334, 0.111686, 0.111037, 0.110386, 0.109735, 0.109083, 0.108429, 0.107775, 0.107119,
740  0.106462, 0.105805, 0.105147, 0.104487, 0.103827, 0.103166, 0.102503, 0.10184, 0.101176,
741  0.10051, 0.0998443, 0.0991772, 0.0985088, 0.0978403, 0.0971705, 0.0964992, 0.095828, 0.0951555,
742  0.0944816, 0.0938076, 0.0931325, 0.0924558, 0.0917791, 0.0911016, 0.0904222, 0.0897428, 0.0890629,
743  0.0883808, 0.0876987, 0.0870165, 0.0863318, 0.085647, 0.0849623, 0.0842752, 0.0835879, 0.0829005,
744  0.0822114, 0.0815214, 0.0808314, 0.0801402, 0.0794477, 0.0787551, 0.078062, 0.0773669, 0.0766717,
745  0.0759766, 0.0752791, 0.0745814, 0.0738837, 0.0731845, 0.0724843, 0.0717841, 0.0710831, 0.0703804,
746  0.0696777, 0.068975, 0.06827, 0.0675648, 0.0668596, 0.0661532, 0.0654455, 0.0647379, 0.06403,
747  0.0633199, 0.0626098, 0.0618997, 0.061188, 0.0604755, 0.059763, 0.0590501, 0.0583352, 0.0576203,
748  0.0569054, 0.0561889, 0.0554716, 0.0547543, 0.0540368, 0.0533171, 0.0525975, 0.0518779, 0.0511569,
749  0.0504349, 0.049713, 0.048991, 0.0482668, 0.0475425, 0.0468182, 0.0460932, 0.0453666, 0.04464,
750  0.0439134, 0.0431853, 0.0424565, 0.0417276, 0.0409988, 0.0402677, 0.0395366, 0.0388055, 0.0380737,
751  0.0373404, 0.036607, 0.0358737, 0.0351392, 0.0344036, 0.0336681, 0.0329325, 0.0321953, 0.0314576,
752  0.0307198, 0.0299821, 0.0292423, 0.0285024, 0.0277624, 0.0270223, 0.0262802, 0.0255381, 0.024796,
753  0.0240535, 0.0233093, 0.022565, 0.0218208, 0.0210759, 0.0203296, 0.0195832, 0.0188369, 0.0180898,
754  0.0173413, 0.0165928, 0.0158444, 0.0150951, 0.0143446, 0.013594, 0.0128435, 0.0120922, 0.0113396,
755  0.010587, 0.00983434, 0.00908105, 0.00832639, 0.00757173, 0.00681707, 0.00606189, 0.0053052, 0.00454851,
756  0.00379181, 0.00303483, 0.00227612, 0.00151741, 0.000758707, 0.}};
757 
758  //---- Corrections for ME1/1 chambers (very different parameters from the other chambers):
759 
760  //---- min SW ~ 3.15 cm, max SW ~ 7.6 cm
761  //---- Corrections are calculated for N_SW_ME1_1 strip widths (0.3 - 0.8 cm)
762  //---- and for 501 values in
763  float corrections_ME1_1[n_SW_ME1_1][n_val] = {
764  {0,
765  -0.000153178,
766  -0.000304723,
767  -0.000454635,
768  -0.000602913,
769  -0.000749555,
770  -0.000894561,
771  -0.00103785,
772  -0.00117926,
773  -0.00131904,
774  -0.0014572,
775  -0.00159372,
776  -0.00172861,
777  -0.00186188,
778  -0.00199351,
779  -0.00212325,
780  -0.00225135,
781  -0.00237783,
782  -0.00250269,
783  -0.00262593,
784  -0.00274755,
785  -0.00286755,
786  -0.00298594,
787  -0.00310249,
788  -0.00321741,
789  -0.00333073,
790  -0.00344243,
791  -0.00355254,
792  -0.00366104,
793  -0.00376795,
794  -0.00387325,
795  -0.00397696,
796  -0.00407892,
797  -0.00417925,
798  -0.004278,
799  -0.00437517,
800  -0.00447075,
801  -0.00456477,
802  -0.00465721,
803  -0.00474808,
804  -0.00483738,
805  -0.00492512,
806  -0.00501128,
807  -0.00509574,
808  -0.00517866,
809  -0.00526003,
810  -0.00533986,
811  -0.00541815,
812  -0.0054949,
813  -0.00557013,
814  -0.00564383,
815  -0.005716,
816  -0.00578666,
817  -0.0058558,
818  -0.00592344,
819  -0.00598956,
820  -0.0060541,
821  -0.00611712,
822  -0.00617865,
823  -0.00623871,
824  -0.00629728,
825  -0.00635438,
826  -0.00641001,
827  -0.00646418,
828  -0.00651689,
829  -0.00656815,
830  -0.00661796,
831  -0.00666633,
832  -0.00671326,
833  -0.00675877,
834  -0.00680284,
835  -0.0068455,
836  -0.00688674,
837  -0.00692658,
838  -0.00696502,
839  -0.00700205,
840  -0.00703765,
841  -0.00707187,
842  -0.00710472,
843  -0.0071362,
844  -0.00716631,
845  -0.00719508,
846  -0.00722249,
847  -0.00724857,
848  -0.00727331,
849  -0.00729672,
850  -0.00731881,
851  -0.00733959,
852  -0.00735907,
853  -0.00737724,
854  -0.00739412,
855  -0.00740972,
856  -0.00742404,
857  -0.00743709,
858  -0.00744888,
859  -0.00745941,
860  -0.0074687,
861  -0.00747675,
862  -0.00748356,
863  -0.00748915,
864  -0.00749352,
865  -0.00749668,
866  -0.00749865,
867  -0.00749942,
868  -0.00749901,
869  -0.00749742,
870  -0.00749466,
871  -0.00749074,
872  -0.00748567,
873  -0.00747946,
874  -0.00747211,
875  -0.00746363,
876  -0.00745404,
877  -0.00744334,
878  -0.00743153,
879  -0.00741864,
880  -0.00740466,
881  -0.00738961,
882  -0.00737348,
883  -0.00735631,
884  -0.00733808,
885  -0.00731881,
886  -0.00729852,
887  -0.0072772,
888  -0.00725487,
889  -0.00723153,
890  -0.0072072,
891  -0.00718189,
892  -0.0071556,
893  -0.00712834,
894  -0.00710012,
895  -0.00707096,
896  -0.00704085,
897  -0.00700982,
898  -0.00697785,
899  -0.00694495,
900  -0.00691116,
901  -0.00687647,
902  -0.0068409,
903  -0.00680445,
904  -0.00676714,
905  -0.00672898,
906  -0.00668997,
907  -0.00665013,
908  -0.00660946,
909  -0.00656797,
910  -0.00652568,
911  -0.00648259,
912  -0.00643872,
913  -0.00639407,
914  -0.00634865,
915  -0.00630247,
916  -0.00625554,
917  -0.00620788,
918  -0.00615949,
919  -0.00611038,
920  -0.00606056,
921  -0.00601004,
922  -0.0059588,
923  -0.00590688,
924  -0.0058543,
925  -0.00580105,
926  -0.00574716,
927  -0.00569262,
928  -0.00563746,
929  -0.00558167,
930  -0.00552528,
931  -0.00546828,
932  -0.0054107,
933  -0.00535254,
934  -0.0052938,
935  -0.00523451,
936  -0.00517467,
937  -0.00511428,
938  -0.00505337,
939  -0.00499193,
940  -0.00492995,
941  -0.00486748,
942  -0.00480451,
943  -0.00474107,
944  -0.00467715,
945  -0.00461278,
946  -0.00454795,
947  -0.00448268,
948  -0.00441698,
949  -0.00435086,
950  -0.00428433,
951  -0.0042174,
952  -0.00415007,
953  -0.00408237,
954  -0.00401429,
955  -0.00394583,
956  -0.00387701,
957  -0.00380785,
958  -0.00373836,
959  -0.00366854,
960  -0.00359842,
961  -0.00352799,
962  -0.00345726,
963  -0.00338625,
964  -0.00331496,
965  -0.00324341,
966  -0.00317161,
967  -0.00309955,
968  -0.00302726,
969  -0.00295474,
970  -0.00288199,
971  -0.00280904,
972  -0.00273588,
973  -0.00266254,
974  -0.00258902,
975  -0.00251532,
976  -0.00244147,
977  -0.00236747,
978  -0.00229332,
979  -0.00221904,
980  -0.00214463,
981  -0.00207011,
982  -0.00199549,
983  -0.00192076,
984  -0.00184594,
985  -0.00177105,
986  -0.00169609,
987  -0.00162107,
988  -0.001546,
989  -0.00147088,
990  -0.00139573,
991  -0.00132056,
992  -0.00124538,
993  -0.00117018,
994  -0.00109499,
995  -0.00101981,
996  -0.000944646,
997  -0.000869513,
998  -0.000794418,
999  -0.000719369,
1000  -0.000644374,
1001  -0.000569442,
1002  -0.000494581,
1003  -0.000419799,
1004  -0.000345105,
1005  -0.000270507,
1006  -0.000196013,
1007  -0.000121632,
1008  -4.73709e-05,
1009  2.67578e-05,
1010  0.000100743,
1011  0.000174583,
1012  0.000248269,
1013  0.000321794,
1014  0.000395148,
1015  0.000468326,
1016  0.000541318,
1017  0.000614116,
1018  0.000686715,
1019  0.000759104,
1020  0.000831278,
1021  0.000903227,
1022  0.000974946,
1023  0.00104642,
1024  0.00111763,
1025  0.0011886,
1026  0.0012593,
1027  0.00132973,
1028  0.00139988,
1029  0.00146975,
1030  0.00153933,
1031  0.00160862,
1032  0.00167759,
1033  0.00174626,
1034  0.0018146,
1035  0.00188262,
1036  0.00195031,
1037  0.00201765,
1038  0.00208463,
1039  0.00215125,
1040  0.00221752,
1041  0.00228341,
1042  0.00234893,
1043  0.00241407,
1044  0.00247883,
1045  0.00254319,
1046  0.00260715,
1047  0.0026707,
1048  0.00273384,
1049  0.00279656,
1050  0.00285885,
1051  0.00292071,
1052  0.00298214,
1053  0.0030431,
1054  0.0031036,
1055  0.00316365,
1056  0.00322324,
1057  0.00328236,
1058  0.003341,
1059  0.00339916,
1060  0.00345684,
1061  0.00351402,
1062  0.00357071,
1063  0.0036269,
1064  0.00368257,
1065  0.00373773,
1066  0.00379238,
1067  0.0038465,
1068  0.00390008,
1069  0.00395313,
1070  0.00400564,
1071  0.00405758,
1072  0.00410897,
1073  0.0041598,
1074  0.00421006,
1075  0.00425977,
1076  0.00430889,
1077  0.00435745,
1078  0.00440542,
1079  0.0044528,
1080  0.00449959,
1081  0.00454579,
1082  0.00459138,
1083  0.00463637,
1084  0.00468075,
1085  0.00472452,
1086  0.00476766,
1087  0.00481018,
1088  0.00485207,
1089  0.00489333,
1090  0.00493396,
1091  0.00497394,
1092  0.00501327,
1093  0.00505193,
1094  0.00508994,
1095  0.00512729,
1096  0.00516398,
1097  0.0052,
1098  0.00523535,
1099  0.00527003,
1100  0.00530403,
1101  0.00533735,
1102  0.00536998,
1103  0.00540192,
1104  0.00543317,
1105  0.00546373,
1106  0.00549358,
1107  0.00552273,
1108  0.00555118,
1109  0.00557891,
1110  0.00560592,
1111  0.00563222,
1112  0.0056578,
1113  0.00568266,
1114  0.00570678,
1115  0.00573018,
1116  0.00575284,
1117  0.00577476,
1118  0.00579595,
1119  0.00581639,
1120  0.00583608,
1121  0.00585503,
1122  0.00587322,
1123  0.00589066,
1124  0.00590734,
1125  0.00592325,
1126  0.00593841,
1127  0.0059528,
1128  0.00596642,
1129  0.00597926,
1130  0.00599133,
1131  0.00600263,
1132  0.00601314,
1133  0.00602286,
1134  0.00603181,
1135  0.00603996,
1136  0.00604733,
1137  0.00605391,
1138  0.00605969,
1139  0.00606468,
1140  0.00606887,
1141  0.00607226,
1142  0.00607484,
1143  0.00607663,
1144  0.0060776,
1145  0.00607777,
1146  0.00607713,
1147  0.00607568,
1148  0.00607341,
1149  0.00607033,
1150  0.00606642,
1151  0.0060617,
1152  0.00605616,
1153  0.00604979,
1154  0.0060426,
1155  0.00603458,
1156  0.00602574,
1157  0.00601606,
1158  0.00600555,
1159  0.00599421,
1160  0.00598202,
1161  0.005969,
1162  0.00595514,
1163  0.00594044,
1164  0.0059249,
1165  0.00590852,
1166  0.00589129,
1167  0.00587322,
1168  0.0058543,
1169  0.00583454,
1170  0.00581392,
1171  0.00579246,
1172  0.00577014,
1173  0.00574698,
1174  0.00572296,
1175  0.00569809,
1176  0.00567236,
1177  0.00564578,
1178  0.00561834,
1179  0.00559004,
1180  0.00556088,
1181  0.00553087,
1182  0.00549999,
1183  0.00546825,
1184  0.00543566,
1185  0.00540219,
1186  0.00536787,
1187  0.00533268,
1188  0.00529663,
1189  0.00525971,
1190  0.00522193,
1191  0.00518328,
1192  0.00514376,
1193  0.00510338,
1194  0.00506213,
1195  0.00502001,
1196  0.004977,
1197  0.0049331,
1198  0.00488833,
1199  0.00484269,
1200  0.00479618,
1201  0.0047488,
1202  0.00470054,
1203  0.00465142,
1204  0.00460142,
1205  0.00455055,
1206  0.00449881,
1207  0.00444619,
1208  0.0043927,
1209  0.00433834,
1210  0.00428311,
1211  0.004227,
1212  0.00417002,
1213  0.00411217,
1214  0.00405344,
1215  0.00399384,
1216  0.00393331,
1217  0.0038719,
1218  0.00380962,
1219  0.00374647,
1220  0.00368244,
1221  0.00361755,
1222  0.00355177,
1223  0.00348513,
1224  0.00341761,
1225  0.00334922,
1226  0.00327996,
1227  0.00320982,
1228  0.00313882,
1229  0.00306694,
1230  0.00299419,
1231  0.00292049,
1232  0.00284593,
1233  0.00277049,
1234  0.00269419,
1235  0.00261701,
1236  0.00253897,
1237  0.00246005,
1238  0.00238027,
1239  0.00229962,
1240  0.0022181,
1241  0.00213572,
1242  0.00205247,
1243  0.00196832,
1244  0.00188325,
1245  0.00179732,
1246  0.00171052,
1247  0.00162285,
1248  0.00153432,
1249  0.00144493,
1250  0.00135468,
1251  0.00126357,
1252  0.00117159,
1253  0.00107876,
1254  0.000985051,
1255  0.000890399,
1256  0.000794889,
1257  0.000698521,
1258  0.000601296,
1259  0.000503215,
1260  0.000404279,
1261  0.000304488,
1262  0.000203844,
1263  0.000102348,
1264  0},
1265 
1266  {0, 6.5726e-05, 0.000133561,
1267  0.000203493, 0.000275507, 0.000349591,
1268  0.000425731, 0.000503913, 0.000584123,
1269  0.000666346, 0.00075057, 0.000836778,
1270  0.000924956, 0.00101512, 0.00110734,
1271  0.00120149, 0.00129755, 0.0013955,
1272  0.00149533, 0.00159703, 0.00170057,
1273  0.00180594, 0.00191312, 0.00202214,
1274  0.00213306, 0.00224575, 0.00236018,
1275  0.00247634, 0.00259421, 0.00271377,
1276  0.00283502, 0.00295792, 0.00308257,
1277  0.00320889, 0.00333682, 0.00346633,
1278  0.00359741, 0.00373004, 0.0038642,
1279  0.00399987, 0.00413719, 0.00427598,
1280  0.00441622, 0.00455789, 0.00470098,
1281  0.00484546, 0.00499132, 0.00513867,
1282  0.00528737, 0.00543738, 0.00558868,
1283  0.00574126, 0.00589509, 0.0060502,
1284  0.00620661, 0.00636422, 0.006523,
1285  0.00668292, 0.00684398, 0.00700614,
1286  0.00716953, 0.00733397, 0.00749946,
1287  0.00766597, 0.00783349, 0.00800198,
1288  0.00817156, 0.00834207, 0.00851349,
1289  0.00868581, 0.008859, 0.00903307,
1290  0.00920805, 0.00938383, 0.0095604,
1291  0.00973774, 0.00991582, 0.0100947,
1292  0.0102743, 0.0104545, 0.0106355,
1293  0.010817, 0.0109992, 0.011182,
1294  0.0113654, 0.0115494, 0.0117339,
1295  0.0119188, 0.0121043, 0.0122903,
1296  0.0124768, 0.0126636, 0.0128508,
1297  0.0130384, 0.0132265, 0.0134148,
1298  0.0136034, 0.0137924, 0.0139816,
1299  0.014171, 0.0143607, 0.0145506,
1300  0.0147407, 0.014931, 0.0151214,
1301  0.0153119, 0.0155025, 0.0156932,
1302  0.0158839, 0.0160747, 0.0162655,
1303  0.0164563, 0.0166471, 0.0168378,
1304  0.0170284, 0.017219, 0.0174094,
1305  0.0175997, 0.0177899, 0.0179799,
1306  0.0181697, 0.0183593, 0.0185486,
1307  0.0187377, 0.0189266, 0.0191151,
1308  0.0193033, 0.0194912, 0.0196788,
1309  0.019866, 0.0200528, 0.0202392,
1310  0.0204251, 0.0206106, 0.0207957,
1311  0.0209803, 0.0211643, 0.0213479,
1312  0.0215309, 0.0217134, 0.0218953,
1313  0.0220766, 0.0222573, 0.0224374,
1314  0.0226168, 0.0227956, 0.0229738,
1315  0.0231512, 0.0233279, 0.0235038,
1316  0.0236791, 0.0238536, 0.0240274,
1317  0.0242003, 0.0243724, 0.0245437,
1318  0.0247142, 0.0248839, 0.0250527,
1319  0.0252206, 0.0253875, 0.0255536,
1320  0.0257188, 0.0258831, 0.0260464,
1321  0.0262087, 0.02637, 0.0265304,
1322  0.0266898, 0.0268482, 0.0270055,
1323  0.0271617, 0.0273169, 0.0274711,
1324  0.0276241, 0.0277761, 0.0279271,
1325  0.0280768, 0.0282254, 0.0283729,
1326  0.0285192, 0.0286644, 0.0288084,
1327  0.0289513, 0.0290929, 0.0292333,
1328  0.0293725, 0.0295104, 0.0296472,
1329  0.0297827, 0.029917, 0.03005,
1330  0.0301816, 0.030312, 0.0304411,
1331  0.030569, 0.0306955, 0.0308207,
1332  0.0309446, 0.0310671, 0.0311883,
1333  0.0313081, 0.0314265, 0.0315436,
1334  0.0316593, 0.0317737, 0.0318867,
1335  0.0319983, 0.0321083, 0.032217,
1336  0.0323243, 0.0324301, 0.0325346,
1337  0.0326376, 0.0327392, 0.0328393,
1338  0.032938, 0.0330352, 0.0331308,
1339  0.033225, 0.0333178, 0.033409,
1340  0.0334988, 0.033587, 0.0336738,
1341  0.0337591, 0.0338429, 0.0339252,
1342  0.0340059, 0.0340851, 0.0341627,
1343  0.0342388, 0.0343134, 0.0343864,
1344  0.0344579, 0.0345278, 0.0345962,
1345  0.0346631, 0.0347284, 0.0347921,
1346  0.0348543, 0.0349149, 0.034974,
1347  0.0350314, 0.0350872, 0.0351414,
1348  0.0351941, 0.0352452, 0.0352947,
1349  0.0353426, 0.0353889, 0.0354337,
1350  0.0354768, 0.0355183, 0.0355583,
1351  0.0355966, 0.0356334, 0.0356685,
1352  0.0357021, 0.035734, 0.0357643,
1353  0.035793, 0.0358201, 0.0358456,
1354  0.0358695, 0.0358917, 0.0359124,
1355  0.0359314, 0.0359488, 0.0359646,
1356  0.0359788, 0.0359913, 0.0360023,
1357  0.0360116, 0.0360193, 0.0360253,
1358  0.0360298, 0.0360326, 0.0360338,
1359  0.0360334, 0.0360314, 0.0360278,
1360  0.0360225, 0.0360156, 0.0360071,
1361  0.035997, 0.0359853, 0.0359719,
1362  0.035957, 0.0359404, 0.0359222,
1363  0.0359024, 0.035881, 0.0358579,
1364  0.0358333, 0.035807, 0.0357792,
1365  0.0357497, 0.0357186, 0.035686,
1366  0.0356517, 0.0356158, 0.0355783,
1367  0.0355393, 0.0354986, 0.0354563,
1368  0.0354125, 0.0353671, 0.03532,
1369  0.0352714, 0.0352212, 0.0351695,
1370  0.0351161, 0.0350612, 0.0350047,
1371  0.0349465, 0.0348868, 0.0348255,
1372  0.0347626, 0.0346982, 0.0346322,
1373  0.0345646, 0.0344955, 0.0344248,
1374  0.0343526, 0.0342788, 0.0342035,
1375  0.0341267, 0.0340483, 0.0339683,
1376  0.0338867, 0.0338036, 0.0337189,
1377  0.0336327, 0.033545, 0.0334558,
1378  0.033365, 0.0332727, 0.033179,
1379  0.0330837, 0.0329869, 0.0328884,
1380  0.0327885, 0.032687, 0.0325841,
1381  0.0324796, 0.0323737, 0.0322663,
1382  0.0321574, 0.0320471, 0.0319352,
1383  0.0318217, 0.0317067, 0.0315903,
1384  0.0314724, 0.0313531, 0.0312323,
1385  0.0311101, 0.0309864, 0.0308611,
1386  0.0307343, 0.0306061, 0.0304764,
1387  0.0303454, 0.0302129, 0.030079,
1388  0.0299436, 0.0298066, 0.0296683,
1389  0.0295285, 0.0293873, 0.0292448,
1390  0.0291008, 0.0289554, 0.0288084,
1391  0.02866, 0.0285102, 0.0283591,
1392  0.0282066, 0.0280528, 0.0278974,
1393  0.0277405, 0.0275823, 0.0274228,
1394  0.0272619, 0.0270996, 0.026936,
1395  0.0267707, 0.0266042, 0.0264363,
1396  0.0262672, 0.0260967, 0.0259247,
1397  0.0257513, 0.0255766, 0.0254005,
1398  0.0252232, 0.0250446, 0.0248644,
1399  0.0246829, 0.0245001, 0.024316,
1400  0.0241307, 0.023944, 0.0237558,
1401  0.0235663, 0.0233755, 0.0231836,
1402  0.0229903, 0.0227955, 0.0225994,
1403  0.0224021, 0.0222036, 0.0220039,
1404  0.0218025, 0.0215999, 0.0213962,
1405  0.0211912, 0.020985, 0.0207772,
1406  0.0205682, 0.0203581, 0.0201468,
1407  0.0199341, 0.01972, 0.0195047,
1408  0.0192883, 0.0190707, 0.0188516,
1409  0.0186313, 0.0184098, 0.0181872,
1410  0.0179633, 0.017738, 0.0175115,
1411  0.0172839, 0.0170552, 0.016825,
1412  0.0165935, 0.016361, 0.0161274,
1413  0.0158925, 0.0156562, 0.0154188,
1414  0.0151803, 0.0149406, 0.0146995,
1415  0.0144573, 0.0142141, 0.0139697,
1416  0.0137239, 0.0134769, 0.0132289,
1417  0.0129799, 0.0127293, 0.0124777,
1418  0.0122251, 0.0119713, 0.0117161,
1419  0.0114599, 0.0112026, 0.0109442,
1420  0.0106844, 0.0104236, 0.0101618,
1421  0.00989884, 0.00963451, 0.0093692,
1422  0.00910291, 0.0088353, 0.00856651,
1423  0.00829675, 0.00802603, 0.00775384,
1424  0.00748065, 0.0072065, 0.00693127,
1425  0.00665466, 0.00637711, 0.00609864,
1426  0.00581885, 0.00553794, 0.00525611,
1427  0.00497331, 0.00468906, 0.0044039,
1428  0.00411784, 0.00383053, 0.00354207,
1429  0.00325273, 0.00296242, 0.0026707,
1430  0.0023781, 0.00208463, 0.00178985,
1431  0.00149403, 0.00119734, 0.000899595,
1432  0.000600576, 0.000300709, 0},
1433 
1434  {0, 0.000336602, 0.000675667, 0.00101718, 0.00136154, 0.00170824, 0.00205733, 0.00240907, 0.00276303,
1435  0.00311932, 0.00347805, 0.00383888, 0.004202, 0.00456732, 0.00493462, 0.00530417, 0.00567568, 0.00604907,
1436  0.0064246, 0.00680187, 0.00718103, 0.00756203, 0.00794465, 0.00832913, 0.00871518, 0.0091028, 0.00949208,
1437  0.00988274, 0.010275, 0.0106685, 0.0110634, 0.0114597, 0.0118572, 0.0122559, 0.0126558, 0.0130567,
1438  0.0134588, 0.0138618, 0.0142658, 0.0146707, 0.0150763, 0.0154829, 0.0158901, 0.0162981, 0.0167067,
1439  0.0171159, 0.0175257, 0.0179359, 0.0183466, 0.0187577, 0.0191691, 0.0195808, 0.0199927, 0.0204048,
1440  0.0208171, 0.0212294, 0.0216418, 0.0220541, 0.0224664, 0.0228786, 0.0232907, 0.0237025, 0.024114,
1441  0.0245253, 0.0249362, 0.0253467, 0.0257567, 0.0261662, 0.0265752, 0.0269837, 0.0273914, 0.0277985,
1442  0.0282049, 0.0286104, 0.0290152, 0.0294191, 0.0298221, 0.0302242, 0.0306252, 0.0310253, 0.0314242,
1443  0.031822, 0.0322187, 0.0326141, 0.0330084, 0.0334013, 0.0337929, 0.0341832, 0.0345721, 0.0349596,
1444  0.0353455, 0.0357299, 0.0361129, 0.0364942, 0.0368739, 0.037252, 0.0376283, 0.0380031, 0.0383759,
1445  0.038747, 0.0391164, 0.0394838, 0.0398494, 0.0402131, 0.0405747, 0.0409346, 0.0412923, 0.041648,
1446  0.0420018, 0.0423533, 0.0427028, 0.0430502, 0.0433953, 0.0437383, 0.0440792, 0.0444176, 0.044754,
1447  0.0450881, 0.0454197, 0.0457491, 0.0460762, 0.0464007, 0.046723, 0.047043, 0.0473603, 0.0476753,
1448  0.047988, 0.0482978, 0.0486053, 0.0489105, 0.0492129, 0.0495127, 0.0498101, 0.0501049, 0.050397,
1449  0.0506865, 0.0509736, 0.0512577, 0.0515393, 0.0518183, 0.0520946, 0.0523681, 0.052639, 0.0529072,
1450  0.0531726, 0.0534352, 0.0536952, 0.0539526, 0.0542069, 0.0544585, 0.0547074, 0.0549536, 0.0551968,
1451  0.0554373, 0.055675, 0.05591, 0.056142, 0.0563711, 0.0565975, 0.0568211, 0.057042, 0.0572597,
1452  0.0574746, 0.0576868, 0.0578962, 0.0581027, 0.0583061, 0.0585068, 0.0587047, 0.0588998, 0.0590919,
1453  0.059281, 0.0594673, 0.0596508, 0.0598315, 0.0600093, 0.060184, 0.0603559, 0.0605249, 0.0606912,
1454  0.0608546, 0.0610152, 0.0611726, 0.0613272, 0.061479, 0.061628, 0.0617742, 0.0619175, 0.0620579,
1455  0.0621953, 0.0623299, 0.0624616, 0.0625906, 0.0627167, 0.06284, 0.0629605, 0.063078, 0.0631927,
1456  0.0633045, 0.0634136, 0.0635198, 0.0636232, 0.0637239, 0.0638218, 0.0639169, 0.0640092, 0.0640985,
1457  0.064185, 0.0642688, 0.0643499, 0.0644281, 0.0645037, 0.0645765, 0.0646465, 0.0647138, 0.0647784,
1458  0.0648402, 0.0648993, 0.0649557, 0.0650094, 0.0650602, 0.0651084, 0.0651539, 0.0651967, 0.0652368,
1459  0.0652742, 0.065309, 0.0653411, 0.0653706, 0.0653974, 0.0654216, 0.0654431, 0.065462, 0.0654783,
1460  0.065492, 0.0655031, 0.0655116, 0.0655175, 0.0655209, 0.0655216, 0.0655198, 0.0655154, 0.0655085,
1461  0.065499, 0.065487, 0.0654725, 0.0654555, 0.0654359, 0.0654138, 0.0653893, 0.0653623, 0.0653327,
1462  0.0653008, 0.0652663, 0.0652294, 0.0651901, 0.0651483, 0.0651042, 0.0650576, 0.0650086, 0.064957,
1463  0.0649031, 0.0648468, 0.0647881, 0.064727, 0.0646636, 0.0645979, 0.0645298, 0.0644593, 0.0643866,
1464  0.0643115, 0.0642342, 0.0641545, 0.0640726, 0.0639884, 0.0639017, 0.0638128, 0.0637216, 0.0636281,
1465  0.0635325, 0.0634346, 0.0633345, 0.0632322, 0.0631278, 0.0630211, 0.0629121, 0.0628008, 0.0626874,
1466  0.0625718, 0.0624541, 0.0623343, 0.0622124, 0.0620883, 0.0619621, 0.0618335, 0.0617029, 0.0615702,
1467  0.0614354, 0.0612986, 0.0611598, 0.0610189, 0.0608757, 0.0607304, 0.0605831, 0.0604338, 0.0602826,
1468  0.0601293, 0.0599741, 0.0598165, 0.059657, 0.0594955, 0.0593321, 0.0591669, 0.0589997, 0.0588301,
1469  0.0586587, 0.0584854, 0.0583102, 0.0581332, 0.0579542, 0.0577729, 0.0575899, 0.057405, 0.0572183,
1470  0.0570299, 0.0568392, 0.0566466, 0.0564522, 0.0562561, 0.0560583, 0.0558583, 0.0556563, 0.0554527,
1471  0.0552474, 0.0550403, 0.0548311, 0.0546201, 0.0544074, 0.054193, 0.0539769, 0.0537586, 0.0535387,
1472  0.0533171, 0.0530939, 0.0528688, 0.0526417, 0.0524131, 0.0521829, 0.0519509, 0.0517169, 0.0514813,
1473  0.0512441, 0.0510055, 0.0507646, 0.0505221, 0.0502782, 0.0500328, 0.0497852, 0.0495361, 0.0492855,
1474  0.0490334, 0.0487792, 0.0485235, 0.0482664, 0.0480078, 0.047747, 0.0474849, 0.0472213, 0.0469562,
1475  0.046689, 0.0464205, 0.0461506, 0.045879, 0.0456056, 0.0453309, 0.0450548, 0.0447767, 0.0444972,
1476  0.0442164, 0.043934, 0.0436498, 0.0433642, 0.0430774, 0.0427887, 0.0424985, 0.042207, 0.0419141,
1477  0.0416193, 0.0413233, 0.0410261, 0.0407269, 0.0404264, 0.0401247, 0.0398213, 0.0395163, 0.0392102,
1478  0.0389026, 0.0385933, 0.0382828, 0.0379711, 0.0376574, 0.0373427, 0.0370268, 0.0367089, 0.0363899,
1479  0.0360698, 0.0357479, 0.0354247, 0.0351004, 0.0347744, 0.0344471, 0.0341187, 0.0337887, 0.0334573,
1480  0.0331248, 0.0327908, 0.0324554, 0.032119, 0.0317809, 0.0314415, 0.0311012, 0.0307592, 0.0304159,
1481  0.0300717, 0.0297257, 0.0293786, 0.0290306, 0.0286807, 0.0283298, 0.0279779, 0.0276242, 0.0272695,
1482  0.0269138, 0.0265563, 0.026198, 0.0258384, 0.0254773, 0.0251153, 0.0247518, 0.0243872, 0.0240217,
1483  0.0236543, 0.0232861, 0.0229169, 0.022546, 0.0221743, 0.0218012, 0.0214268, 0.0210517, 0.0206749,
1484  0.0202971, 0.0199184, 0.019538, 0.019157, 0.0187745, 0.0183908, 0.0180064, 0.0176202, 0.0172333,
1485  0.0168452, 0.0164558, 0.0160656, 0.0156739, 0.0152812, 0.0148876, 0.0144925, 0.0140967, 0.0136994,
1486  0.0133012, 0.0129021, 0.0125015, 0.0121002, 0.0116975, 0.0112938, 0.0108893, 0.0104832, 0.0100766,
1487  0.00966846, 0.00925949, 0.00884953, 0.00843822, 0.00802638, 0.00761284, 0.00719869, 0.00678337, 0.00636692,
1488  0.00594983, 0.00553111, 0.0051119, 0.00469127, 0.00426981, 0.00384742, 0.00342373, 0.00299959, 0.00257369,
1489  0.00214735, 0.00171971, 0.00129118, 0.000861804, 0.000431112, 0},
1490 
1491  {0, 0.00067284, 0.00134879, 0.00202776, 0.00270996, 0.00339501, 0.00408276, 0.00477335, 0.00546651,
1492  0.00616208, 0.00686005, 0.00756033, 0.00826268, 0.00896702, 0.00967339, 0.0103815, 0.0110912, 0.0118026,
1493  0.0125154, 0.0132295, 0.0139448, 0.0146612, 0.0153786, 0.0160968, 0.0168158, 0.0175354, 0.0182555,
1494  0.0189759, 0.0196967, 0.0204176, 0.0211385, 0.0218593, 0.02258, 0.0233003, 0.0240202, 0.0247395,
1495  0.0254582, 0.0261762, 0.0268932, 0.0276093, 0.0283243, 0.0290381, 0.0297505, 0.0304615, 0.0311711,
1496  0.031879, 0.0325851, 0.0332894, 0.0339919, 0.0346922, 0.0353905, 0.0360866, 0.0367803, 0.0374715,
1497  0.0381604, 0.0388467, 0.0395302, 0.0402111, 0.0408891, 0.0415641, 0.0422361, 0.0429052, 0.0435709,
1498  0.0442335, 0.0448928, 0.0455486, 0.046201, 0.0468499, 0.0474952, 0.0481369, 0.0487748, 0.0494089,
1499  0.0500393, 0.0506655, 0.051288, 0.0519065, 0.0525207, 0.053131, 0.053737, 0.0543388, 0.0549365,
1500  0.0555296, 0.0561186, 0.056703, 0.057283, 0.0578587, 0.0584296, 0.0589963, 0.059558, 0.0601155,
1501  0.060668, 0.061216, 0.0617592, 0.0622977, 0.0628315, 0.0633604, 0.0638846, 0.0644038, 0.0649184,
1502  0.0654278, 0.0659327, 0.0664323, 0.0669273, 0.067417, 0.0679021, 0.0683819, 0.0688571, 0.069327,
1503  0.0697921, 0.0702521, 0.070707, 0.0711571, 0.0716019, 0.0720421, 0.0724768, 0.0729068, 0.0733315,
1504  0.0737513, 0.0741662, 0.0745758, 0.0749807, 0.0753801, 0.0757748, 0.0761645, 0.0765489, 0.0769287,
1505  0.0773031, 0.0776727, 0.0780375, 0.0783968, 0.0787515, 0.0791012, 0.0794457, 0.0797855, 0.0801204,
1506  0.08045, 0.080775, 0.0810952, 0.0814101, 0.0817204, 0.082026, 0.0823263, 0.0826219, 0.082913,
1507  0.0831989, 0.08348, 0.0837566, 0.0840285, 0.0842952, 0.0845573, 0.084815, 0.0850679, 0.0853158,
1508  0.0855591, 0.0857981, 0.0860324, 0.0862617, 0.0864865, 0.0867069, 0.0869229, 0.0871341, 0.0873407,
1509  0.0875429, 0.0877407, 0.0879342, 0.0881229, 0.0883071, 0.088487, 0.0886627, 0.088834, 0.0890011,
1510  0.0891634, 0.0893215, 0.0894754, 0.0896251, 0.0897706, 0.089912, 0.090049, 0.0901816, 0.0903101,
1511  0.0904345, 0.0905549, 0.0906711, 0.0907833, 0.0908915, 0.0909957, 0.0910955, 0.0911914, 0.0912833,
1512  0.0913713, 0.0914553, 0.0915355, 0.0916117, 0.0916841, 0.0917526, 0.0918173, 0.0918782, 0.0919353,
1513  0.0919886, 0.092038, 0.0920836, 0.0921255, 0.0921637, 0.0921982, 0.0922291, 0.0922563, 0.0922799,
1514  0.0922999, 0.0923163, 0.0923292, 0.0923385, 0.0923442, 0.0923465, 0.0923452, 0.0923405, 0.0923323,
1515  0.0923207, 0.0923056, 0.0922872, 0.0922654, 0.0922402, 0.0922117, 0.0921799, 0.0921447, 0.0921063,
1516  0.0920646, 0.0920197, 0.0919714, 0.0919199, 0.0918652, 0.0918073, 0.0917462, 0.091682, 0.0916146,
1517  0.0915442, 0.0914707, 0.0913941, 0.0913145, 0.0912319, 0.0911462, 0.0910576, 0.0909659, 0.0908711,
1518  0.0907733, 0.0906725, 0.0905689, 0.0904624, 0.0903531, 0.0902409, 0.0901259, 0.0900081, 0.0898871,
1519  0.0897633, 0.0896368, 0.0895075, 0.0893755, 0.0892408, 0.0891035, 0.0889633, 0.0888202, 0.0886744,
1520  0.088526, 0.088375, 0.0882214, 0.0880653, 0.0879063, 0.0877446, 0.0875803, 0.0874136, 0.0872444,
1521  0.0870727, 0.0868983, 0.0867211, 0.0865416, 0.0863597, 0.0861754, 0.0859887, 0.0857991, 0.0856071,
1522  0.0854128, 0.0852163, 0.0850175, 0.0848158, 0.0846117, 0.0844055, 0.084197, 0.0839864, 0.0837728,
1523  0.0835571, 0.0833392, 0.0831192, 0.0828968, 0.0826718, 0.0824447, 0.0822156, 0.0819844, 0.0817504,
1524  0.0815143, 0.0812763, 0.0810363, 0.0807935, 0.0805487, 0.0803019, 0.0800533, 0.079802, 0.0795486,
1525  0.0792933, 0.0790362, 0.0787765, 0.0785147, 0.0782512, 0.0779858, 0.0777177, 0.0774478, 0.0771762,
1526  0.0769024, 0.0766263, 0.0763485, 0.076069, 0.075787, 0.0755031, 0.0752175, 0.0749301, 0.0746402,
1527  0.0743487, 0.0740556, 0.07376, 0.0734626, 0.0731637, 0.0728628, 0.0725597, 0.0722551, 0.0719488,
1528  0.0716401, 0.0713298, 0.0710182, 0.070704, 0.0703882, 0.0700711, 0.0697516, 0.0694305, 0.069108,
1529  0.0687833, 0.0684569, 0.0681291, 0.0677993, 0.0674676, 0.0671347, 0.0667997, 0.0664629, 0.0661248,
1530  0.0657847, 0.0654429, 0.0650999, 0.0647547, 0.064408, 0.0640601, 0.0637099, 0.0633583, 0.0630055,
1531  0.0626503, 0.062294, 0.0619363, 0.0615764, 0.0612154, 0.0608528, 0.0604883, 0.0601227, 0.0597552,
1532  0.0593861, 0.0590161, 0.0586437, 0.0582702, 0.0578954, 0.0575185, 0.0571407, 0.056761, 0.0563799,
1533  0.0559978, 0.0556134, 0.0552281, 0.0548412, 0.0544526, 0.0540632, 0.0536716, 0.053279, 0.0528851,
1534  0.0524892, 0.0520926, 0.051694, 0.0512943, 0.0508933, 0.0504905, 0.0500869, 0.0496813, 0.0492747,
1535  0.0488668, 0.0484572, 0.0480468, 0.0476344, 0.047221, 0.0468063, 0.0463901, 0.0459731, 0.0455539,
1536  0.0451341, 0.0447126, 0.04429, 0.0438662, 0.0434407, 0.0430147, 0.0425864, 0.0421576, 0.0417272,
1537  0.0412956, 0.0408629, 0.0404286, 0.0399937, 0.0395567, 0.0391192, 0.03868, 0.0382398, 0.0377984,
1538  0.0373556, 0.036912, 0.0364666, 0.0360208, 0.0355729, 0.0351245, 0.0346744, 0.0342235, 0.0337713,
1539  0.0333179, 0.0328636, 0.0324077, 0.0319513, 0.0314929, 0.0310342, 0.0305736, 0.0301125, 0.0296498,
1540  0.0291863, 0.0287215, 0.0282556, 0.0277887, 0.0273206, 0.0268516, 0.0263811, 0.0259101, 0.0254373,
1541  0.0249642, 0.0244892, 0.024014, 0.0235368, 0.0230593, 0.0225801, 0.0221005, 0.0216193, 0.0211375,
1542  0.0206542, 0.0201703, 0.019685, 0.0191989, 0.0187117, 0.0182235, 0.0177342, 0.017244, 0.0167527,
1543  0.0162605, 0.0157672, 0.0152729, 0.0147777, 0.0142814, 0.0137843, 0.013286, 0.0127868, 0.0122866,
1544  0.0117855, 0.0112834, 0.0107803, 0.0102763, 0.00977131, 0.00926534, 0.00875847, 0.00825062, 0.00774184,
1545  0.00723215, 0.00672146, 0.00620995, 0.00569735, 0.00518404, 0.00466955, 0.00415446, 0.00363809, 0.00312124,
1546  0.00260299, 0.0020844, 0.00156428, 0.00104398, 0.00052199, 0},
1547 
1548  {0, 0.00109345, 0.00219081, 0.00329183, 0.00439625, 0.00550381, 0.00661425, 0.0077273, 0.00884269,
1549  0.00996015, 0.0110795, 0.0122003, 0.0133224, 0.0144455, 0.0155693, 0.0166936, 0.017818, 0.0189424,
1550  0.0200664, 0.0211898, 0.0223123, 0.0234336, 0.0245535, 0.0256718, 0.0267882, 0.0279024, 0.0290142,
1551  0.0301233, 0.0312294, 0.0323325, 0.0334321, 0.0345282, 0.0356204, 0.0367086, 0.0377926, 0.0388721,
1552  0.0399469, 0.0410168, 0.0420815, 0.0431411, 0.0441951, 0.0452436, 0.0462862, 0.0473229, 0.0483534,
1553  0.0493777, 0.0503955, 0.0514067, 0.0524112, 0.0534088, 0.0543994, 0.0553829, 0.0563592, 0.057328,
1554  0.0582895, 0.0592434, 0.0601896, 0.061128, 0.0620586, 0.0629813, 0.0638959, 0.0648023, 0.0657006,
1555  0.0665907, 0.0674726, 0.0683461, 0.0692114, 0.0700682, 0.0709164, 0.071756, 0.072587, 0.0734096,
1556  0.0742236, 0.0750291, 0.0758256, 0.0766134, 0.0773927, 0.0781634, 0.0789253, 0.0796782, 0.0804226,
1557  0.0811584, 0.0818854, 0.0826035, 0.083313, 0.0840142, 0.084706, 0.0853895, 0.0860646, 0.0867305,
1558  0.087388, 0.0880373, 0.0886774, 0.0893093, 0.0899329, 0.0905475, 0.091154, 0.0917519, 0.0923414,
1559  0.0929229, 0.0934955, 0.0940604, 0.0946164, 0.0951647, 0.0957045, 0.0962364, 0.0967601, 0.0972757,
1560  0.0977834, 0.098283, 0.0987748, 0.0992587, 0.0997347, 0.100203, 0.100663, 0.101116, 0.101561,
1561  0.101999, 0.102429, 0.102852, 0.103266, 0.103674, 0.104074, 0.104467, 0.104853, 0.105231,
1562  0.105602, 0.105967, 0.106324, 0.106674, 0.107017, 0.107353, 0.107682, 0.108005, 0.10832,
1563  0.108629, 0.108931, 0.109226, 0.109515, 0.109798, 0.110074, 0.110343, 0.110606, 0.110863,
1564  0.111113, 0.111357, 0.111595, 0.111827, 0.112053, 0.112272, 0.112486, 0.112693, 0.112895,
1565  0.113091, 0.11328, 0.113464, 0.113643, 0.113815, 0.113982, 0.114143, 0.114299, 0.114449,
1566  0.114594, 0.114733, 0.114867, 0.114995, 0.115118, 0.115236, 0.115348, 0.115455, 0.115558,
1567  0.115655, 0.115746, 0.115833, 0.115915, 0.115992, 0.116064, 0.116131, 0.116193, 0.11625,
1568  0.116302, 0.11635, 0.116393, 0.116431, 0.116465, 0.116494, 0.116519, 0.116539, 0.116554,
1569  0.116565, 0.116571, 0.116574, 0.116571, 0.116565, 0.116554, 0.116539, 0.116519, 0.116495,
1570  0.116468, 0.116436, 0.1164, 0.116359, 0.116315, 0.116267, 0.116215, 0.116159, 0.116099,
1571  0.116035, 0.115967, 0.115895, 0.115819, 0.115739, 0.115656, 0.115569, 0.115478, 0.115384,
1572  0.115286, 0.115185, 0.11508, 0.114971, 0.114858, 0.114742, 0.114623, 0.1145, 0.114373,
1573  0.114244, 0.114111, 0.113974, 0.113834, 0.113691, 0.113544, 0.113394, 0.113241, 0.113085,
1574  0.112926, 0.112763, 0.112596, 0.112427, 0.112255, 0.11208, 0.111902, 0.11172, 0.111535,
1575  0.111348, 0.111157, 0.110964, 0.110767, 0.110568, 0.110365, 0.11016, 0.109952, 0.109741,
1576  0.109527, 0.10931, 0.109091, 0.108869, 0.108644, 0.108416, 0.108185, 0.107953, 0.107716,
1577  0.107477, 0.107236, 0.106993, 0.106746, 0.106497, 0.106245, 0.105991, 0.105734, 0.105474,
1578  0.105213, 0.104948, 0.104681, 0.104412, 0.10414, 0.103866, 0.103589, 0.103309, 0.103028,
1579  0.102744, 0.102458, 0.102169, 0.101878, 0.101584, 0.101289, 0.100991, 0.100691, 0.100388,
1580  0.100084, 0.0997766, 0.0994672, 0.099156, 0.0988424, 0.0985263, 0.0982085, 0.0978886, 0.0975659,
1581  0.0972416, 0.0969154, 0.0965863, 0.0962557, 0.0959232, 0.0955879, 0.095251, 0.0949123, 0.0945709,
1582  0.094228, 0.0938831, 0.0935357, 0.0931869, 0.0928359, 0.0924827, 0.0921281, 0.0917711, 0.0914122,
1583  0.0910519, 0.0906889, 0.0903244, 0.0899584, 0.0895897, 0.0892197, 0.0888478, 0.0884737, 0.0880985,
1584  0.0877207, 0.0873414, 0.0869608, 0.0865774, 0.086193, 0.0858066, 0.0854182, 0.0850288, 0.0846366,
1585  0.0842434, 0.0838484, 0.0834513, 0.0830532, 0.0826526, 0.0822508, 0.0818473, 0.0814418, 0.0810354,
1586  0.0806264, 0.0802164, 0.0798046, 0.079391, 0.0789765, 0.0785593, 0.0781414, 0.0777214, 0.0773,
1587  0.0768773, 0.0764524, 0.0760269, 0.0755987, 0.0751698, 0.074739, 0.0743068, 0.0738733, 0.0734378,
1588  0.0730016, 0.0725629, 0.0721235, 0.0716821, 0.0712396, 0.0707956, 0.0703499, 0.0699033, 0.0694545,
1589  0.0690053, 0.0685534, 0.0681012, 0.0676468, 0.0671915, 0.0667346, 0.0662763, 0.0658168, 0.0653557,
1590  0.0648936, 0.0644296, 0.063965, 0.0634981, 0.0630309, 0.0625614, 0.0620914, 0.0616193, 0.0611466,
1591  0.060672, 0.0601966, 0.0597196, 0.0592414, 0.058762, 0.0582812, 0.0577993, 0.0573159, 0.0568316,
1592  0.0563456, 0.0558588, 0.0553703, 0.0548812, 0.0543902, 0.0538986, 0.0534051, 0.0529112, 0.0524153,
1593  0.0519189, 0.0514206, 0.0509219, 0.0504213, 0.0499202, 0.0494172, 0.0489138, 0.0484085, 0.0479028,
1594  0.0473952, 0.0468872, 0.0463774, 0.045867, 0.045355, 0.0448423, 0.0443281, 0.0438132, 0.0432969,
1595  0.0427797, 0.0422612, 0.0417417, 0.0412212, 0.0406995, 0.0401769, 0.0396529, 0.0391284, 0.0386021,
1596  0.0380756, 0.0375471, 0.0370186, 0.036488, 0.0359573, 0.0354247, 0.0348918, 0.0343573, 0.0338222,
1597  0.0332859, 0.0327486, 0.0322104, 0.031671, 0.031131, 0.0305895, 0.0300477, 0.029504, 0.0289603,
1598  0.0284146, 0.0278688, 0.0273214, 0.0267734, 0.0262244, 0.0256743, 0.0251236, 0.0245714, 0.0240191,
1599  0.0234648, 0.0229105, 0.0223545, 0.0217981, 0.0212406, 0.0206822, 0.0201231, 0.0195626, 0.019002,
1600  0.0184394, 0.0178768, 0.0173127, 0.0167481, 0.0161826, 0.0156159, 0.015049, 0.0144803, 0.0139115,
1601  0.0133412, 0.0127705, 0.0121988, 0.0116261, 0.0110531, 0.0104783, 0.00990358, 0.00932729, 0.00875055,
1602  0.008173, 0.00759428, 0.00701549, 0.0064348, 0.00585411, 0.00527215, 0.00468949, 0.00410634, 0.00352174,
1603  0.00293714, 0.00235088, 0.00176434, 0.00117696, 0.00058848, 0},
1604 
1605  {0, 0.00162336, 0.00325125, 0.00488316, 0.00651853, 0.00815664, 0.00979694, 0.0114388, 0.0130815,
1606  0.0147246, 0.0163673, 0.0180091, 0.0196493, 0.0212874, 0.0229227, 0.0245546, 0.0261826, 0.0278061,
1607  0.0294245, 0.0310375, 0.032644, 0.034244, 0.0358369, 0.0374219, 0.038999, 0.0405672, 0.0421266,
1608  0.0436763, 0.0452161, 0.0467457, 0.0482645, 0.0497723, 0.0512687, 0.0527534, 0.0542261, 0.0556864,
1609  0.0571342, 0.0585689, 0.059991, 0.0613992, 0.0627942, 0.0641754, 0.0655425, 0.0668959, 0.0682348,
1610  0.0695593, 0.0708697, 0.0721652, 0.0734459, 0.0747121, 0.0759637, 0.0772, 0.0784213, 0.0796279,
1611  0.0808195, 0.0819963, 0.0831575, 0.0843039, 0.0854353, 0.0865517, 0.0876532, 0.0887399, 0.0898116,
1612  0.0908685, 0.0919105, 0.0929378, 0.0939504, 0.0949484, 0.0959318, 0.0969007, 0.0978552, 0.0987953,
1613  0.0997213, 0.100633, 0.101531, 0.102415, 0.103285, 0.104142, 0.104985, 0.105814, 0.106629,
1614  0.107432, 0.108221, 0.108998, 0.109761, 0.110511, 0.111249, 0.111974, 0.112686, 0.113386,
1615  0.114074, 0.114749, 0.115413, 0.116065, 0.116704, 0.117332, 0.117949, 0.118553, 0.119147,
1616  0.119729, 0.1203, 0.120861, 0.121409, 0.121948, 0.122475, 0.122993, 0.123499, 0.123996,
1617  0.124481, 0.124958, 0.125423, 0.125879, 0.126325, 0.126761, 0.127188, 0.127604, 0.128012,
1618  0.12841, 0.128799, 0.129179, 0.12955, 0.129912, 0.130265, 0.130609, 0.130945, 0.131272,
1619  0.13159, 0.1319, 0.132202, 0.132495, 0.132781, 0.133059, 0.133328, 0.133589, 0.133843,
1620  0.134089, 0.134327, 0.134558, 0.134781, 0.134998, 0.135206, 0.135407, 0.135601, 0.135788,
1621  0.135969, 0.136141, 0.136307, 0.136466, 0.136619, 0.136765, 0.136904, 0.137037, 0.137163,
1622  0.137283, 0.137396, 0.137503, 0.137604, 0.137699, 0.137788, 0.137871, 0.137947, 0.138018,
1623  0.138083, 0.138142, 0.138195, 0.138242, 0.138284, 0.138321, 0.138351, 0.138377, 0.138397,
1624  0.138411, 0.13842, 0.138424, 0.138423, 0.138416, 0.138405, 0.138388, 0.138366, 0.13834,
1625  0.138308, 0.138272, 0.13823, 0.138184, 0.138133, 0.138078, 0.138018, 0.137953, 0.137883,
1626  0.137809, 0.13773, 0.137647, 0.137559, 0.137467, 0.137371, 0.137271, 0.137166, 0.137057,
1627  0.136944, 0.136826, 0.136705, 0.136579, 0.136449, 0.136316, 0.136178, 0.136037, 0.135891,
1628  0.135742, 0.135588, 0.135431, 0.135271, 0.135106, 0.134938, 0.134766, 0.13459, 0.134411,
1629  0.134228, 0.134042, 0.133852, 0.133658, 0.133461, 0.133261, 0.133057, 0.13285, 0.132639,
1630  0.132425, 0.132208, 0.131988, 0.131764, 0.131537, 0.131307, 0.131073, 0.130837, 0.130597,
1631  0.130354, 0.130108, 0.129859, 0.129607, 0.129352, 0.129094, 0.128833, 0.128569, 0.128302,
1632  0.128033, 0.12776, 0.127484, 0.127206, 0.126926, 0.126641, 0.126354, 0.126066, 0.125773,
1633  0.125478, 0.125181, 0.124881, 0.124577, 0.124272, 0.123964, 0.123653, 0.12334, 0.123024,
1634  0.122705, 0.122384, 0.122061, 0.121735, 0.121407, 0.121076, 0.120743, 0.120407, 0.120069,
1635  0.119729, 0.119386, 0.119041, 0.118693, 0.118343, 0.117992, 0.117637, 0.11728, 0.116922,
1636  0.11656, 0.116197, 0.115831, 0.115463, 0.115094, 0.114721, 0.114347, 0.113971, 0.113592,
1637  0.113212, 0.112829, 0.112444, 0.112058, 0.111668, 0.111278, 0.110885, 0.11049, 0.110093,
1638  0.109694, 0.109293, 0.10889, 0.108485, 0.108079, 0.10767, 0.107259, 0.106847, 0.106432,
1639  0.106017, 0.105598, 0.105178, 0.104756, 0.104333, 0.103908, 0.10348, 0.103052, 0.10262,
1640  0.102188, 0.101753, 0.101317, 0.10088, 0.10044, 0.0999993, 0.0995557, 0.0991114, 0.0986647,
1641  0.0982168, 0.0977671, 0.0973157, 0.0968629, 0.096408, 0.0959523, 0.0954938, 0.0950349, 0.0945733,
1642  0.094111, 0.0936464, 0.0931808, 0.0927133, 0.0922444, 0.0917739, 0.0913018, 0.0908285, 0.0903532,
1643  0.089877, 0.0893986, 0.0889195, 0.088438, 0.087956, 0.0874715, 0.0869867, 0.0864992, 0.0860115,
1644  0.0855211, 0.0850305, 0.0845373, 0.0840439, 0.0835479, 0.0830517, 0.0825529, 0.0820539, 0.0815524,
1645  0.0810507, 0.0805465, 0.080042, 0.0795351, 0.0790281, 0.0785184, 0.0780088, 0.0774965, 0.0769842,
1646  0.0764693, 0.0759543, 0.075437, 0.0749194, 0.0743995, 0.0738793, 0.073357, 0.0728342, 0.0723096,
1647  0.0717841, 0.0712572, 0.0707291, 0.0701999, 0.0696692, 0.0691378, 0.0686045, 0.0680709, 0.0675351,
1648  0.0669993, 0.066461, 0.0659226, 0.0653822, 0.0648413, 0.0642988, 0.0637555, 0.0632109, 0.062665,
1649  0.0621185, 0.0615702, 0.0610217, 0.0604709, 0.0599201, 0.0593672, 0.0588139, 0.0582592, 0.0577035,
1650  0.057147, 0.0565888, 0.0560305, 0.05547, 0.0549094, 0.0543469, 0.053784, 0.0532198, 0.0526544,
1651  0.0520886, 0.0515209, 0.0509531, 0.0503833, 0.0498132, 0.0492418, 0.0486693, 0.0480964, 0.0475216,
1652  0.0469468, 0.04637, 0.0457929, 0.0452147, 0.0446352, 0.0440555, 0.0434738, 0.0428921, 0.0423087,
1653  0.0417248, 0.04114, 0.0405538, 0.0399675, 0.0393792, 0.0387906, 0.038201, 0.0376103, 0.0370194,
1654  0.0364264, 0.0358334, 0.0352391, 0.0346439, 0.0340484, 0.033451, 0.0328536, 0.0322548, 0.0316552,
1655  0.0310553, 0.0304535, 0.0298517, 0.0292485, 0.0286446, 0.0280404, 0.0274343, 0.0268281, 0.0262208,
1656  0.0256125, 0.0250043, 0.0243939, 0.0237835, 0.0231721, 0.0225596, 0.0219471, 0.0213327, 0.0207181,
1657  0.0201029, 0.0194862, 0.0188694, 0.0182513, 0.0176325, 0.0170136, 0.0163927, 0.0157718, 0.0151501,
1658  0.0145272, 0.0139042, 0.0132797, 0.0126547, 0.0120296, 0.0114025, 0.0107755, 0.0101476, 0.00951858,
1659  0.00888951, 0.00825902, 0.00762794, 0.00699685, 0.00636378, 0.00573069, 0.00509707, 0.00446199, 0.00382691,
1660  0.00319078, 0.00255372, 0.00191665, 0.00127807, 0.000639035, 0}};
1661 
1662  for (int i = 0; i < n_SW_noME1_1; i++) {
1663  for (int j = 0; j < n_val; j++) {
1664  //---- maybe a vector later...
1665  x_correction_noME1_1[i][j] = corrections_noME1_1[i][j];
1666  if (i < n_SW_ME1_1) {
1667  x_correction_ME1_1[i][j] = corrections_ME1_1[i][j];
1668  }
1669  }
1670  }
1671 }

References mps_fire::i, dqmiolumiharvest::j, n_SW_ME1_1, n_SW_noME1_1, n_val, x_correction_ME1_1, and x_correction_noME1_1.

Referenced by getCorrectionValues().

◆ initChamberSpecs()

void CSCXonStrip_MatchGatti::initChamberSpecs ( )

Use specs to setup Gatti parameters.

Definition at line 474 of file CSCXonStrip_MatchGatti.cc.

474  {
475  // Not used directly but these are parameters used for extracting the correction values
476  // in coordinate and error estimators
477 
478  // Distance between anode and cathode
480  r = h / stripWidth;
481 
482  // Wire spacing
483  double wspace = specs_->wireSpacing();
484 
485  // Wire radius
486  double wradius = specs_->wireRadius();
487 
488  // Accepted parameters in Gatti function
489  const double parm[5] = {.1989337e-02, -.6901542e-04, .8665786, 154.6177, -.680163e-03};
490 
491  k_3 = (parm[0] * wspace / h + parm[1]) *
492  (parm[2] * wspace / wradius + parm[3] + parm[4] * (wspace / wradius) * (wspace / wradius));
493 
495  norm = r * (0.5 / std::atan(sqrt_k_3)); // changed from norm to r * norm
496  k_2 = M_PI_2 * (1. - sqrt_k_3 / 2.);
497  k_1 = 0.25 * k_2 * sqrt_k_3 / std::atan(sqrt_k_3);
498 }

References CSCChamberSpecs::anodeCathodeSpacing(), k_1, k_2, k_3, M_PI_2, norm, r, specs_, mathSSE::sqrt(), sqrt_k_3, stripWidth, CSCChamberSpecs::wireRadius(), and CSCChamberSpecs::wireSpacing().

◆ operator=()

CSCXonStrip_MatchGatti& CSCXonStrip_MatchGatti::operator= ( const CSCXonStrip_MatchGatti )
private

◆ setConditions()

void CSCXonStrip_MatchGatti::setConditions ( const CSCRecoConditions reco)
inline

Cache pointer to conditions data.

Definition at line 51 of file CSCXonStrip_MatchGatti.h.

51 { recoConditions_ = reco; }

References dt_dqm_sourceclient_common_cff::reco, and recoConditions_.

Referenced by CSCMake2DRecHit::setConditions().

◆ setupMatrix()

void CSCXonStrip_MatchGatti::setupMatrix ( )

Set matrix for XT corrections and noise.

Definition at line 358 of file CSCXonStrip_MatchGatti.cc.

358  {
359  //---- a??? and v??[] could be skipped for now...; not used yet
360 
361  /*
362  double dd, a11t, a12t, a13t, a22t, a23t, a33t;
363  double syserr = adcSystematics;
364  double xtlk_err = xtalksSystematics;
365  // Left strip
366  a11t = a11[0] + syserr*syserr * ChargeSignal[0][0]*ChargeSignal[0][0] + xtlk_err*xtlk_err*ChargeSignal[1][0]*ChargeSignal[1][0];
367  a12t = a12[0] + syserr*syserr * ChargeSignal[0][0]*ChargeSignal[0][1];
368  a13t = a13[0] + syserr*syserr * ChargeSignal[0][0]*ChargeSignal[0][2];
369  a22t = a22[0] + syserr*syserr * ChargeSignal[0][1]*ChargeSignal[0][1] + xtlk_err*xtlk_err*ChargeSignal[1][1]*ChargeSignal[1][1];
370  a23t = a23[0] + syserr*syserr * ChargeSignal[0][1]*ChargeSignal[0][2];
371  a33t = a33[0] + syserr*syserr * ChargeSignal[0][2]*ChargeSignal[0][2] + xtlk_err*xtlk_err*ChargeSignal[1][2]*ChargeSignal[1][2];
372 
373  dd = (a11t*a33t*a22t - a11t*a23t*a23t - a33t*a12t*a12t
374  + 2.* a12t*a13t*a23t - a13t*a13t*a22t );
375 
376  v11[0] = (a33t*a22t - a23t*a23t)/dd;
377  v12[0] =-(a33t*a12t - a13t*a23t)/dd;
378  v13[0] = (a12t*a23t - a13t*a22t)/dd;
379  v22[0] = (a33t*a11t - a13t*a13t)/dd;
380  v23[0] =-(a23t*a11t - a12t*a13t)/dd;
381  v33[0] = (a22t*a11t - a12t*a12t)/dd;
382 
383  // Center strip
384  a11t = a11[1] + syserr*syserr * ChargeSignal[1][0]*ChargeSignal[1][0] + xtlk_err*xtlk_err*(ChargeSignal[0][0]*ChargeSignal[0][0]+ChargeSignal[2][0]*ChargeSignal[2][0]);
385  a12t = a12[1] + syserr*syserr * ChargeSignal[1][0]*ChargeSignal[1][1];
386  a13t = a13[1] + syserr*syserr * ChargeSignal[1][0]*ChargeSignal[1][2];
387  a22t = a22[1] + syserr*syserr * ChargeSignal[1][1]*ChargeSignal[1][1] + xtlk_err*xtlk_err*(ChargeSignal[0][1]*ChargeSignal[0][1]+ChargeSignal[2][1]*ChargeSignal[2][1]);
388  a23t = a23[1] + syserr*syserr * ChargeSignal[1][1]*ChargeSignal[1][2];
389  a33t = a33[1] + syserr*syserr * ChargeSignal[1][2]*ChargeSignal[1][2] + xtlk_err*xtlk_err*(ChargeSignal[0][2]*ChargeSignal[0][2]+ChargeSignal[2][2]*ChargeSignal[2][2]);
390 
391  dd = (a11t*a33t*a22t - a11t*a23t*a23t - a33t*a12t*a12t
392  + 2.* a12t*a13t*a23t - a13t*a13t*a22t );
393 
394  v11[1] = (a33t*a22t - a23t*a23t)/dd;
395  v12[1] =-(a33t*a12t - a13t*a23t)/dd;
396  v13[1] = (a12t*a23t - a13t*a22t)/dd;
397  v22[1] = (a33t*a11t - a13t*a13t)/dd;
398  v23[1] =-(a23t*a11t - a12t*a13t)/dd;
399  v33[1] = (a22t*a11t - a12t*a12t)/dd;
400 
401  // Right strip
402  a11t = a11[2] + syserr*syserr * ChargeSignal[2][0]*ChargeSignal[2][0] + xtlk_err*xtlk_err*ChargeSignal[1][0]*ChargeSignal[1][0];
403  a12t = a12[2] + syserr*syserr * ChargeSignal[2][0]*ChargeSignal[2][1];
404  a13t = a13[2] + syserr*syserr * ChargeSignal[2][0]*ChargeSignal[2][2];
405  a22t = a22[2] + syserr*syserr * ChargeSignal[2][1]*ChargeSignal[2][1] + xtlk_err*xtlk_err*ChargeSignal[1][1]*ChargeSignal[1][1];
406  a23t = a23[2] + syserr*syserr * ChargeSignal[2][1]*ChargeSignal[2][2];
407  a33t = a33[2] + syserr*syserr * ChargeSignal[2][2]*ChargeSignal[2][2] + xtlk_err*xtlk_err*ChargeSignal[1][2]*ChargeSignal[1][2];
408 
409  dd = (a11t*a33t*a22t - a11t*a23t*a23t - a33t*a12t*a12t
410  +2.* a12t*a13t*a23t - a13t*a13t*a22t );
411 
412  v11[2] = (a33t*a22t - a23t*a23t)/dd;
413  v12[2] =-(a33t*a12t - a13t*a23t)/dd;
414  v13[2] = (a12t*a23t - a13t*a22t)/dd;
415  v22[2] = (a33t*a11t - a13t*a13t)/dd;
416  v23[2] =-(a23t*a11t - a12t*a13t)/dd;
417  v33[2] = (a22t*a11t - a12t*a12t)/dd;
418 */
419  //---- Find the inverted XTalk matrix and apply it to the charge (3x3)
420  //---- Thus the charge before the XTalk is obtained
421  CLHEP::HepMatrix cross_talks_inv(3, 3);
422  int err = 0;
423  //---- q_sum is 3 time bins summed; L, C, R - left, central, right strips
424  q_sum = q_sumL = q_sumC = q_sumR = 0.;
425  double charge = 0.;
426  for (int iTime = 0; iTime < 3; iTime++) {
427  cross_talks_inv(1, 1) = xt_lr0[iTime];
428  cross_talks_inv(1, 2) = xt_l[1][iTime];
429  cross_talks_inv(1, 3) = 0.;
430  cross_talks_inv(2, 1) = xt_r[0][iTime];
431  cross_talks_inv(2, 2) = xt_lr1[iTime];
432  cross_talks_inv(2, 3) = xt_l[2][iTime];
433  cross_talks_inv(3, 1) = 0.;
434  cross_talks_inv(3, 2) = xt_r[1][iTime];
435  cross_talks_inv(3, 3) = xt_lr2[iTime];
436  cross_talks_inv.invert(err);
437  if (err != 0) {
438  edm::LogWarning("FailedXTalkiInversionNoCrosstalkCorrection")
439  << "Failed to invert XTalks matrix. No cross-talk correction for this rechit.";
440  //edm::LogError("CSCRecHit") << "Failed to invert XTalks matrix. No cross-talk correction for this rechit.";
441  return;
442  }
443  //---- "charge" is XT-corrected charge
444  charge = chargeSignal[0][iTime] * cross_talks_inv(1, 1) + chargeSignal[1][iTime] * cross_talks_inv(1, 2) +
445  chargeSignal[2][iTime] * cross_talks_inv(1, 3);
446  //---- Negative charge? According to studies (and logic) - better use 0 charge
447  //----- Later studies suggest that this only do harm. I am still worried about
448  // charges of -50 ADC and below (0.5% of the cases) but let see
449  //if(charge<0.){
450  //charge = 0.;
451  //}
452  q_sum += charge;
453  q_sumL += charge;
454  charge = chargeSignal[0][iTime] * cross_talks_inv(2, 1) + chargeSignal[1][iTime] * cross_talks_inv(2, 2) +
455  chargeSignal[2][iTime] * cross_talks_inv(2, 3);
456  //if(charge<0.){
457  //charge = 0.;
458  //}
459  q_sum += charge;
460  q_sumC += charge;
461  charge = chargeSignal[0][iTime] * cross_talks_inv(3, 1) + chargeSignal[1][iTime] * cross_talks_inv(3, 2) +
462  chargeSignal[2][iTime] * cross_talks_inv(3, 3);
463  //if(charge<0.){
464  //charge = 0.;
465  //}
466  q_sum += charge;
467  q_sumR += charge;
468  }
469 }

References ALCARECOTkAlJpsiMuMu_cff::charge, chargeSignal, submitPVResolutionJobs::err, q_sum, q_sumC, q_sumL, q_sumR, xt_l, xt_lr0, xt_lr1, xt_lr2, and xt_r.

Referenced by findXOnStrip().

◆ xfError_Noise()

double CSCXonStrip_MatchGatti::xfError_Noise ( double  noise)
private

Definition at line 587 of file CSCXonStrip_MatchGatti.cc.

587  {
588  double min, max;
589  if (q_sumR > q_sumL) {
590  min = q_sumL;
591  max = q_sumR;
592  } else {
593  min = q_sumR;
594  max = q_sumL;
595  }
596  //---- Error propagation...
597  //---- Names here are fake! Due to technical features
598  double dr_L2 = pow(q_sumR - q_sumL, 2);
599  double dr_C2 = pow(q_sumC - min, 2);
600  double dr_R2 = pow(q_sumC - max, 2);
601  double error = std::sqrt(dr_L2 + dr_C2 + dr_R2) * noise / std::pow(q_sumC - min, 2) / 2;
602 
603  return error;
604 }

References relativeConstraints::error, SiStripPI::max, min(), gpuVertexFinder::noise, funct::pow(), q_sumC, q_sumL, q_sumR, and mathSSE::sqrt().

Referenced by calculateXonStripError().

◆ xfError_XTasym()

double CSCXonStrip_MatchGatti::xfError_XTasym ( double  XTasym)
private

Definition at line 606 of file CSCXonStrip_MatchGatti.cc.

606  {
607  double min;
608  if (q_sumR > q_sumL) {
609  min = q_sumL;
610  } else {
611  min = q_sumR;
612  }
613  //---- Error propagation
614  double dXTL = (std::pow(q_sumC, 2) + std::pow(q_sumR, 2) - q_sumL * q_sumR - q_sumR * q_sumC);
615  double dXTR = (std::pow(q_sumC, 2) + std::pow(q_sumL, 2) - q_sumL * q_sumR - q_sumL * q_sumC);
616  double dXT = std::sqrt(std::pow(dXTL, 2) + std::pow(dXTR, 2)) / std::pow((q_sumC - min), 2) / 2;
617  double error = dXT * xt_asym;
618 
619  return error;
620 }

References relativeConstraints::error, min(), funct::pow(), q_sumC, q_sumL, q_sumR, and mathSSE::sqrt().

Referenced by calculateXonStripError().

Member Data Documentation

◆ a11

float CSCXonStrip_MatchGatti::a11[3]
private

Store elements of auto-correlation matrices: 0 = left, 1 = middle, 2 = right.

Definition at line 75 of file CSCXonStrip_MatchGatti.h.

Referenced by findXOnStrip().

◆ a12

float CSCXonStrip_MatchGatti::a12[3]
private

Definition at line 75 of file CSCXonStrip_MatchGatti.h.

Referenced by findXOnStrip().

◆ a13

float CSCXonStrip_MatchGatti::a13[3]
private

Definition at line 75 of file CSCXonStrip_MatchGatti.h.

Referenced by findXOnStrip().

◆ a22

float CSCXonStrip_MatchGatti::a22[3]
private

Definition at line 75 of file CSCXonStrip_MatchGatti.h.

Referenced by findXOnStrip().

◆ a23

float CSCXonStrip_MatchGatti::a23[3]
private

Definition at line 75 of file CSCXonStrip_MatchGatti.h.

Referenced by findXOnStrip().

◆ a33

float CSCXonStrip_MatchGatti::a33[3]
private

Definition at line 75 of file CSCXonStrip_MatchGatti.h.

Referenced by findXOnStrip().

◆ chargeSignal

float CSCXonStrip_MatchGatti::chargeSignal[3][3]
private

Definition at line 65 of file CSCXonStrip_MatchGatti.h.

Referenced by findXOnStrip(), and setupMatrix().

◆ const_syst

float CSCXonStrip_MatchGatti::const_syst
private

Definition at line 116 of file CSCXonStrip_MatchGatti.h.

Referenced by calculateXonStripError(), and findXOnStrip().

◆ const_syst_ME12

float CSCXonStrip_MatchGatti::const_syst_ME12
private

Definition at line 126 of file CSCXonStrip_MatchGatti.h.

Referenced by CSCXonStrip_MatchGatti(), and findXOnStrip().

◆ const_syst_ME13

float CSCXonStrip_MatchGatti::const_syst_ME13
private

Definition at line 129 of file CSCXonStrip_MatchGatti.h.

Referenced by CSCXonStrip_MatchGatti(), and findXOnStrip().

◆ const_syst_ME1a

float CSCXonStrip_MatchGatti::const_syst_ME1a
private

Definition at line 120 of file CSCXonStrip_MatchGatti.h.

Referenced by CSCXonStrip_MatchGatti(), and findXOnStrip().

◆ const_syst_ME1b

float CSCXonStrip_MatchGatti::const_syst_ME1b
private

Definition at line 123 of file CSCXonStrip_MatchGatti.h.

Referenced by CSCXonStrip_MatchGatti(), and findXOnStrip().

◆ const_syst_ME21

float CSCXonStrip_MatchGatti::const_syst_ME21
private

Definition at line 132 of file CSCXonStrip_MatchGatti.h.

Referenced by CSCXonStrip_MatchGatti(), and findXOnStrip().

◆ const_syst_ME22

float CSCXonStrip_MatchGatti::const_syst_ME22
private

Definition at line 135 of file CSCXonStrip_MatchGatti.h.

Referenced by CSCXonStrip_MatchGatti(), and findXOnStrip().

◆ const_syst_ME31

float CSCXonStrip_MatchGatti::const_syst_ME31
private

Definition at line 138 of file CSCXonStrip_MatchGatti.h.

Referenced by CSCXonStrip_MatchGatti(), and findXOnStrip().

◆ const_syst_ME32

float CSCXonStrip_MatchGatti::const_syst_ME32
private

Definition at line 141 of file CSCXonStrip_MatchGatti.h.

Referenced by CSCXonStrip_MatchGatti(), and findXOnStrip().

◆ const_syst_ME41

float CSCXonStrip_MatchGatti::const_syst_ME41
private

Definition at line 144 of file CSCXonStrip_MatchGatti.h.

Referenced by CSCXonStrip_MatchGatti(), and findXOnStrip().

◆ h

double CSCXonStrip_MatchGatti::h
private

Definition at line 58 of file CSCXonStrip_MatchGatti.h.

◆ k_1

double CSCXonStrip_MatchGatti::k_1
private

Definition at line 62 of file CSCXonStrip_MatchGatti.h.

Referenced by initChamberSpecs().

◆ k_2

double CSCXonStrip_MatchGatti::k_2
private

Definition at line 62 of file CSCXonStrip_MatchGatti.h.

Referenced by initChamberSpecs().

◆ k_3

double CSCXonStrip_MatchGatti::k_3
private

Definition at line 62 of file CSCXonStrip_MatchGatti.h.

Referenced by initChamberSpecs().

◆ n_SW_ME1_1

const int CSCXonStrip_MatchGatti::n_SW_ME1_1 = 6
staticprivate

◆ n_SW_noME1_1

const int CSCXonStrip_MatchGatti::n_SW_noME1_1 = 11
staticprivate

◆ n_val

const int CSCXonStrip_MatchGatti::n_val = 501
staticprivate

◆ noise_level

float CSCXonStrip_MatchGatti::noise_level
private

Definition at line 114 of file CSCXonStrip_MatchGatti.h.

Referenced by calculateXonStripError(), and findXOnStrip().

◆ noise_level_ME12

float CSCXonStrip_MatchGatti::noise_level_ME12
private

Definition at line 124 of file CSCXonStrip_MatchGatti.h.

Referenced by CSCXonStrip_MatchGatti(), and findXOnStrip().

◆ noise_level_ME13

float CSCXonStrip_MatchGatti::noise_level_ME13
private

Definition at line 127 of file CSCXonStrip_MatchGatti.h.

Referenced by CSCXonStrip_MatchGatti(), and findXOnStrip().

◆ noise_level_ME1a

float CSCXonStrip_MatchGatti::noise_level_ME1a
private

Definition at line 118 of file CSCXonStrip_MatchGatti.h.

Referenced by CSCXonStrip_MatchGatti(), and findXOnStrip().

◆ noise_level_ME1b

float CSCXonStrip_MatchGatti::noise_level_ME1b
private

Definition at line 121 of file CSCXonStrip_MatchGatti.h.

Referenced by CSCXonStrip_MatchGatti(), and findXOnStrip().

◆ noise_level_ME21

float CSCXonStrip_MatchGatti::noise_level_ME21
private

Definition at line 130 of file CSCXonStrip_MatchGatti.h.

Referenced by CSCXonStrip_MatchGatti(), and findXOnStrip().

◆ noise_level_ME22

float CSCXonStrip_MatchGatti::noise_level_ME22
private

Definition at line 133 of file CSCXonStrip_MatchGatti.h.

Referenced by CSCXonStrip_MatchGatti(), and findXOnStrip().

◆ noise_level_ME31

float CSCXonStrip_MatchGatti::noise_level_ME31
private

Definition at line 136 of file CSCXonStrip_MatchGatti.h.

Referenced by CSCXonStrip_MatchGatti(), and findXOnStrip().

◆ noise_level_ME32

float CSCXonStrip_MatchGatti::noise_level_ME32
private

Definition at line 139 of file CSCXonStrip_MatchGatti.h.

Referenced by CSCXonStrip_MatchGatti(), and findXOnStrip().

◆ noise_level_ME41

float CSCXonStrip_MatchGatti::noise_level_ME41
private

Definition at line 142 of file CSCXonStrip_MatchGatti.h.

Referenced by CSCXonStrip_MatchGatti(), and findXOnStrip().

◆ norm

double CSCXonStrip_MatchGatti::norm
private

Definition at line 62 of file CSCXonStrip_MatchGatti.h.

Referenced by initChamberSpecs().

◆ q_sum

double CSCXonStrip_MatchGatti::q_sum
private

Definition at line 82 of file CSCXonStrip_MatchGatti.h.

Referenced by setupMatrix().

◆ q_sumC

double CSCXonStrip_MatchGatti::q_sumC
private

◆ q_sumL

double CSCXonStrip_MatchGatti::q_sumL
private

◆ q_sumR

double CSCXonStrip_MatchGatti::q_sumR
private

◆ r

double CSCXonStrip_MatchGatti::r
private

Definition at line 60 of file CSCXonStrip_MatchGatti.h.

Referenced by initChamberSpecs().

◆ recoConditions_

const CSCRecoConditions* CSCXonStrip_MatchGatti::recoConditions_
private

Definition at line 90 of file CSCXonStrip_MatchGatti.h.

Referenced by findXOnStrip(), and setConditions().

◆ specs_

const CSCChamberSpecs* CSCXonStrip_MatchGatti::specs_
private

Definition at line 78 of file CSCXonStrip_MatchGatti.h.

Referenced by findXOnStrip(), and initChamberSpecs().

◆ sqrt_k_3

double CSCXonStrip_MatchGatti::sqrt_k_3
private

Definition at line 62 of file CSCXonStrip_MatchGatti.h.

Referenced by initChamberSpecs().

◆ stripWidth

float CSCXonStrip_MatchGatti::stripWidth
private

◆ use3TimeBins

bool CSCXonStrip_MatchGatti::use3TimeBins
private

Definition at line 86 of file CSCXonStrip_MatchGatti.h.

◆ useCalib

bool CSCXonStrip_MatchGatti::useCalib
private

Definition at line 85 of file CSCXonStrip_MatchGatti.h.

Referenced by CSCXonStrip_MatchGatti(), and findXOnStrip().

◆ v11

float CSCXonStrip_MatchGatti::v11[3]
private

Store elements of matrices for chi^2 computation: 0 = left, 1 = middle, 2 = right.

Definition at line 72 of file CSCXonStrip_MatchGatti.h.

◆ v12

float CSCXonStrip_MatchGatti::v12[3]
private

Definition at line 72 of file CSCXonStrip_MatchGatti.h.

◆ v13

float CSCXonStrip_MatchGatti::v13[3]
private

Definition at line 72 of file CSCXonStrip_MatchGatti.h.

◆ v22

float CSCXonStrip_MatchGatti::v22[3]
private

Definition at line 72 of file CSCXonStrip_MatchGatti.h.

◆ v23

float CSCXonStrip_MatchGatti::v23[3]
private

Definition at line 72 of file CSCXonStrip_MatchGatti.h.

◆ v33

float CSCXonStrip_MatchGatti::v33[3]
private

Definition at line 72 of file CSCXonStrip_MatchGatti.h.

◆ x_centralVal

float CSCXonStrip_MatchGatti::x_centralVal[n_val]
private

Definition at line 112 of file CSCXonStrip_MatchGatti.h.

◆ x_correction_ME1_1

float CSCXonStrip_MatchGatti::x_correction_ME1_1[n_SW_ME1_1][n_val]
private

◆ x_correction_noME1_1

float CSCXonStrip_MatchGatti::x_correction_noME1_1[n_SW_noME1_1][n_val]
private

◆ xt_asymmetry

float CSCXonStrip_MatchGatti::xt_asymmetry
private

Definition at line 115 of file CSCXonStrip_MatchGatti.h.

Referenced by calculateXonStripError(), and findXOnStrip().

◆ xt_asymmetry_ME12

float CSCXonStrip_MatchGatti::xt_asymmetry_ME12
private

Definition at line 125 of file CSCXonStrip_MatchGatti.h.

Referenced by CSCXonStrip_MatchGatti(), and findXOnStrip().

◆ xt_asymmetry_ME13

float CSCXonStrip_MatchGatti::xt_asymmetry_ME13
private

Definition at line 128 of file CSCXonStrip_MatchGatti.h.

Referenced by CSCXonStrip_MatchGatti(), and findXOnStrip().

◆ xt_asymmetry_ME1a

float CSCXonStrip_MatchGatti::xt_asymmetry_ME1a
private

Definition at line 119 of file CSCXonStrip_MatchGatti.h.

Referenced by CSCXonStrip_MatchGatti(), and findXOnStrip().

◆ xt_asymmetry_ME1b

float CSCXonStrip_MatchGatti::xt_asymmetry_ME1b
private

Definition at line 122 of file CSCXonStrip_MatchGatti.h.

Referenced by CSCXonStrip_MatchGatti(), and findXOnStrip().

◆ xt_asymmetry_ME21

float CSCXonStrip_MatchGatti::xt_asymmetry_ME21
private

Definition at line 131 of file CSCXonStrip_MatchGatti.h.

Referenced by CSCXonStrip_MatchGatti(), and findXOnStrip().

◆ xt_asymmetry_ME22

float CSCXonStrip_MatchGatti::xt_asymmetry_ME22
private

Definition at line 134 of file CSCXonStrip_MatchGatti.h.

Referenced by CSCXonStrip_MatchGatti(), and findXOnStrip().

◆ xt_asymmetry_ME31

float CSCXonStrip_MatchGatti::xt_asymmetry_ME31
private

Definition at line 137 of file CSCXonStrip_MatchGatti.h.

Referenced by CSCXonStrip_MatchGatti(), and findXOnStrip().

◆ xt_asymmetry_ME32

float CSCXonStrip_MatchGatti::xt_asymmetry_ME32
private

Definition at line 140 of file CSCXonStrip_MatchGatti.h.

Referenced by CSCXonStrip_MatchGatti(), and findXOnStrip().

◆ xt_asymmetry_ME41

float CSCXonStrip_MatchGatti::xt_asymmetry_ME41
private

Definition at line 143 of file CSCXonStrip_MatchGatti.h.

Referenced by CSCXonStrip_MatchGatti(), and findXOnStrip().

◆ xt_l

float CSCXonStrip_MatchGatti::xt_l[3][3]
private

x-talks 0 = left, 1 = middle, 2 = right ; and then second [] is for time bin tmax-1, tmax, tmax+1

Definition at line 68 of file CSCXonStrip_MatchGatti.h.

Referenced by findXOnStrip(), and setupMatrix().

◆ xt_lr0

float CSCXonStrip_MatchGatti::xt_lr0[3]
private

Definition at line 69 of file CSCXonStrip_MatchGatti.h.

Referenced by findXOnStrip(), and setupMatrix().

◆ xt_lr1

float CSCXonStrip_MatchGatti::xt_lr1[3]
private

Definition at line 69 of file CSCXonStrip_MatchGatti.h.

Referenced by findXOnStrip(), and setupMatrix().

◆ xt_lr2

float CSCXonStrip_MatchGatti::xt_lr2[3]
private

Definition at line 69 of file CSCXonStrip_MatchGatti.h.

Referenced by findXOnStrip(), and setupMatrix().

◆ xt_r

float CSCXonStrip_MatchGatti::xt_r[3][3]
private

Definition at line 68 of file CSCXonStrip_MatchGatti.h.

Referenced by findXOnStrip(), and setupMatrix().

◆ xtalksOffset

float CSCXonStrip_MatchGatti::xtalksOffset
private

Definition at line 87 of file CSCXonStrip_MatchGatti.h.

Referenced by CSCXonStrip_MatchGatti(), and findXOnStrip().

CSCXonStrip_MatchGatti::n_SW_noME1_1
static const int n_SW_noME1_1
Definition: CSCXonStrip_MatchGatti.h:106
CSCXonStrip_MatchGatti::q_sumC
double q_sumC
Definition: CSCXonStrip_MatchGatti.h:82
CosmicGenFilterHelix_cfi.charges
charges
only generated particles of these IDs are considered
Definition: CosmicGenFilterHelix_cfi.py:6
mps_fire.i
i
Definition: mps_fire.py:428
CSCXonStrip_MatchGatti::const_syst_ME1a
float const_syst_ME1a
Definition: CSCXonStrip_MatchGatti.h:120
CSCXonStrip_MatchGatti::xt_asymmetry_ME13
float xt_asymmetry_ME13
Definition: CSCXonStrip_MatchGatti.h:128
dqmMemoryStats.float
float
Definition: dqmMemoryStats.py:127
CSCXonStrip_MatchGatti::k_1
double k_1
Definition: CSCXonStrip_MatchGatti.h:62
CSCXonStrip_MatchGatti::xt_lr1
float xt_lr1[3]
Definition: CSCXonStrip_MatchGatti.h:69
CSCXonStrip_MatchGatti::xfError_XTasym
double xfError_XTasym(double XTasym)
Definition: CSCXonStrip_MatchGatti.cc:606
f
double f[11][100]
Definition: MuScleFitUtils.cc:78
CSCXonStrip_MatchGatti::k_3
double k_3
Definition: CSCXonStrip_MatchGatti.h:62
CSCXonStrip_MatchGatti::k_2
double k_2
Definition: CSCXonStrip_MatchGatti.h:62
min
T min(T a, T b)
Definition: MathUtil.h:58
CSCXonStrip_MatchGatti::xt_l
float xt_l[3][3]
x-talks 0 = left, 1 = middle, 2 = right ; and then second [] is for time bin tmax-1,...
Definition: CSCXonStrip_MatchGatti.h:68
gpuClustering::adc
uint16_t *__restrict__ uint16_t const *__restrict__ adc
Definition: gpuClusterChargeCut.h:20
CSCXonStrip_MatchGatti::getCorrectionValues
void getCorrectionValues(std::string Estimator)
Definition: CSCXonStrip_MatchGatti.cc:500
CSCXonStrip_MatchGatti::a11
float a11[3]
Store elements of auto-correlation matrices: 0 = left, 1 = middle, 2 = right.
Definition: CSCXonStrip_MatchGatti.h:75
CSCXonStrip_MatchGatti::const_syst_ME31
float const_syst_ME31
Definition: CSCXonStrip_MatchGatti.h:138
CSCRecoConditions::noiseMatrix
void noiseMatrix(const CSCDetId &id, int centralStrip, std::vector< float > &nme) const
Definition: CSCRecoConditions.cc:68
CSCXonStrip_MatchGatti::const_syst_ME32
float const_syst_ME32
Definition: CSCXonStrip_MatchGatti.h:141
CSCXonStrip_MatchGatti::const_syst_ME13
float const_syst_ME13
Definition: CSCXonStrip_MatchGatti.h:129
CSCXonStrip_MatchGatti::a23
float a23[3]
Definition: CSCXonStrip_MatchGatti.h:75
CSCXonStrip_MatchGatti::r
double r
Definition: CSCXonStrip_MatchGatti.h:60
CSCXonStrip_MatchGatti::xt_asymmetry_ME22
float xt_asymmetry_ME22
Definition: CSCXonStrip_MatchGatti.h:134
CSCStripHit::ChannelContainer
std::vector< int > ChannelContainer
Definition: CSCStripHit.h:19
HLT_FULL_cff.ME1a
ME1a
Definition: HLT_FULL_cff.py:11698
CSCXonStrip_MatchGatti::const_syst_ME21
float const_syst_ME21
Definition: CSCXonStrip_MatchGatti.h:132
CSCXonStrip_MatchGatti::noise_level_ME1a
float noise_level_ME1a
Definition: CSCXonStrip_MatchGatti.h:118
CSCXonStrip_MatchGatti::estimated2Gatti
double estimated2Gatti(double Xestimated, float StripWidth, bool ME1_1)
Definition: CSCXonStrip_MatchGatti.cc:580
CSCXonStrip_MatchGatti::xtalksOffset
float xtalksOffset
Definition: CSCXonStrip_MatchGatti.h:87
CSCXonStrip_MatchGatti::const_syst_ME12
float const_syst_ME12
Definition: CSCXonStrip_MatchGatti.h:126
relativeConstraints.error
error
Definition: relativeConstraints.py:53
CSCRecoConditions::crossTalk
void crossTalk(const CSCDetId &id, int centralStrip, std::vector< float > &xtalks) const
Definition: CSCRecoConditions.cc:115
edm::LogWarning
Log< level::Warning, false > LogWarning
Definition: MessageLogger.h:122
CSCChamberSpecs::wireRadius
float wireRadius() const
Definition: CSCChamberSpecs.h:159
CSCXonStrip_MatchGatti::stripWidth
float stripWidth
Definition: CSCXonStrip_MatchGatti.h:59
tmax
static const double tmax[3]
Definition: CastorTimeSlew.cc:7
CSCXonStrip_MatchGatti::useCalib
bool useCalib
Definition: CSCXonStrip_MatchGatti.h:85
CSCXonStrip_MatchGatti::a13
float a13[3]
Definition: CSCXonStrip_MatchGatti.h:75
CSCChamberSpecs::wireSpacing
float wireSpacing() const
Definition: CSCChamberSpecs.cc:175
CSCXonStrip_MatchGatti::xfError_Noise
double xfError_Noise(double noise)
Definition: CSCXonStrip_MatchGatti.cc:587
CSCXonStrip_MatchGatti::a33
float a33[3]
Definition: CSCXonStrip_MatchGatti.h:75
dt
float dt
Definition: AMPTWrapper.h:136
alignCSCRings.s
s
Definition: alignCSCRings.py:92
CSCXonStrip_MatchGatti::estimated2GattiCorrection
double estimated2GattiCorrection(double Xestimated, float StripWidth, bool ME1_1)
Definition: CSCXonStrip_MatchGatti.cc:502
CSCXonStrip_MatchGatti::xt_lr2
float xt_lr2[3]
Definition: CSCXonStrip_MatchGatti.h:69
CSCXonStrip_MatchGatti::const_syst
float const_syst
Definition: CSCXonStrip_MatchGatti.h:116
CSCXonStrip_MatchGatti::const_syst_ME22
float const_syst_ME22
Definition: CSCXonStrip_MatchGatti.h:135
M_PI_2
#define M_PI_2
Definition: CSCXonStrip_MatchGatti.cc:32
CSCXonStrip_MatchGatti::q_sum
double q_sum
Definition: CSCXonStrip_MatchGatti.h:82
CSCXonStrip_MatchGatti::xt_asymmetry_ME1a
float xt_asymmetry_ME1a
Definition: CSCXonStrip_MatchGatti.h:119
mathSSE::sqrt
T sqrt(T t)
Definition: SSEVec.h:19
CSCXonStrip_MatchGatti::noise_level_ME22
float noise_level_ME22
Definition: CSCXonStrip_MatchGatti.h:133
CSCXonStrip_MatchGatti::const_syst_ME1b
float const_syst_ME1b
Definition: CSCXonStrip_MatchGatti.h:123
h
dqmdumpme.k
k
Definition: dqmdumpme.py:60
CSCXonStrip_MatchGatti::recoConditions_
const CSCRecoConditions * recoConditions_
Definition: CSCXonStrip_MatchGatti.h:90
phase1PixelTopology::layer
constexpr std::array< uint8_t, layerIndexSize > layer
Definition: phase1PixelTopology.h:99
ALCARECOTkAlJpsiMuMu_cff.charge
charge
Definition: ALCARECOTkAlJpsiMuMu_cff.py:47
CSCStripHit::deadStrip
short int deadStrip() const
is a neighbouring string a dead strip?
Definition: CSCStripHit.h:68
AlCaHLTBitMon_ParallelJobs.p
def p
Definition: AlCaHLTBitMon_ParallelJobs.py:153
SiStripPI::max
Definition: SiStripPayloadInspectorHelper.h:169
CSCXonStrip_MatchGatti::a12
float a12[3]
Definition: CSCXonStrip_MatchGatti.h:75
CSCStripHit::tmax
int tmax() const
Strip hit maximum time bin.
Definition: CSCStripHit.h:44
CSCChamberSpecs::chamberTypeName
std::string chamberTypeName() const
Definition: CSCChamberSpecs.cc:156
createfilelist.int
int
Definition: createfilelist.py:10
CSCXonStrip_MatchGatti::q_sumR
double q_sumR
Definition: CSCXonStrip_MatchGatti.h:82
CSCXonStrip_MatchGatti::setupMatrix
void setupMatrix()
Set matrix for XT corrections and noise.
Definition: CSCXonStrip_MatchGatti.cc:358
CSCXonStrip_MatchGatti::noise_level_ME41
float noise_level_ME41
Definition: CSCXonStrip_MatchGatti.h:142
CSCXonStrip_MatchGatti::xt_asymmetry_ME32
float xt_asymmetry_ME32
Definition: CSCXonStrip_MatchGatti.h:140
CSCXonStrip_MatchGatti::xt_r
float xt_r[3][3]
Definition: CSCXonStrip_MatchGatti.h:68
CSCStripHit::closestMaximum
int closestMaximum() const
Number of strips to the closest other maximum.
Definition: CSCStripHit.h:65
CSCXonStrip_MatchGatti::xt_asymmetry_ME41
float xt_asymmetry_ME41
Definition: CSCXonStrip_MatchGatti.h:143
gpuVertexFinder::noise
__shared__ int noise
Definition: gpuFitVertices.h:50
CSCXonStrip_MatchGatti::noise_level_ME21
float noise_level_ME21
Definition: CSCXonStrip_MatchGatti.h:130
submitPVResolutionJobs.err
err
Definition: submitPVResolutionJobs.py:85
CSCXonStrip_MatchGatti::x_correction_ME1_1
float x_correction_ME1_1[n_SW_ME1_1][n_val]
Definition: CSCXonStrip_MatchGatti.h:111
CSCXonStrip_MatchGatti::xt_asymmetry
float xt_asymmetry
Definition: CSCXonStrip_MatchGatti.h:115
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
CSCXonStrip_MatchGatti::sqrt_k_3
double sqrt_k_3
Definition: CSCXonStrip_MatchGatti.h:62
hgcal_clustering::max_index
size_t max_index(const std::vector< T > &v)
Definition: HGCalClusteringAlgoBase.h:31
me0TriggerPseudoDigis_cff.nStrips
nStrips
1.2 is to make the matching window safely the two nearest strips 0.35 is the size of an ME0 chamber i...
Definition: me0TriggerPseudoDigis_cff.py:26
CSCXonStrip_MatchGatti::calculateXonStripError
double calculateXonStripError(float stripWidth, bool ME1_1)
Definition: CSCXonStrip_MatchGatti.cc:622
CSCXonStrip_MatchGatti::hardcodedCorrectionInitialization
void hardcodedCorrectionInitialization()
Definition: HardCodedCorrectionInitialization.cc:11
CSCXonStrip_MatchGatti::x_correction_noME1_1
float x_correction_noME1_1[n_SW_noME1_1][n_val]
Definition: CSCXonStrip_MatchGatti.h:110
CSCXonStrip_MatchGatti::specs_
const CSCChamberSpecs * specs_
Definition: CSCXonStrip_MatchGatti.h:78
CSCXonStrip_MatchGatti::xt_lr0
float xt_lr0[3]
Definition: CSCXonStrip_MatchGatti.h:69
CSCXonStrip_MatchGatti::norm
double norm
Definition: CSCXonStrip_MatchGatti.h:62
CSCXonStrip_MatchGatti::n_val
static const int n_val
Definition: CSCXonStrip_MatchGatti.h:108
CSCXonStrip_MatchGatti::chargeSignal
float chargeSignal[3][3]
Definition: CSCXonStrip_MatchGatti.h:65
CSCXonStrip_MatchGatti::xt_asymmetry_ME12
float xt_asymmetry_ME12
Definition: CSCXonStrip_MatchGatti.h:125
CSCXonStrip_MatchGatti::calculateXonStripPosition
double calculateXonStripPosition(float stripWidth, bool ME1_1)
Definition: CSCXonStrip_MatchGatti.cc:646
CSCStripHit::numberOfConsecutiveStrips
int numberOfConsecutiveStrips() const
Number of consecutive strips with charge.
Definition: CSCStripHit.h:62
dt_dqm_sourceclient_common_cff.reco
reco
Definition: dt_dqm_sourceclient_common_cff.py:111
CSCXonStrip_MatchGatti::const_syst_ME41
float const_syst_ME41
Definition: CSCXonStrip_MatchGatti.h:144
CSCXonStrip_MatchGatti::noise_level_ME13
float noise_level_ME13
Definition: CSCXonStrip_MatchGatti.h:127
CSCXonStrip_MatchGatti::q_sumL
double q_sumL
Definition: CSCXonStrip_MatchGatti.h:82
CSCXonStrip_MatchGatti::xt_asymmetry_ME31
float xt_asymmetry_ME31
Definition: CSCXonStrip_MatchGatti.h:137
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
CSCXonStrip_MatchGatti::noise_level_ME32
float noise_level_ME32
Definition: CSCXonStrip_MatchGatti.h:139
CSCXonStrip_MatchGatti::noise_level_ME12
float noise_level_ME12
Definition: CSCXonStrip_MatchGatti.h:124
funct::pow
Power< A, B >::type pow(const A &a, const B &b)
Definition: Power.h:29
CSCStripHit::strips
const ChannelContainer & strips() const
L1A.
Definition: CSCStripHit.h:50
funct::abs
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
CSCXonStrip_MatchGatti::noise_level_ME1b
float noise_level_ME1b
Definition: CSCXonStrip_MatchGatti.h:121
dqmiolumiharvest.j
j
Definition: dqmiolumiharvest.py:66
CSCXonStrip_MatchGatti::n_SW_ME1_1
static const int n_SW_ME1_1
Definition: CSCXonStrip_MatchGatti.h:107
submitPVValidationJobs.t
string t
Definition: submitPVValidationJobs.py:644
CSCXonStrip_MatchGatti::xt_asymmetry_ME21
float xt_asymmetry_ME21
Definition: CSCXonStrip_MatchGatti.h:131
DigiDM_cff.strips
strips
#turn off noise in all subdetectors simHcalUnsuppressedDigis.doNoise = False mix.digitizers....
Definition: DigiDM_cff.py:32
CSCXonStrip_MatchGatti::a22
float a22[3]
Definition: CSCXonStrip_MatchGatti.h:75
CSCXonStrip_MatchGatti::noise_level
float noise_level
Definition: CSCXonStrip_MatchGatti.h:114
CSCStripHit::s_adc
const StripHitADCContainer & s_adc() const
L1A.
Definition: CSCStripHit.h:56
CSCXonStrip_MatchGatti::xt_asymmetry_ME1b
float xt_asymmetry_ME1b
Definition: CSCXonStrip_MatchGatti.h:122
CSCXonStrip_MatchGatti::noise_level_ME31
float noise_level_ME31
Definition: CSCXonStrip_MatchGatti.h:136
CSCChamberSpecs::anodeCathodeSpacing
float anodeCathodeSpacing() const
Definition: CSCChamberSpecs.h:136