// Class: ReadKaon_Upstream_TMVA // Automatically generated by MethodBase::MakeClass // /* configuration options ===================================================== #GEN -*-*-*-*-*-*-*-*-*-*-*- general info -*-*-*-*-*-*-*-*-*-*-*- Method : MLP::Kaon_Upstream_TMVA TMVA Release : 4.2.1 [262657] ROOT Release : 6.12/06 [396294] Creator : jonesc Date : Sat Jun 23 22:06:59 2018 Host : Linux lcgapp-slc6-x86-64-2.cern.ch 2.6.32-696.18.7.el6.x86_64 #1 SMP Thu Jan 4 13:27:39 CET 2018 x86_64 x86_64 x86_64 GNU/Linux Dir : /var/pcfst/r01/lhcb/jonesc/ANNPID/results/UpgradeSim09cUp02RecoUp01/TrainMixture/TrainPhysTks-EvalPhysTks-NoReweight/GhostAccFrac0.1/PrAccF0.1/KaAccF1.0/PiAccF1.0/TMVA-Upgrade-Sim09cUp02RecoUp01/MLP/Norm/L1SF1.4/L2SF1.4/BP/NCycles750/CE/sigmoid/CVTest15/CVImp1e-16/NotUseRegulator/Kaon/Upstream Training events: 1874437 Analysis type : [Classification] #OPT -*-*-*-*-*-*-*-*-*-*-*-*- options -*-*-*-*-*-*-*-*-*-*-*-*- # Set by User: NCycles: "750" [Number of training cycles] HiddenLayers: "26,26" [Specification of hidden layer architecture] NeuronType: "sigmoid" [Neuron activation function type] EstimatorType: "CE" [MSE (Mean Square Estimator) for Gaussian Likelihood or CE(Cross-Entropy) for Bernoulli Likelihood] V: "True" [Verbose output (short form of "VerbosityLevel" below - overrides the latter one)] VarTransform: "Norm" [List of variable transformations performed before training, e.g., "D_Background,P_Signal,G,N_AllClasses" for: "Decorrelation, PCA-transformation, Gaussianisation, Normalisation, each for the given class of events ('AllClasses' denotes all events of all classes, if no class indication is given, 'All' is assumed)"] H: "True" [Print method-specific help message] TrainingMethod: "BP" [Train with Back-Propagation (BP), BFGS Algorithm (BFGS), or Genetic Algorithm (GA - slower and worse)] EpochMonitoring: "True" [Provide epoch-wise monitoring plots according to TestRate (caution: causes big ROOT output file!)] ConvergenceImprove: "1.000000e-16" [Minimum improvement which counts as improvement (<0 means automatic convergence check is turned off)] ConvergenceTests: "15" [Number of steps (without improvement) required for convergence (<0 means automatic convergence check is turned off)] UseRegulator: "False" [Use regulator to avoid over-training] # Default: RandomSeed: "1" [Random seed for initial synapse weights (0 means unique seed for each run; default value '1')] NeuronInputType: "sum" [Neuron input function type] VerbosityLevel: "Verbose" [Verbosity level] CreateMVAPdfs: "False" [Create PDFs for classifier outputs (signal and background)] IgnoreNegWeightsInTraining: "False" [Events with negative weights are ignored in the training (but are included for testing and performance evaluation)] LearningRate: "2.000000e-02" [ANN learning rate parameter] DecayRate: "1.000000e-02" [Decay rate for learning parameter] TestRate: "10" [Test for overtraining performed at each #th epochs] Sampling: "1.000000e+00" [Only 'Sampling' (randomly selected) events are trained each epoch] SamplingEpoch: "1.000000e+00" [Sampling is used for the first 'SamplingEpoch' epochs, afterwards, all events are taken for training] SamplingImportance: "1.000000e+00" [ The sampling weights of events in epochs which successful (worse estimator than before) are multiplied with SamplingImportance, else they are divided.] SamplingTraining: "True" [The training sample is sampled] SamplingTesting: "False" [The testing sample is sampled] ResetStep: "50" [How often BFGS should reset history] Tau: "3.000000e+00" [LineSearch "size step"] BPMode: "sequential" [Back-propagation learning mode: sequential or batch] BatchSize: "-1" [Batch size: number of events/batch, only set if in Batch Mode, -1 for BatchSize=number_of_events] UpdateLimit: "10000" [Maximum times of regulator update] CalculateErrors: "False" [Calculates inverse Hessian matrix at the end of the training to be able to calculate the uncertainties of an MVA value] WeightRange: "1.000000e+00" [Take the events for the estimator calculations from small deviations from the desired value to large deviations only over the weight range] ## #VAR -*-*-*-*-*-*-*-*-*-*-*-* variables *-*-*-*-*-*-*-*-*-*-*-*- NVar 19 TrackP TrackP TrackP TrackP 'F' [299.929992676,4991732] TrackPt TrackPt TrackPt TrackPt 'F' [22.4395828247,869137] TrackChi2PerDof TrackChi2PerDof TrackChi2PerDof TrackChi2PerDof 'F' [3.66457766177e-06,2.9998281002] TrackNumDof TrackNumDof TrackNumDof TrackNumDof 'I' [2,43] TrackGhostProbability TrackGhostProbability TrackGhostProbability TrackGhostProbability 'F' [0.000584781169891,0.99999833107] TrackFitVeloChi2 TrackFitVeloChi2 TrackFitVeloChi2 TrackFitVeloChi2 'F' [9.53189527308e-10,94.2393569946] TrackFitVeloNDoF TrackFitVeloNDoF TrackFitVeloNDoF TrackFitVeloNDoF 'I' [-1,39] RichUsedR1Gas RichUsedR1Gas RichUsedR1Gas RichUsedR1Gas 'I' [0,1] RichAbovePiThres RichAbovePiThres RichAbovePiThres RichAbovePiThres 'I' [0,1] RichAboveKaThres RichAboveKaThres RichAboveKaThres RichAboveKaThres 'I' [0,1] RichAbovePrThres RichAbovePrThres RichAbovePrThres RichAbovePrThres 'I' [0,1] RichDLLe RichDLLe RichDLLe RichDLLe 'F' [-999,102.354698181] RichDLLmu RichDLLmu RichDLLmu RichDLLmu 'F' [-999,63.8021011353] RichDLLk RichDLLk RichDLLk RichDLLk 'F' [-999,92.4558029175] RichDLLp RichDLLp RichDLLp RichDLLp 'F' [-999,81.0615997314] RichDLLd RichDLLd RichDLLd RichDLLd 'F' [-999,79.984703064] RichDLLbt RichDLLbt RichDLLbt RichDLLbt 'F' [-999,46.2883987427] InAccBrem InAccBrem InAccBrem InAccBrem 'I' [0,1] BremPIDe BremPIDe BremPIDe BremPIDe 'F' [-999,4.79148387909] NSpec 0 ============================================================================ */ #include #include #include #include #include #ifndef IClassifierReader__def #define IClassifierReader__def class IClassifierReader { public: // constructor IClassifierReader() : fStatusIsClean( true ) {} virtual ~IClassifierReader() {} // return classifier response virtual double GetMvaValue( const std::vector& inputValues ) const = 0; // returns classifier status bool IsStatusClean() const { return fStatusIsClean; } protected: bool fStatusIsClean; }; #endif class ReadKaon_Upstream_TMVA : public IClassifierReader { public: // constructor ReadKaon_Upstream_TMVA( std::vector& theInputVars ) : IClassifierReader(), fClassName( "ReadKaon_Upstream_TMVA" ), fNvars( 19 ), fIsNormalised( false ) { // the training input variables const char* inputVars[] = { "TrackP", "TrackPt", "TrackChi2PerDof", "TrackNumDof", "TrackGhostProbability", "TrackFitVeloChi2", "TrackFitVeloNDoF", "RichUsedR1Gas", "RichAbovePiThres", "RichAboveKaThres", "RichAbovePrThres", "RichDLLe", "RichDLLmu", "RichDLLk", "RichDLLp", "RichDLLd", "RichDLLbt", "InAccBrem", "BremPIDe" }; // sanity checks if (theInputVars.size() <= 0) { std::cout << "Problem in class \"" << fClassName << "\": empty input vector" << std::endl; fStatusIsClean = false; } if (theInputVars.size() != fNvars) { std::cout << "Problem in class \"" << fClassName << "\": mismatch in number of input values: " << theInputVars.size() << " != " << fNvars << std::endl; fStatusIsClean = false; } // validate input variables for (size_t ivar = 0; ivar < theInputVars.size(); ivar++) { if (theInputVars[ivar] != inputVars[ivar]) { std::cout << "Problem in class \"" << fClassName << "\": mismatch in input variable names" << std::endl << " for variable [" << ivar << "]: " << theInputVars[ivar].c_str() << " != " << inputVars[ivar] << std::endl; fStatusIsClean = false; } } // initialize min and max vectors (for normalisation) fVmin[0] = -1; fVmax[0] = 1; fVmin[1] = -1; fVmax[1] = 1; fVmin[2] = -1; fVmax[2] = 1; fVmin[3] = -1; fVmax[3] = 0.99999988079071; fVmin[4] = -1; fVmax[4] = 0.99999988079071; fVmin[5] = -1; fVmax[5] = 1; fVmin[6] = -1; fVmax[6] = 1; fVmin[7] = -1; fVmax[7] = 1; fVmin[8] = -1; fVmax[8] = 1; fVmin[9] = -1; fVmax[9] = 1; fVmin[10] = -1; fVmax[10] = 1; fVmin[11] = -1; fVmax[11] = 1; fVmin[12] = -1; fVmax[12] = 1; fVmin[13] = -1; fVmax[13] = 1; fVmin[14] = -1; fVmax[14] = 1; fVmin[15] = -1; fVmax[15] = 1; fVmin[16] = -1; fVmax[16] = 0.99999988079071; fVmin[17] = -1; fVmax[17] = 1; fVmin[18] = -1; fVmax[18] = 1; // initialize input variable types fType[0] = 'F'; fType[1] = 'F'; fType[2] = 'F'; fType[3] = 'I'; fType[4] = 'F'; fType[5] = 'F'; fType[6] = 'I'; fType[7] = 'I'; fType[8] = 'I'; fType[9] = 'I'; fType[10] = 'I'; fType[11] = 'F'; fType[12] = 'F'; fType[13] = 'F'; fType[14] = 'F'; fType[15] = 'F'; fType[16] = 'F'; fType[17] = 'I'; fType[18] = 'F'; // initialize constants Initialize(); // initialize transformation InitTransform(); } // destructor virtual ~ReadKaon_Upstream_TMVA() { Clear(); // method-specific } // the classifier response // "inputValues" is a vector of input values in the same order as the // variables given to the constructor double GetMvaValue( const std::vector& inputValues ) const; private: // method-specific destructor void Clear(); // input variable transformation double fMin_1[3][19]; double fMax_1[3][19]; void InitTransform_1(); void Transform_1( std::vector & iv, int sigOrBgd ) const; void InitTransform(); void Transform( std::vector & iv, int sigOrBgd ) const; // common member variables const char* fClassName; const size_t fNvars; size_t GetNvar() const { return fNvars; } char GetType( int ivar ) const { return fType[ivar]; } // normalisation of input variables const bool fIsNormalised; bool IsNormalised() const { return fIsNormalised; } double fVmin[19]; double fVmax[19]; double NormVariable( double x, double xmin, double xmax ) const { // normalise to output range: [-1, 1] return 2*(x - xmin)/(xmax - xmin) - 1.0; } // type of input variable: 'F' or 'I' char fType[19]; // initialize internal variables void Initialize(); double GetMvaValue__( const std::vector& inputValues ) const; // private members (method specific) double ActivationFnc(double x) const; double OutputActivationFnc(double x) const; int fLayers; int fLayerSize[4]; double fWeightMatrix0to1[27][20]; // weight matrix from layer 0 to 1 double fWeightMatrix1to2[27][27]; // weight matrix from layer 1 to 2 double fWeightMatrix2to3[1][27]; // weight matrix from layer 2 to 3 }; inline void ReadKaon_Upstream_TMVA::Initialize() { // build network structure fLayers = 4; fLayerSize[0] = 20; fLayerSize[1] = 27; fLayerSize[2] = 27; fLayerSize[3] = 1; // weight matrix from layer 0 to 1 fWeightMatrix0to1[0][0] = 7.31314018466931; fWeightMatrix0to1[1][0] = 3.95428599600533; fWeightMatrix0to1[2][0] = 1.32891328526145; fWeightMatrix0to1[3][0] = 6.74482548532394; fWeightMatrix0to1[4][0] = -3.18956715556702; fWeightMatrix0to1[5][0] = -10.8999522123475; fWeightMatrix0to1[6][0] = -3.58042805147207; fWeightMatrix0to1[7][0] = 10.5348614287819; fWeightMatrix0to1[8][0] = -1.73856239891795; fWeightMatrix0to1[9][0] = -2.10231143083516; fWeightMatrix0to1[10][0] = -16.8499440349514; fWeightMatrix0to1[11][0] = 11.0530912405523; fWeightMatrix0to1[12][0] = -5.73348289570101; fWeightMatrix0to1[13][0] = 0.459355573524366; fWeightMatrix0to1[14][0] = -1.84750325755862; fWeightMatrix0to1[15][0] = 1.97703182689245; fWeightMatrix0to1[16][0] = -2.80448484871361; fWeightMatrix0to1[17][0] = 36.5066026736786; fWeightMatrix0to1[18][0] = 3.96101739016462; fWeightMatrix0to1[19][0] = 3.82965396644264; fWeightMatrix0to1[20][0] = -4.90998166983175; fWeightMatrix0to1[21][0] = -0.933085856037711; fWeightMatrix0to1[22][0] = 6.24209521393575; fWeightMatrix0to1[23][0] = -0.45452614556351; fWeightMatrix0to1[24][0] = 2.54948238262265; fWeightMatrix0to1[25][0] = -1.26100021396569; fWeightMatrix0to1[0][1] = 8.00875886690969; fWeightMatrix0to1[1][1] = 0.756529489430696; fWeightMatrix0to1[2][1] = -2.50549783884939; fWeightMatrix0to1[3][1] = -1.22493245742328; fWeightMatrix0to1[4][1] = 0.323731018443945; fWeightMatrix0to1[5][1] = -7.63107835599284; fWeightMatrix0to1[6][1] = 0.485287442242857; fWeightMatrix0to1[7][1] = 0.0990506230405648; fWeightMatrix0to1[8][1] = -0.303448708374184; fWeightMatrix0to1[9][1] = -1.97183750853381; fWeightMatrix0to1[10][1] = -9.18480037980118; fWeightMatrix0to1[11][1] = 9.6312477526507; fWeightMatrix0to1[12][1] = -5.24974548249612; fWeightMatrix0to1[13][1] = 2.48472997961966; fWeightMatrix0to1[14][1] = -2.06111864419719; fWeightMatrix0to1[15][1] = 0.6224896079781; fWeightMatrix0to1[16][1] = -1.9669038285196; fWeightMatrix0to1[17][1] = 2.10246405240162; fWeightMatrix0to1[18][1] = 1.00048070409826; fWeightMatrix0to1[19][1] = 3.01444278265011; fWeightMatrix0to1[20][1] = 4.64924725595872; fWeightMatrix0to1[21][1] = -0.0906070749125051; fWeightMatrix0to1[22][1] = 0.454129827589857; fWeightMatrix0to1[23][1] = -5.12909728314358; fWeightMatrix0to1[24][1] = 7.68570801409286; fWeightMatrix0to1[25][1] = -0.0418298174649013; fWeightMatrix0to1[0][2] = -0.21156452859482; fWeightMatrix0to1[1][2] = -0.769169335542863; fWeightMatrix0to1[2][2] = -0.942966649657133; fWeightMatrix0to1[3][2] = -3.69593652675981; fWeightMatrix0to1[4][2] = 0.119813186461643; fWeightMatrix0to1[5][2] = -0.440864664617694; fWeightMatrix0to1[6][2] = -0.65023066307288; fWeightMatrix0to1[7][2] = -0.0437572343125852; fWeightMatrix0to1[8][2] = -1.96469248044525; fWeightMatrix0to1[9][2] = 0.721978115362813; fWeightMatrix0to1[10][2] = 0.729441244334707; fWeightMatrix0to1[11][2] = 0.0210817880976813; fWeightMatrix0to1[12][2] = 3.93036955702463; fWeightMatrix0to1[13][2] = 0.532626271794764; fWeightMatrix0to1[14][2] = -1.28618900281413; fWeightMatrix0to1[15][2] = -2.41568921100664; fWeightMatrix0to1[16][2] = 0.340466552035045; fWeightMatrix0to1[17][2] = 0.334446685736088; fWeightMatrix0to1[18][2] = 3.02113868537068; fWeightMatrix0to1[19][2] = -0.260035345181235; fWeightMatrix0to1[20][2] = 0.676690547880409; fWeightMatrix0to1[21][2] = 1.80755788933704; fWeightMatrix0to1[22][2] = -0.237864916974196; fWeightMatrix0to1[23][2] = -0.088451073614511; fWeightMatrix0to1[24][2] = 1.18218051738703; fWeightMatrix0to1[25][2] = 0.273611480312875; fWeightMatrix0to1[0][3] = 0.891921011885333; fWeightMatrix0to1[1][3] = -4.63799547816569; fWeightMatrix0to1[2][3] = 2.58450010367886; fWeightMatrix0to1[3][3] = 1.9373009768442; fWeightMatrix0to1[4][3] = -3.57569412965441; fWeightMatrix0to1[5][3] = -4.24640342122929; fWeightMatrix0to1[6][3] = 4.08970718351457; fWeightMatrix0to1[7][3] = 6.98235635734669; fWeightMatrix0to1[8][3] = 0.553674528447787; fWeightMatrix0to1[9][3] = -3.79730162971166; fWeightMatrix0to1[10][3] = 1.40591551582616; fWeightMatrix0to1[11][3] = -19.177277811568; fWeightMatrix0to1[12][3] = -5.01658641914569; fWeightMatrix0to1[13][3] = -2.5592959390883; fWeightMatrix0to1[14][3] = 6.20248658049261; fWeightMatrix0to1[15][3] = -2.69623438681607; fWeightMatrix0to1[16][3] = 1.7448014348909; fWeightMatrix0to1[17][3] = -0.228855191015718; fWeightMatrix0to1[18][3] = -5.09519412262445; fWeightMatrix0to1[19][3] = -8.96196623551646; fWeightMatrix0to1[20][3] = -3.26069868030969; fWeightMatrix0to1[21][3] = -0.880702327911841; fWeightMatrix0to1[22][3] = -0.411259127594639; fWeightMatrix0to1[23][3] = -4.57437628150347; fWeightMatrix0to1[24][3] = 5.41523462590855; fWeightMatrix0to1[25][3] = 1.87573751933688; fWeightMatrix0to1[0][4] = 0.0402792539091874; fWeightMatrix0to1[1][4] = 4.38669445484745; fWeightMatrix0to1[2][4] = 2.51278987040683; fWeightMatrix0to1[3][4] = 0.114523179296074; fWeightMatrix0to1[4][4] = 0.36707153662054; fWeightMatrix0to1[5][4] = -0.116926127831764; fWeightMatrix0to1[6][4] = -0.0681472863187322; fWeightMatrix0to1[7][4] = -0.958567547967439; fWeightMatrix0to1[8][4] = 0.0437985315113457; fWeightMatrix0to1[9][4] = 0.421472410524245; fWeightMatrix0to1[10][4] = -1.66524390101412; fWeightMatrix0to1[11][4] = 0.329191403267554; fWeightMatrix0to1[12][4] = 0.561733448833861; fWeightMatrix0to1[13][4] = -1.73983894613907; fWeightMatrix0to1[14][4] = 0.713728769489123; fWeightMatrix0to1[15][4] = -5.85936167504493; fWeightMatrix0to1[16][4] = -0.309844094489581; fWeightMatrix0to1[17][4] = 0.829701873911497; fWeightMatrix0to1[18][4] = 0.58395554191193; fWeightMatrix0to1[19][4] = -1.49927717256081; fWeightMatrix0to1[20][4] = 1.43527610552518; fWeightMatrix0to1[21][4] = -0.820005152523322; fWeightMatrix0to1[22][4] = -3.77010629572906; fWeightMatrix0to1[23][4] = 1.22812200113269; fWeightMatrix0to1[24][4] = -21.1855633826473; fWeightMatrix0to1[25][4] = 1.93572823043362; fWeightMatrix0to1[0][5] = 0.033115596195043; fWeightMatrix0to1[1][5] = -1.68289935524282; fWeightMatrix0to1[2][5] = 0.881183736201816; fWeightMatrix0to1[3][5] = -1.62005635149348; fWeightMatrix0to1[4][5] = 0.176694027816149; fWeightMatrix0to1[5][5] = 1.00620481411063; fWeightMatrix0to1[6][5] = 0.00911156494221529; fWeightMatrix0to1[7][5] = -1.01257975822804; fWeightMatrix0to1[8][5] = 0.739699256436198; fWeightMatrix0to1[9][5] = 2.42857031779369; fWeightMatrix0to1[10][5] = -1.30561364297716; fWeightMatrix0to1[11][5] = 0.269980516425577; fWeightMatrix0to1[12][5] = -7.21236472715705; fWeightMatrix0to1[13][5] = 0.257638161284653; fWeightMatrix0to1[14][5] = 6.07724992366465; fWeightMatrix0to1[15][5] = 2.21111743526128; fWeightMatrix0to1[16][5] = -0.554162310456534; fWeightMatrix0to1[17][5] = -0.0914355164364809; fWeightMatrix0to1[18][5] = -3.628547765823; fWeightMatrix0to1[19][5] = -0.180181190814803; fWeightMatrix0to1[20][5] = -0.405687743556853; fWeightMatrix0to1[21][5] = 0.157183701091841; fWeightMatrix0to1[22][5] = 0.00494314638157919; fWeightMatrix0to1[23][5] = 0.89917084117192; fWeightMatrix0to1[24][5] = -4.52645443462955; fWeightMatrix0to1[25][5] = 0.734277372391473; fWeightMatrix0to1[0][6] = -0.688212381441773; fWeightMatrix0to1[1][6] = -0.605062836112864; fWeightMatrix0to1[2][6] = 1.05934932132646; fWeightMatrix0to1[3][6] = 0.151481727448003; fWeightMatrix0to1[4][6] = 3.89859753326059; fWeightMatrix0to1[5][6] = 4.08647054876247; fWeightMatrix0to1[6][6] = 0.195956059428828; fWeightMatrix0to1[7][6] = -6.26742154552353; fWeightMatrix0to1[8][6] = 0.125565347208442; fWeightMatrix0to1[9][6] = 4.19212514649176; fWeightMatrix0to1[10][6] = -1.63981841099717; fWeightMatrix0to1[11][6] = 17.6467962598121; fWeightMatrix0to1[12][6] = 6.27132965527591; fWeightMatrix0to1[13][6] = 0.109155532559225; fWeightMatrix0to1[14][6] = -0.082546691230369; fWeightMatrix0to1[15][6] = 0.169404591983218; fWeightMatrix0to1[16][6] = -1.33315858391515; fWeightMatrix0to1[17][6] = 0.126665887446746; fWeightMatrix0to1[18][6] = 5.02989582239787; fWeightMatrix0to1[19][6] = -5.00860266157978; fWeightMatrix0to1[20][6] = 3.09509061132968; fWeightMatrix0to1[21][6] = -0.892872937328311; fWeightMatrix0to1[22][6] = 2.0907959475642; fWeightMatrix0to1[23][6] = 3.38745411552871; fWeightMatrix0to1[24][6] = -5.9747411243846; fWeightMatrix0to1[25][6] = 3.75260844850471; fWeightMatrix0to1[0][7] = -3.81359292371871; fWeightMatrix0to1[1][7] = -2.26467883890173; fWeightMatrix0to1[2][7] = -0.0989504280429569; fWeightMatrix0to1[3][7] = -0.672414213894557; fWeightMatrix0to1[4][7] = 1.46134462382983; fWeightMatrix0to1[5][7] = 12.2174145806002; fWeightMatrix0to1[6][7] = -0.711473117949103; fWeightMatrix0to1[7][7] = 17.5417466388717; fWeightMatrix0to1[8][7] = -0.507972189868652; fWeightMatrix0to1[9][7] = 5.36740714103185; fWeightMatrix0to1[10][7] = -3.90574221712129; fWeightMatrix0to1[11][7] = 4.45930798372262; fWeightMatrix0to1[12][7] = 6.54949283536334; fWeightMatrix0to1[13][7] = -2.72816808953786; fWeightMatrix0to1[14][7] = -3.32859863017278; fWeightMatrix0to1[15][7] = 0.734570716602661; fWeightMatrix0to1[16][7] = 18.9300960833238; fWeightMatrix0to1[17][7] = -4.90529886311415; fWeightMatrix0to1[18][7] = 0.932900436648206; fWeightMatrix0to1[19][7] = -0.454861114628025; fWeightMatrix0to1[20][7] = -19.1409274851006; fWeightMatrix0to1[21][7] = -1.75777765300872; fWeightMatrix0to1[22][7] = 2.25458638969849; fWeightMatrix0to1[23][7] = 20.2570187605951; fWeightMatrix0to1[24][7] = -2.12885579371853; fWeightMatrix0to1[25][7] = 0.647059780829902; fWeightMatrix0to1[0][8] = -0.48743951316595; fWeightMatrix0to1[1][8] = -1.34456931627142; fWeightMatrix0to1[2][8] = 0.633473807076307; fWeightMatrix0to1[3][8] = -0.580528160512352; fWeightMatrix0to1[4][8] = -0.363999446671801; fWeightMatrix0to1[5][8] = -1.13973046766922; fWeightMatrix0to1[6][8] = -1.09385349657595; fWeightMatrix0to1[7][8] = 19.1490439643783; fWeightMatrix0to1[8][8] = 0.556902524670555; fWeightMatrix0to1[9][8] = -1.05346745307232; fWeightMatrix0to1[10][8] = -3.31186404379216; fWeightMatrix0to1[11][8] = -3.54637949680187; fWeightMatrix0to1[12][8] = -1.54528573826512; fWeightMatrix0to1[13][8] = -2.18458994739121; fWeightMatrix0to1[14][8] = 0.393167303828616; fWeightMatrix0to1[15][8] = -0.296016448154777; fWeightMatrix0to1[16][8] = 20.1715684092881; fWeightMatrix0to1[17][8] = -4.39532491687311; fWeightMatrix0to1[18][8] = 2.72294268834393; fWeightMatrix0to1[19][8] = -2.14212988877099; fWeightMatrix0to1[20][8] = -20.7836162539033; fWeightMatrix0to1[21][8] = -1.32741067676216; fWeightMatrix0to1[22][8] = 0.303953833520653; fWeightMatrix0to1[23][8] = 17.9120447959772; fWeightMatrix0to1[24][8] = 0.924559173571614; fWeightMatrix0to1[25][8] = -1.26998249691948; fWeightMatrix0to1[0][9] = 0.0156521988202737; fWeightMatrix0to1[1][9] = -3.31993065848497; fWeightMatrix0to1[2][9] = 1.29881845389102; fWeightMatrix0to1[3][9] = -0.667209502012715; fWeightMatrix0to1[4][9] = -0.282686983104083; fWeightMatrix0to1[5][9] = -0.780121127029346; fWeightMatrix0to1[6][9] = -0.336381887719366; fWeightMatrix0to1[7][9] = 0.776138507956687; fWeightMatrix0to1[8][9] = -2.06888267213627; fWeightMatrix0to1[9][9] = 0.705673737040072; fWeightMatrix0to1[10][9] = -7.20495468398292; fWeightMatrix0to1[11][9] = 0.0880005326698603; fWeightMatrix0to1[12][9] = -0.437506285249454; fWeightMatrix0to1[13][9] = -3.69949878864338; fWeightMatrix0to1[14][9] = 6.65528266488128; fWeightMatrix0to1[15][9] = -2.46669378995998; fWeightMatrix0to1[16][9] = 0.949816268247299; fWeightMatrix0to1[17][9] = -4.26790538295656; fWeightMatrix0to1[18][9] = -0.464388401768674; fWeightMatrix0to1[19][9] = -1.49260256183656; fWeightMatrix0to1[20][9] = -0.133453418304742; fWeightMatrix0to1[21][9] = -1.14730244751254; fWeightMatrix0to1[22][9] = -7.14104690449826; fWeightMatrix0to1[23][9] = -0.667306119615506; fWeightMatrix0to1[24][9] = 0.215377695957772; fWeightMatrix0to1[25][9] = -3.14782153800813; fWeightMatrix0to1[0][10] = 1.20820377936831; fWeightMatrix0to1[1][10] = -0.0916208439586225; fWeightMatrix0to1[2][10] = 4.44426656028868; fWeightMatrix0to1[3][10] = 0.489125959656097; fWeightMatrix0to1[4][10] = -1.5023178208561; fWeightMatrix0to1[5][10] = -4.84337074040677; fWeightMatrix0to1[6][10] = -1.47122688740663; fWeightMatrix0to1[7][10] = 0.320035949281911; fWeightMatrix0to1[8][10] = 0.946056062466388; fWeightMatrix0to1[9][10] = -1.15939376085844; fWeightMatrix0to1[10][10] = -1.71399256365561; fWeightMatrix0to1[11][10] = 0.0489450209697955; fWeightMatrix0to1[12][10] = -2.49155291841117; fWeightMatrix0to1[13][10] = -1.93354617693361; fWeightMatrix0to1[14][10] = 1.22692308787727; fWeightMatrix0to1[15][10] = -0.48262962785923; fWeightMatrix0to1[16][10] = -0.596632462853237; fWeightMatrix0to1[17][10] = -2.1695116447173; fWeightMatrix0to1[18][10] = 2.64582785650448; fWeightMatrix0to1[19][10] = 0.339728374998016; fWeightMatrix0to1[20][10] = -1.54223203339611; fWeightMatrix0to1[21][10] = -0.497607290567528; fWeightMatrix0to1[22][10] = 0.128617853036858; fWeightMatrix0to1[23][10] = 0.584760717781016; fWeightMatrix0to1[24][10] = -0.393936955190211; fWeightMatrix0to1[25][10] = -2.47081830812592; fWeightMatrix0to1[0][11] = -14.8865721721065; fWeightMatrix0to1[1][11] = 6.22607710787393; fWeightMatrix0to1[2][11] = -1.83913541469526; fWeightMatrix0to1[3][11] = 1.86619760305366; fWeightMatrix0to1[4][11] = -26.6944232418095; fWeightMatrix0to1[5][11] = 8.52920219593322; fWeightMatrix0to1[6][11] = -7.47882795296821; fWeightMatrix0to1[7][11] = -42.1861015507325; fWeightMatrix0to1[8][11] = 0.24466495903958; fWeightMatrix0to1[9][11] = -12.9248014088757; fWeightMatrix0to1[10][11] = -2.88376543479983; fWeightMatrix0to1[11][11] = -11.1806090839788; fWeightMatrix0to1[12][11] = -12.5877102941481; fWeightMatrix0to1[13][11] = -7.53725286171641; fWeightMatrix0to1[14][11] = 3.1137530997919; fWeightMatrix0to1[15][11] = -0.067570541673118; fWeightMatrix0to1[16][11] = -27.2961961252108; fWeightMatrix0to1[17][11] = -4.02417635762909; fWeightMatrix0to1[18][11] = 0.493998596495345; fWeightMatrix0to1[19][11] = -0.482261334067577; fWeightMatrix0to1[20][11] = 20.7118402755065; fWeightMatrix0to1[21][11] = -1.59221775114323; fWeightMatrix0to1[22][11] = -2.05347193752348; fWeightMatrix0to1[23][11] = -45.4835387801409; fWeightMatrix0to1[24][11] = -4.1054748395795; fWeightMatrix0to1[25][11] = -0.113598952121269; fWeightMatrix0to1[0][12] = -35.8899556388069; fWeightMatrix0to1[1][12] = 3.68545519175775; fWeightMatrix0to1[2][12] = 0.406367457878443; fWeightMatrix0to1[3][12] = 0.42937730846315; fWeightMatrix0to1[4][12] = 40.8633442232799; fWeightMatrix0to1[5][12] = -5.43415251482413; fWeightMatrix0to1[6][12] = -8.72010140976023; fWeightMatrix0to1[7][12] = 27.3306736092127; fWeightMatrix0to1[8][12] = -2.9867898264249; fWeightMatrix0to1[9][12] = -8.49317345951116; fWeightMatrix0to1[10][12] = -4.66505519143342; fWeightMatrix0to1[11][12] = -0.516666956387769; fWeightMatrix0to1[12][12] = -2.83006785636665; fWeightMatrix0to1[13][12] = 8.96145198998751; fWeightMatrix0to1[14][12] = 2.74208408688361; fWeightMatrix0to1[15][12] = 2.70157733855955; fWeightMatrix0to1[16][12] = -30.2505929394742; fWeightMatrix0to1[17][12] = -2.4603823159156; fWeightMatrix0to1[18][12] = -1.99953578371577; fWeightMatrix0to1[19][12] = 0.717932667266296; fWeightMatrix0to1[20][12] = -17.1235896703547; fWeightMatrix0to1[21][12] = -1.92024692874605; fWeightMatrix0to1[22][12] = -0.330034868097067; fWeightMatrix0to1[23][12] = 10.9029862329197; fWeightMatrix0to1[24][12] = -8.22437173710138; fWeightMatrix0to1[25][12] = 4.54243235980852; fWeightMatrix0to1[0][13] = 19.8829958617463; fWeightMatrix0to1[1][13] = -1.33922004463461; fWeightMatrix0to1[2][13] = -3.29645640336499; fWeightMatrix0to1[3][13] = 0.9036548940853; fWeightMatrix0to1[4][13] = -4.18405515184857; fWeightMatrix0to1[5][13] = -19.9810231609743; fWeightMatrix0to1[6][13] = 5.99744290545818; fWeightMatrix0to1[7][13] = -61.2859911246448; fWeightMatrix0to1[8][13] = -2.58721697167952; fWeightMatrix0to1[9][13] = -2.95361310891816; fWeightMatrix0to1[10][13] = 14.9905234781887; fWeightMatrix0to1[11][13] = -15.750230662134; fWeightMatrix0to1[12][13] = -7.61638970997812; fWeightMatrix0to1[13][13] = 3.32279715442302; fWeightMatrix0to1[14][13] = 0.711583874055715; fWeightMatrix0to1[15][13] = -1.48724229688032; fWeightMatrix0to1[16][13] = -37.4268637980474; fWeightMatrix0to1[17][13] = -4.92460923303997; fWeightMatrix0to1[18][13] = -7.58641020896553; fWeightMatrix0to1[19][13] = 3.09126490865624; fWeightMatrix0to1[20][13] = 42.7109510344081; fWeightMatrix0to1[21][13] = -0.984853715724692; fWeightMatrix0to1[22][13] = 0.658755127305024; fWeightMatrix0to1[23][13] = -49.9782580734317; fWeightMatrix0to1[24][13] = 3.03488833018288; fWeightMatrix0to1[25][13] = -3.80495654687761; fWeightMatrix0to1[0][14] = 18.8479583891932; fWeightMatrix0to1[1][14] = -2.21842568479938; fWeightMatrix0to1[2][14] = -2.03215988087911; fWeightMatrix0to1[3][14] = -1.7474684605274; fWeightMatrix0to1[4][14] = -7.16047474739094; fWeightMatrix0to1[5][14] = -21.362276448083; fWeightMatrix0to1[6][14] = 4.72466906358042; fWeightMatrix0to1[7][14] = 5.76426452611318; fWeightMatrix0to1[8][14] = -3.25339667006719; fWeightMatrix0to1[9][14] = 4.3959490353215; fWeightMatrix0to1[10][14] = -5.12854507963191; fWeightMatrix0to1[11][14] = 8.76512392308153; fWeightMatrix0to1[12][14] = -3.82388708059203; fWeightMatrix0to1[13][14] = 2.28362060515788; fWeightMatrix0to1[14][14] = -1.17694020639049; fWeightMatrix0to1[15][14] = -0.897785847286531; fWeightMatrix0to1[16][14] = -11.1959735344519; fWeightMatrix0to1[17][14] = -4.16865278363474; fWeightMatrix0to1[18][14] = -0.843065234847987; fWeightMatrix0to1[19][14] = 1.7003465650927; fWeightMatrix0to1[20][14] = 8.05759649925098; fWeightMatrix0to1[21][14] = 0.260989095929178; fWeightMatrix0to1[22][14] = 2.01368625469615; fWeightMatrix0to1[23][14] = 4.68171634661902; fWeightMatrix0to1[24][14] = 6.66097813841865; fWeightMatrix0to1[25][14] = -3.44420365748705; fWeightMatrix0to1[0][15] = 19.4951615288718; fWeightMatrix0to1[1][15] = 0.307776571571359; fWeightMatrix0to1[2][15] = -2.47384040440871; fWeightMatrix0to1[3][15] = -1.62965020344714; fWeightMatrix0to1[4][15] = -7.44977301195371; fWeightMatrix0to1[5][15] = -17.3886014778533; fWeightMatrix0to1[6][15] = 4.25362140925313; fWeightMatrix0to1[7][15] = 7.55646581455245; fWeightMatrix0to1[8][15] = -0.0488123350989967; fWeightMatrix0to1[9][15] = 2.45235879568982; fWeightMatrix0to1[10][15] = -3.74194502098496; fWeightMatrix0to1[11][15] = 12.8510260609867; fWeightMatrix0to1[12][15] = -3.12191792274737; fWeightMatrix0to1[13][15] = 0.0169422760203882; fWeightMatrix0to1[14][15] = 0.0238433982207132; fWeightMatrix0to1[15][15] = -3.34531358771612; fWeightMatrix0to1[16][15] = -5.21540054301883; fWeightMatrix0to1[17][15] = -1.76444051940129; fWeightMatrix0to1[18][15] = 0.4109081616437; fWeightMatrix0to1[19][15] = -0.213269418750921; fWeightMatrix0to1[20][15] = 6.07524211459163; fWeightMatrix0to1[21][15] = -1.16069089317504; fWeightMatrix0to1[22][15] = 1.35495792037954; fWeightMatrix0to1[23][15] = 2.3627629927169; fWeightMatrix0to1[24][15] = 4.30200267906934; fWeightMatrix0to1[25][15] = -2.2858836596541; fWeightMatrix0to1[0][16] = 20.5400242663079; fWeightMatrix0to1[1][16] = 0.548837494577681; fWeightMatrix0to1[2][16] = 0.210970999829207; fWeightMatrix0to1[3][16] = -2.29319828329682; fWeightMatrix0to1[4][16] = -6.95291540349295; fWeightMatrix0to1[5][16] = -18.3600026536987; fWeightMatrix0to1[6][16] = 6.62613953347538; fWeightMatrix0to1[7][16] = 1.68642604663158; fWeightMatrix0to1[8][16] = -3.19079861303038; fWeightMatrix0to1[9][16] = 2.23442814417716; fWeightMatrix0to1[10][16] = -4.3613961117667; fWeightMatrix0to1[11][16] = 9.57843703802616; fWeightMatrix0to1[12][16] = -5.36915472681301; fWeightMatrix0to1[13][16] = 2.25336424355841; fWeightMatrix0to1[14][16] = -1.43364019913851; fWeightMatrix0to1[15][16] = -3.37786267247426; fWeightMatrix0to1[16][16] = -6.50439911097161; fWeightMatrix0to1[17][16] = -3.64867404845011; fWeightMatrix0to1[18][16] = 1.71027662454072; fWeightMatrix0to1[19][16] = 2.21389614359712; fWeightMatrix0to1[20][16] = 12.0983597406723; fWeightMatrix0to1[21][16] = -0.479501570705868; fWeightMatrix0to1[22][16] = -0.996515313787738; fWeightMatrix0to1[23][16] = 0.892475972875079; fWeightMatrix0to1[24][16] = 3.38978297215563; fWeightMatrix0to1[25][16] = -3.86383383473307; fWeightMatrix0to1[0][17] = 0.123313110232794; fWeightMatrix0to1[1][17] = -0.806709683895219; fWeightMatrix0to1[2][17] = -2.51173053351104; fWeightMatrix0to1[3][17] = 2.04492770539529; fWeightMatrix0to1[4][17] = 1.20980708628293; fWeightMatrix0to1[5][17] = 10.1417645080874; fWeightMatrix0to1[6][17] = -0.759500981471305; fWeightMatrix0to1[7][17] = 0.458300213096134; fWeightMatrix0to1[8][17] = -0.845834195864621; fWeightMatrix0to1[9][17] = -0.291576160921444; fWeightMatrix0to1[10][17] = -0.131730476011102; fWeightMatrix0to1[11][17] = 5.32687908036598; fWeightMatrix0to1[12][17] = 1.35048914456189; fWeightMatrix0to1[13][17] = -3.03282840903769; fWeightMatrix0to1[14][17] = 0.0610631808246205; fWeightMatrix0to1[15][17] = -1.26268923532206; fWeightMatrix0to1[16][17] = 20.0079827229362; fWeightMatrix0to1[17][17] = 0.802005237791427; fWeightMatrix0to1[18][17] = 0.199248684387247; fWeightMatrix0to1[19][17] = 1.07894238785146; fWeightMatrix0to1[20][17] = -1.61179700405854; fWeightMatrix0to1[21][17] = -1.17056748014389; fWeightMatrix0to1[22][17] = 0.710779545684997; fWeightMatrix0to1[23][17] = 2.007475854351; fWeightMatrix0to1[24][17] = -6.18305522283524; fWeightMatrix0to1[25][17] = -1.91809365945891; fWeightMatrix0to1[0][18] = 0.477420094271949; fWeightMatrix0to1[1][18] = 1.00633077712142; fWeightMatrix0to1[2][18] = -0.630775143729342; fWeightMatrix0to1[3][18] = -0.219540524013094; fWeightMatrix0to1[4][18] = -1.23493263566489; fWeightMatrix0to1[5][18] = 9.25352125393912; fWeightMatrix0to1[6][18] = 0.00768412331671199; fWeightMatrix0to1[7][18] = -0.417306464922175; fWeightMatrix0to1[8][18] = -2.88705320379519; fWeightMatrix0to1[9][18] = -1.27300000471489; fWeightMatrix0to1[10][18] = 0.35707376517987; fWeightMatrix0to1[11][18] = 6.19724373980995; fWeightMatrix0to1[12][18] = -1.39208580672799; fWeightMatrix0to1[13][18] = -2.64420716549952; fWeightMatrix0to1[14][18] = 0.129676200488616; fWeightMatrix0to1[15][18] = 1.93694450581409; fWeightMatrix0to1[16][18] = 14.4734574566283; fWeightMatrix0to1[17][18] = -0.928586657681718; fWeightMatrix0to1[18][18] = -0.594014820521072; fWeightMatrix0to1[19][18] = 0.297467992860177; fWeightMatrix0to1[20][18] = 0.732814583716248; fWeightMatrix0to1[21][18] = -0.201254222304015; fWeightMatrix0to1[22][18] = -0.0293532037656749; fWeightMatrix0to1[23][18] = -1.64747717701201; fWeightMatrix0to1[24][18] = -7.0932087308283; fWeightMatrix0to1[25][18] = -2.40652620995903; fWeightMatrix0to1[0][19] = -5.92859226872954; fWeightMatrix0to1[1][19] = -3.70730504652561; fWeightMatrix0to1[2][19] = 1.77165117639608; fWeightMatrix0to1[3][19] = 2.48749461558872; fWeightMatrix0to1[4][19] = 2.82257283134614; fWeightMatrix0to1[5][19] = 10.3216696873866; fWeightMatrix0to1[6][19] = -4.91174665184793; fWeightMatrix0to1[7][19] = 19.5070305252934; fWeightMatrix0to1[8][19] = 2.46589873919771; fWeightMatrix0to1[9][19] = 5.46400350141144; fWeightMatrix0to1[10][19] = -5.90003328352244; fWeightMatrix0to1[11][19] = 2.90326488465001; fWeightMatrix0to1[12][19] = 8.15106533792045; fWeightMatrix0to1[13][19] = -3.61943644032969; fWeightMatrix0to1[14][19] = -1.0085336041046; fWeightMatrix0to1[15][19] = -1.08650859939; fWeightMatrix0to1[16][19] = 19.5339278867275; fWeightMatrix0to1[17][19] = 2.06968878526045; fWeightMatrix0to1[18][19] = 4.08392483080816; fWeightMatrix0to1[19][19] = -2.74365440466594; fWeightMatrix0to1[20][19] = -18.7810060273163; fWeightMatrix0to1[21][19] = -0.400337908078387; fWeightMatrix0to1[22][19] = 0.957195135731142; fWeightMatrix0to1[23][19] = 20.1900437755716; fWeightMatrix0to1[24][19] = -5.34559196045234; fWeightMatrix0to1[25][19] = 2.18968635909393; // weight matrix from layer 1 to 2 fWeightMatrix1to2[0][0] = 1.92502525204437; fWeightMatrix1to2[1][0] = -2.19816136703935; fWeightMatrix1to2[2][0] = -7.67045110587004; fWeightMatrix1to2[3][0] = -4.69059606493445; fWeightMatrix1to2[4][0] = 3.26016990755937; fWeightMatrix1to2[5][0] = 4.22687739434055; fWeightMatrix1to2[6][0] = -0.411451530698831; fWeightMatrix1to2[7][0] = 1.23831035684829; fWeightMatrix1to2[8][0] = -1.07928576152802; fWeightMatrix1to2[9][0] = 2.14943465303831; fWeightMatrix1to2[10][0] = -2.47938116521934; fWeightMatrix1to2[11][0] = -11.4251109111617; fWeightMatrix1to2[12][0] = 3.19914034289672; fWeightMatrix1to2[13][0] = -0.743015762230821; fWeightMatrix1to2[14][0] = -3.01597722851564; fWeightMatrix1to2[15][0] = 0.97040986993059; fWeightMatrix1to2[16][0] = -1.24003172020569; fWeightMatrix1to2[17][0] = -5.04117394992861; fWeightMatrix1to2[18][0] = 0.237505313917357; fWeightMatrix1to2[19][0] = -5.07168505150112; fWeightMatrix1to2[20][0] = 4.13674018095461; fWeightMatrix1to2[21][0] = -6.05204010293282; fWeightMatrix1to2[22][0] = -7.64082290832386; fWeightMatrix1to2[23][0] = -1.47768286581676; fWeightMatrix1to2[24][0] = -0.682012655533634; fWeightMatrix1to2[25][0] = -2.71824685781359; fWeightMatrix1to2[0][1] = -2.34218850074273; fWeightMatrix1to2[1][1] = -1.31437897991288; fWeightMatrix1to2[2][1] = 0.120189048048238; fWeightMatrix1to2[3][1] = 0.814818727577871; fWeightMatrix1to2[4][1] = 1.15820313421199; fWeightMatrix1to2[5][1] = 0.155753323798717; fWeightMatrix1to2[6][1] = -1.42197060759798; fWeightMatrix1to2[7][1] = -0.80311549299904; fWeightMatrix1to2[8][1] = -3.09375038594059; fWeightMatrix1to2[9][1] = -4.83095048440823; fWeightMatrix1to2[10][1] = 0.874484174220307; fWeightMatrix1to2[11][1] = 0.0183470711646751; fWeightMatrix1to2[12][1] = 0.352328048312178; fWeightMatrix1to2[13][1] = -2.54855094936127; fWeightMatrix1to2[14][1] = -0.71457381469121; fWeightMatrix1to2[15][1] = -0.482351322288862; fWeightMatrix1to2[16][1] = 0.853043843824868; fWeightMatrix1to2[17][1] = -1.55095772452947; fWeightMatrix1to2[18][1] = -0.0360821766152163; fWeightMatrix1to2[19][1] = 0.644887466750878; fWeightMatrix1to2[20][1] = -0.771136901772204; fWeightMatrix1to2[21][1] = 0.251835937528783; fWeightMatrix1to2[22][1] = -3.42113856430335; fWeightMatrix1to2[23][1] = 0.287368857402849; fWeightMatrix1to2[24][1] = 0.793164515536989; fWeightMatrix1to2[25][1] = -1.08563226670743; fWeightMatrix1to2[0][2] = 0.790841282244757; fWeightMatrix1to2[1][2] = 1.32795508259874; fWeightMatrix1to2[2][2] = -4.34142342028601; fWeightMatrix1to2[3][2] = -0.222498226227249; fWeightMatrix1to2[4][2] = -1.01229826065651; fWeightMatrix1to2[5][2] = -2.42049271632226; fWeightMatrix1to2[6][2] = 0.0720849153513074; fWeightMatrix1to2[7][2] = -0.480835346134282; fWeightMatrix1to2[8][2] = 1.73167969062482; fWeightMatrix1to2[9][2] = -2.49449952935093; fWeightMatrix1to2[10][2] = 2.53158118569574; fWeightMatrix1to2[11][2] = -3.39240120165306; fWeightMatrix1to2[12][2] = 0.0125429179081841; fWeightMatrix1to2[13][2] = -2.25292677167657; fWeightMatrix1to2[14][2] = -0.415459395042107; fWeightMatrix1to2[15][2] = 1.46237260097188; fWeightMatrix1to2[16][2] = -0.766575214938073; fWeightMatrix1to2[17][2] = 0.51263390139071; fWeightMatrix1to2[18][2] = -2.00784374062173; fWeightMatrix1to2[19][2] = 3.37334070720342; fWeightMatrix1to2[20][2] = -0.921293561695822; fWeightMatrix1to2[21][2] = -0.277237403434851; fWeightMatrix1to2[22][2] = -1.5019190309306; fWeightMatrix1to2[23][2] = -1.29394671897336; fWeightMatrix1to2[24][2] = 2.11339802330892; fWeightMatrix1to2[25][2] = -2.5755992471291; fWeightMatrix1to2[0][3] = 0.845556014320588; fWeightMatrix1to2[1][3] = -1.02483043988204; fWeightMatrix1to2[2][3] = 1.17044644186196; fWeightMatrix1to2[3][3] = 0.555073475525693; fWeightMatrix1to2[4][3] = 0.0360733795290896; fWeightMatrix1to2[5][3] = -2.45535941748368; fWeightMatrix1to2[6][3] = 0.119781357593131; fWeightMatrix1to2[7][3] = 0.694232293817272; fWeightMatrix1to2[8][3] = 0.33174193910639; fWeightMatrix1to2[9][3] = -1.65590231764862; fWeightMatrix1to2[10][3] = -2.47177827767357; fWeightMatrix1to2[11][3] = -1.26135361118594; fWeightMatrix1to2[12][3] = -1.04297390573986; fWeightMatrix1to2[13][3] = 0.630432925886089; fWeightMatrix1to2[14][3] = 2.06707614096461; fWeightMatrix1to2[15][3] = 0.528030399722431; fWeightMatrix1to2[16][3] = 0.899675371232267; fWeightMatrix1to2[17][3] = 0.419425484974525; fWeightMatrix1to2[18][3] = -2.13053884122783; fWeightMatrix1to2[19][3] = 0.569291206084451; fWeightMatrix1to2[20][3] = -2.84909357446152; fWeightMatrix1to2[21][3] = -1.63812715429863; fWeightMatrix1to2[22][3] = 0.347936709711908; fWeightMatrix1to2[23][3] = -0.599652587878726; fWeightMatrix1to2[24][3] = 0.274442446620546; fWeightMatrix1to2[25][3] = -0.603336331174468; fWeightMatrix1to2[0][4] = -4.27608677117873; fWeightMatrix1to2[1][4] = -1.12357000683663; fWeightMatrix1to2[2][4] = -5.34989617296474; fWeightMatrix1to2[3][4] = 1.02558380968809; fWeightMatrix1to2[4][4] = -0.97100634592674; fWeightMatrix1to2[5][4] = -6.30300222520868; fWeightMatrix1to2[6][4] = -0.903685264491454; fWeightMatrix1to2[7][4] = -0.0927082717768727; fWeightMatrix1to2[8][4] = -2.7024502661689; fWeightMatrix1to2[9][4] = -3.73677491134803; fWeightMatrix1to2[10][4] = 3.72173022528194; fWeightMatrix1to2[11][4] = -0.757865447013225; fWeightMatrix1to2[12][4] = -9.0555994147363; fWeightMatrix1to2[13][4] = 0.121892838912371; fWeightMatrix1to2[14][4] = 10.3593126686327; fWeightMatrix1to2[15][4] = -2.81483703176499; fWeightMatrix1to2[16][4] = 0.701332934488435; fWeightMatrix1to2[17][4] = -3.78572971372962; fWeightMatrix1to2[18][4] = -0.731285520662634; fWeightMatrix1to2[19][4] = 1.09236303195376; fWeightMatrix1to2[20][4] = -3.42503167287042; fWeightMatrix1to2[21][4] = -2.83356128414697; fWeightMatrix1to2[22][4] = -2.78382629790732; fWeightMatrix1to2[23][4] = 1.94118353267687; fWeightMatrix1to2[24][4] = -0.510705482713156; fWeightMatrix1to2[25][4] = 8.20731626238626; fWeightMatrix1to2[0][5] = -0.558080631631122; fWeightMatrix1to2[1][5] = -1.29083265340006; fWeightMatrix1to2[2][5] = 1.43553812699968; fWeightMatrix1to2[3][5] = 0.873470034608944; fWeightMatrix1to2[4][5] = 0.789247792111679; fWeightMatrix1to2[5][5] = -0.325040314187631; fWeightMatrix1to2[6][5] = -0.00737882051779948; fWeightMatrix1to2[7][5] = -2.34228961089806; fWeightMatrix1to2[8][5] = -0.813061566552195; fWeightMatrix1to2[9][5] = -0.61732761323217; fWeightMatrix1to2[10][5] = 0.0738669243051186; fWeightMatrix1to2[11][5] = 10.6834553141154; fWeightMatrix1to2[12][5] = 2.25295781681375; fWeightMatrix1to2[13][5] = -1.95836771759576; fWeightMatrix1to2[14][5] = -6.58095833584528; fWeightMatrix1to2[15][5] = -5.7034301416557; fWeightMatrix1to2[16][5] = 1.88185170194765; fWeightMatrix1to2[17][5] = 2.68836879663798; fWeightMatrix1to2[18][5] = -1.70946908539642; fWeightMatrix1to2[19][5] = 5.37346229937234; fWeightMatrix1to2[20][5] = -4.54354484152233; fWeightMatrix1to2[21][5] = 2.63985470695364; fWeightMatrix1to2[22][5] = 2.54089011939973; fWeightMatrix1to2[23][5] = -0.177954186374646; fWeightMatrix1to2[24][5] = -0.477462738080714; fWeightMatrix1to2[25][5] = -0.348469614536088; fWeightMatrix1to2[0][6] = -1.73556098681262; fWeightMatrix1to2[1][6] = -1.13686738499134; fWeightMatrix1to2[2][6] = -2.25492967599092; fWeightMatrix1to2[3][6] = -4.14881312409441; fWeightMatrix1to2[4][6] = 1.9466312170459; fWeightMatrix1to2[5][6] = 2.65923373468181; fWeightMatrix1to2[6][6] = 1.48191352233545; fWeightMatrix1to2[7][6] = -3.51057595008012; fWeightMatrix1to2[8][6] = 0.569169349822941; fWeightMatrix1to2[9][6] = -3.46280999082945; fWeightMatrix1to2[10][6] = -0.124787555162022; fWeightMatrix1to2[11][6] = -2.89931581772454; fWeightMatrix1to2[12][6] = -0.209793651493441; fWeightMatrix1to2[13][6] = -2.49868297579113; fWeightMatrix1to2[14][6] = -1.4667490778766; fWeightMatrix1to2[15][6] = -1.03770466733639; fWeightMatrix1to2[16][6] = 0.61526580238144; fWeightMatrix1to2[17][6] = 0.819640872884953; fWeightMatrix1to2[18][6] = -2.28721062496997; fWeightMatrix1to2[19][6] = -0.427933618995949; fWeightMatrix1to2[20][6] = 0.553650275793091; fWeightMatrix1to2[21][6] = -0.714739558192443; fWeightMatrix1to2[22][6] = -1.85588952729732; fWeightMatrix1to2[23][6] = -0.546353018653871; fWeightMatrix1to2[24][6] = -0.197769117416253; fWeightMatrix1to2[25][6] = -0.146705355081231; fWeightMatrix1to2[0][7] = -2.79142277884529; fWeightMatrix1to2[1][7] = -0.8047599931015; fWeightMatrix1to2[2][7] = -4.39888865070687; fWeightMatrix1to2[3][7] = 0.550604212745261; fWeightMatrix1to2[4][7] = -2.34017135530095; fWeightMatrix1to2[5][7] = -3.26456008578606; fWeightMatrix1to2[6][7] = -1.87179345904835; fWeightMatrix1to2[7][7] = -2.68304514283208; fWeightMatrix1to2[8][7] = -4.26260314851689; fWeightMatrix1to2[9][7] = 1.72490604132007; fWeightMatrix1to2[10][7] = 1.23234279596517; fWeightMatrix1to2[11][7] = -10.8716731398604; fWeightMatrix1to2[12][7] = -5.66274668731824; fWeightMatrix1to2[13][7] = -1.26113359892149; fWeightMatrix1to2[14][7] = 3.47912509958341; fWeightMatrix1to2[15][7] = -3.43678710178724; fWeightMatrix1to2[16][7] = 1.73602332901559; fWeightMatrix1to2[17][7] = -5.66216682996293; fWeightMatrix1to2[18][7] = -4.82413256940523; fWeightMatrix1to2[19][7] = 2.52184427871557; fWeightMatrix1to2[20][7] = -4.90831639838173; fWeightMatrix1to2[21][7] = -3.02229137127827; fWeightMatrix1to2[22][7] = -3.26628521401098; fWeightMatrix1to2[23][7] = -0.186033039290418; fWeightMatrix1to2[24][7] = -2.48138866206047; fWeightMatrix1to2[25][7] = -1.05664383807362; fWeightMatrix1to2[0][8] = 1.87695438261885; fWeightMatrix1to2[1][8] = 1.7614861619938; fWeightMatrix1to2[2][8] = 0.0553464413961261; fWeightMatrix1to2[3][8] = -0.966403523019857; fWeightMatrix1to2[4][8] = 1.65871182472591; fWeightMatrix1to2[5][8] = 3.34788838140206; fWeightMatrix1to2[6][8] = -0.0562246432892963; fWeightMatrix1to2[7][8] = 0.652345794779126; fWeightMatrix1to2[8][8] = 0.518496796809389; fWeightMatrix1to2[9][8] = 0.380848612793533; fWeightMatrix1to2[10][8] = -1.829390563676; fWeightMatrix1to2[11][8] = -1.52350442428959; fWeightMatrix1to2[12][8] = 0.277707198458221; fWeightMatrix1to2[13][8] = 1.87593839337906; fWeightMatrix1to2[14][8] = -4.79711541304677; fWeightMatrix1to2[15][8] = 0.0768108636080178; fWeightMatrix1to2[16][8] = -3.31290316778816; fWeightMatrix1to2[17][8] = 0.164114310424828; fWeightMatrix1to2[18][8] = -0.141146056584348; fWeightMatrix1to2[19][8] = 1.22327900608321; fWeightMatrix1to2[20][8] = -2.70898820205027; fWeightMatrix1to2[21][8] = -0.885548896340323; fWeightMatrix1to2[22][8] = -0.391510373696318; fWeightMatrix1to2[23][8] = 0.800029712126418; fWeightMatrix1to2[24][8] = 1.13235420993994; fWeightMatrix1to2[25][8] = 0.171954059624925; fWeightMatrix1to2[0][9] = 1.21845167337898; fWeightMatrix1to2[1][9] = -0.511321424943523; fWeightMatrix1to2[2][9] = -5.63029660947197; fWeightMatrix1to2[3][9] = -2.50096078321861; fWeightMatrix1to2[4][9] = -4.18455192280876; fWeightMatrix1to2[5][9] = 1.65903535015953; fWeightMatrix1to2[6][9] = 0.0806546691172037; fWeightMatrix1to2[7][9] = 0.616295032112756; fWeightMatrix1to2[8][9] = -1.97757140078341; fWeightMatrix1to2[9][9] = -0.0564398787839147; fWeightMatrix1to2[10][9] = -0.257867094200523; fWeightMatrix1to2[11][9] = -2.47555528839649; fWeightMatrix1to2[12][9] = -0.309088263752267; fWeightMatrix1to2[13][9] = -1.07625619928218; fWeightMatrix1to2[14][9] = -4.43238745377288; fWeightMatrix1to2[15][9] = -1.40959873984434; fWeightMatrix1to2[16][9] = -0.0743661895986663; fWeightMatrix1to2[17][9] = -3.21398135678017; fWeightMatrix1to2[18][9] = 0.189255021511334; fWeightMatrix1to2[19][9] = -0.683826836203979; fWeightMatrix1to2[20][9] = 0.384822699804925; fWeightMatrix1to2[21][9] = -1.45279180649354; fWeightMatrix1to2[22][9] = -0.939976032971923; fWeightMatrix1to2[23][9] = 0.561499662109425; fWeightMatrix1to2[24][9] = -0.539018136891713; fWeightMatrix1to2[25][9] = -0.917203225460822; fWeightMatrix1to2[0][10] = 0.972206790823318; fWeightMatrix1to2[1][10] = 0.173978700592302; fWeightMatrix1to2[2][10] = 2.18909276497069; fWeightMatrix1to2[3][10] = -0.67631800914213; fWeightMatrix1to2[4][10] = 0.126905462450238; fWeightMatrix1to2[5][10] = -0.340716467878524; fWeightMatrix1to2[6][10] = -4.23383367507095; fWeightMatrix1to2[7][10] = -2.82764679238969; fWeightMatrix1to2[8][10] = 4.88103983591976; fWeightMatrix1to2[9][10] = -0.41433375211765; fWeightMatrix1to2[10][10] = -0.795481600109254; fWeightMatrix1to2[11][10] = 1.39059446845241; fWeightMatrix1to2[12][10] = 0.410187214512423; fWeightMatrix1to2[13][10] = -0.494600612846412; fWeightMatrix1to2[14][10] = 1.32434362370547; fWeightMatrix1to2[15][10] = 3.16751318646844; fWeightMatrix1to2[16][10] = -1.178439946873; fWeightMatrix1to2[17][10] = 4.91163183910641; fWeightMatrix1to2[18][10] = 2.86330984724253; fWeightMatrix1to2[19][10] = 3.77118055913896; fWeightMatrix1to2[20][10] = 4.00961466865432; fWeightMatrix1to2[21][10] = 1.67187317168568; fWeightMatrix1to2[22][10] = 0.834732515352358; fWeightMatrix1to2[23][10] = -2.86879717469282; fWeightMatrix1to2[24][10] = -5.01680604710309; fWeightMatrix1to2[25][10] = -0.661031995978608; fWeightMatrix1to2[0][11] = -0.567344824520409; fWeightMatrix1to2[1][11] = -1.5832650212219; fWeightMatrix1to2[2][11] = -2.14265352217278; fWeightMatrix1to2[3][11] = -2.86401406835168; fWeightMatrix1to2[4][11] = 1.10938328327475; fWeightMatrix1to2[5][11] = 0.597904914202227; fWeightMatrix1to2[6][11] = -0.901797677602488; fWeightMatrix1to2[7][11] = 2.49759062845925; fWeightMatrix1to2[8][11] = -1.20578150410692; fWeightMatrix1to2[9][11] = 1.26332092675842; fWeightMatrix1to2[10][11] = 0.565981375609031; fWeightMatrix1to2[11][11] = -6.30763192483216; fWeightMatrix1to2[12][11] = -2.75324301396348; fWeightMatrix1to2[13][11] = -1.97510326299248; fWeightMatrix1to2[14][11] = 1.57149928986574; fWeightMatrix1to2[15][11] = -5.84051791816227; fWeightMatrix1to2[16][11] = -1.42030150059211; fWeightMatrix1to2[17][11] = -3.60174272936524; fWeightMatrix1to2[18][11] = 4.61311841006369; fWeightMatrix1to2[19][11] = -4.66041460066079; fWeightMatrix1to2[20][11] = -0.349099175418921; fWeightMatrix1to2[21][11] = 0.781907765430557; fWeightMatrix1to2[22][11] = -4.63769027122802; fWeightMatrix1to2[23][11] = 0.649537960085988; fWeightMatrix1to2[24][11] = 0.324668407809127; fWeightMatrix1to2[25][11] = 0.0998398282205678; fWeightMatrix1to2[0][12] = -0.112401924116621; fWeightMatrix1to2[1][12] = -0.974149294457631; fWeightMatrix1to2[2][12] = -0.587200129963262; fWeightMatrix1to2[3][12] = 2.42192674280735; fWeightMatrix1to2[4][12] = -2.1642824595565; fWeightMatrix1to2[5][12] = 2.05382159076862; fWeightMatrix1to2[6][12] = -0.209137944904371; fWeightMatrix1to2[7][12] = 0.138660637113841; fWeightMatrix1to2[8][12] = -4.5563465555734; fWeightMatrix1to2[9][12] = -0.43826219729111; fWeightMatrix1to2[10][12] = 0.265170156153079; fWeightMatrix1to2[11][12] = 1.02381958605668; fWeightMatrix1to2[12][12] = -1.41041673303664; fWeightMatrix1to2[13][12] = 0.649908872401359; fWeightMatrix1to2[14][12] = -3.01339433803449; fWeightMatrix1to2[15][12] = -0.606819310869069; fWeightMatrix1to2[16][12] = 0.917715518156497; fWeightMatrix1to2[17][12] = -1.06301825765626; fWeightMatrix1to2[18][12] = -3.07691523736483; fWeightMatrix1to2[19][12] = -1.22317256151831; fWeightMatrix1to2[20][12] = -2.08958550630489; fWeightMatrix1to2[21][12] = 0.809567302702907; fWeightMatrix1to2[22][12] = 0.417699676616459; fWeightMatrix1to2[23][12] = 1.03250423536044; fWeightMatrix1to2[24][12] = -2.52086146584604; fWeightMatrix1to2[25][12] = -0.200167839121148; fWeightMatrix1to2[0][13] = 0.668794656558205; fWeightMatrix1to2[1][13] = 1.01894237041184; fWeightMatrix1to2[2][13] = -1.07348081365815; fWeightMatrix1to2[3][13] = 1.8802676936844; fWeightMatrix1to2[4][13] = -0.626922636487889; fWeightMatrix1to2[5][13] = 0.370100188936483; fWeightMatrix1to2[6][13] = -0.825363656949553; fWeightMatrix1to2[7][13] = 2.04081920250756; fWeightMatrix1to2[8][13] = -0.012772758969801; fWeightMatrix1to2[9][13] = -0.885626303862832; fWeightMatrix1to2[10][13] = -1.34736629701173; fWeightMatrix1to2[11][13] = -4.00483035724726; fWeightMatrix1to2[12][13] = -3.39673217367843; fWeightMatrix1to2[13][13] = 2.73160327043941; fWeightMatrix1to2[14][13] = 0.616178103852511; fWeightMatrix1to2[15][13] = -3.87997301490806; fWeightMatrix1to2[16][13] = -0.76946719202158; fWeightMatrix1to2[17][13] = -2.66378332507489; fWeightMatrix1to2[18][13] = -3.04504896497195; fWeightMatrix1to2[19][13] = -2.76707930026388; fWeightMatrix1to2[20][13] = -1.35690051473639; fWeightMatrix1to2[21][13] = -2.07616800562816; fWeightMatrix1to2[22][13] = -2.53622301240697; fWeightMatrix1to2[23][13] = -1.058071704506; fWeightMatrix1to2[24][13] = -2.38039168506086; fWeightMatrix1to2[25][13] = 0.753685204567994; fWeightMatrix1to2[0][14] = 1.49047308500999; fWeightMatrix1to2[1][14] = -2.00386576266234; fWeightMatrix1to2[2][14] = -0.371624325074841; fWeightMatrix1to2[3][14] = -0.231961891561698; fWeightMatrix1to2[4][14] = -0.131962834640871; fWeightMatrix1to2[5][14] = -0.272536310845781; fWeightMatrix1to2[6][14] = 1.42467197673383; fWeightMatrix1to2[7][14] = 0.788488740360383; fWeightMatrix1to2[8][14] = 2.03387466704383; fWeightMatrix1to2[9][14] = -1.82644608547784; fWeightMatrix1to2[10][14] = 1.28024201018621; fWeightMatrix1to2[11][14] = 1.10726550721623; fWeightMatrix1to2[12][14] = -1.74226340320929; fWeightMatrix1to2[13][14] = -2.48075320246439; fWeightMatrix1to2[14][14] = -7.68238759020657; fWeightMatrix1to2[15][14] = 0.529107143606879; fWeightMatrix1to2[16][14] = -3.36227278380518; fWeightMatrix1to2[17][14] = 2.13887009935572; fWeightMatrix1to2[18][14] = 0.338151390118052; fWeightMatrix1to2[19][14] = -0.733857396087227; fWeightMatrix1to2[20][14] = 3.40978038018425; fWeightMatrix1to2[21][14] = 0.993100869946417; fWeightMatrix1to2[22][14] = 3.14973776113412; fWeightMatrix1to2[23][14] = -0.569324731859458; fWeightMatrix1to2[24][14] = -1.55933244561691; fWeightMatrix1to2[25][14] = 2.04329701253725; fWeightMatrix1to2[0][15] = 1.59524354760919; fWeightMatrix1to2[1][15] = -0.971724081167548; fWeightMatrix1to2[2][15] = 0.512766143513311; fWeightMatrix1to2[3][15] = 1.73760896971351; fWeightMatrix1to2[4][15] = -1.64043844186581; fWeightMatrix1to2[5][15] = -0.343868265779205; fWeightMatrix1to2[6][15] = -1.09004703624212; fWeightMatrix1to2[7][15] = 0.494645030087662; fWeightMatrix1to2[8][15] = 0.547366784095456; fWeightMatrix1to2[9][15] = 0.915305432917895; fWeightMatrix1to2[10][15] = -0.137854897793931; fWeightMatrix1to2[11][15] = 0.905923147178581; fWeightMatrix1to2[12][15] = 0.111861040404255; fWeightMatrix1to2[13][15] = 1.95493319899649; fWeightMatrix1to2[14][15] = -1.43017137327991; fWeightMatrix1to2[15][15] = 2.4582844641843; fWeightMatrix1to2[16][15] = -2.69451727181987; fWeightMatrix1to2[17][15] = 0.102184790955138; fWeightMatrix1to2[18][15] = 0.731910107589865; fWeightMatrix1to2[19][15] = -0.057915031908152; fWeightMatrix1to2[20][15] = -1.20398476829138; fWeightMatrix1to2[21][15] = -1.4290317992799; fWeightMatrix1to2[22][15] = 2.06455681236679; fWeightMatrix1to2[23][15] = 1.0145814536639; fWeightMatrix1to2[24][15] = -1.04858626491887; fWeightMatrix1to2[25][15] = 0.209959256507584; fWeightMatrix1to2[0][16] = -2.06045172687136; fWeightMatrix1to2[1][16] = -0.121273578720474; fWeightMatrix1to2[2][16] = -2.23882338370836; fWeightMatrix1to2[3][16] = -0.353625292360704; fWeightMatrix1to2[4][16] = -2.0162971321496; fWeightMatrix1to2[5][16] = -0.480197781601089; fWeightMatrix1to2[6][16] = -1.93608350305337; fWeightMatrix1to2[7][16] = 2.70334265916017; fWeightMatrix1to2[8][16] = 0.095279083406264; fWeightMatrix1to2[9][16] = -3.36152132210554; fWeightMatrix1to2[10][16] = 2.82774497508142; fWeightMatrix1to2[11][16] = 5.98274899514343; fWeightMatrix1to2[12][16] = 8.79761286669839; fWeightMatrix1to2[13][16] = 1.30692479472028; fWeightMatrix1to2[14][16] = -4.19437740065534; fWeightMatrix1to2[15][16] = -3.61517531916618; fWeightMatrix1to2[16][16] = 2.63525355502553; fWeightMatrix1to2[17][16] = -1.20017100150523; fWeightMatrix1to2[18][16] = -0.811696617375166; fWeightMatrix1to2[19][16] = 3.77507856071645; fWeightMatrix1to2[20][16] = -0.54261350710701; fWeightMatrix1to2[21][16] = -6.99599145350683; fWeightMatrix1to2[22][16] = 3.47413091647375; fWeightMatrix1to2[23][16] = -1.2711361716312; fWeightMatrix1to2[24][16] = -1.1681271604427; fWeightMatrix1to2[25][16] = 0.0504933190817829; fWeightMatrix1to2[0][17] = 13.3009105569409; fWeightMatrix1to2[1][17] = 1.46278343456569; fWeightMatrix1to2[2][17] = 0.428949005079607; fWeightMatrix1to2[3][17] = 0.206515389082418; fWeightMatrix1to2[4][17] = 0.63642099328115; fWeightMatrix1to2[5][17] = -1.81606466340622; fWeightMatrix1to2[6][17] = -0.231169095584637; fWeightMatrix1to2[7][17] = 1.76154648147685; fWeightMatrix1to2[8][17] = 0.427249337935156; fWeightMatrix1to2[9][17] = 0.0250833598359033; fWeightMatrix1to2[10][17] = -2.54133841364677; fWeightMatrix1to2[11][17] = -0.948098834980753; fWeightMatrix1to2[12][17] = -4.51408777132571; fWeightMatrix1to2[13][17] = 5.63640423770414; fWeightMatrix1to2[14][17] = -0.268253520894605; fWeightMatrix1to2[15][17] = -1.20645328210518; fWeightMatrix1to2[16][17] = -3.530366606929; fWeightMatrix1to2[17][17] = 1.2646552671321; fWeightMatrix1to2[18][17] = -0.514150198938155; fWeightMatrix1to2[19][17] = 1.35822622614024; fWeightMatrix1to2[20][17] = 1.56520120296973; fWeightMatrix1to2[21][17] = 0.0871378577407768; fWeightMatrix1to2[22][17] = -1.54474881080948; fWeightMatrix1to2[23][17] = -2.32871990831189; fWeightMatrix1to2[24][17] = -1.07403865849549; fWeightMatrix1to2[25][17] = 1.03061517054593; fWeightMatrix1to2[0][18] = -1.50620606193208; fWeightMatrix1to2[1][18] = -1.91782274492417; fWeightMatrix1to2[2][18] = 2.39256585721499; fWeightMatrix1to2[3][18] = -0.432151558298; fWeightMatrix1to2[4][18] = 0.98201930366438; fWeightMatrix1to2[5][18] = 0.53732452566579; fWeightMatrix1to2[6][18] = 2.43610090234018; fWeightMatrix1to2[7][18] = 3.37199656966169; fWeightMatrix1to2[8][18] = -1.14044948985079; fWeightMatrix1to2[9][18] = -1.66314993473534; fWeightMatrix1to2[10][18] = -1.01776674731464; fWeightMatrix1to2[11][18] = -3.50150702407669; fWeightMatrix1to2[12][18] = -0.639692801155214; fWeightMatrix1to2[13][18] = -1.37384864152487; fWeightMatrix1to2[14][18] = -2.00253765400571; fWeightMatrix1to2[15][18] = -1.58839386516393; fWeightMatrix1to2[16][18] = -1.40392774006485; fWeightMatrix1to2[17][18] = -1.44572483951959; fWeightMatrix1to2[18][18] = -1.63921222509607; fWeightMatrix1to2[19][18] = 1.84248560637423; fWeightMatrix1to2[20][18] = -0.319701274569651; fWeightMatrix1to2[21][18] = 0.867308291808253; fWeightMatrix1to2[22][18] = 2.24425843853857; fWeightMatrix1to2[23][18] = 1.79179218711947; fWeightMatrix1to2[24][18] = 0.677470656211613; fWeightMatrix1to2[25][18] = -1.75211775678558; fWeightMatrix1to2[0][19] = -2.43062944614314; fWeightMatrix1to2[1][19] = -0.316064384169041; fWeightMatrix1to2[2][19] = -0.0757983108928117; fWeightMatrix1to2[3][19] = 0.0749902973725306; fWeightMatrix1to2[4][19] = -0.601417157972909; fWeightMatrix1to2[5][19] = 0.0743158997526918; fWeightMatrix1to2[6][19] = 0.180788942290204; fWeightMatrix1to2[7][19] = 1.01247927279778; fWeightMatrix1to2[8][19] = 0.332489160121371; fWeightMatrix1to2[9][19] = 0.92439053456777; fWeightMatrix1to2[10][19] = -2.42744428475444; fWeightMatrix1to2[11][19] = -0.268588832496247; fWeightMatrix1to2[12][19] = -0.572670107343032; fWeightMatrix1to2[13][19] = -4.89700758413764; fWeightMatrix1to2[14][19] = -0.14963741399959; fWeightMatrix1to2[15][19] = 0.0339061983414314; fWeightMatrix1to2[16][19] = 1.60382263695772; fWeightMatrix1to2[17][19] = 0.154732172583522; fWeightMatrix1to2[18][19] = 1.07242818965602; fWeightMatrix1to2[19][19] = 0.502462336108036; fWeightMatrix1to2[20][19] = 0.527325041923829; fWeightMatrix1to2[21][19] = -0.681018986458184; fWeightMatrix1to2[22][19] = 0.96149981242671; fWeightMatrix1to2[23][19] = 1.08552947946374; fWeightMatrix1to2[24][19] = 1.67294161280008; fWeightMatrix1to2[25][19] = -0.286750943727975; fWeightMatrix1to2[0][20] = 0.39551680431529; fWeightMatrix1to2[1][20] = -0.688985386435784; fWeightMatrix1to2[2][20] = 3.9936761945029; fWeightMatrix1to2[3][20] = -3.35611638169014; fWeightMatrix1to2[4][20] = -0.794822123859181; fWeightMatrix1to2[5][20] = 0.12095782875228; fWeightMatrix1to2[6][20] = -0.297413411229287; fWeightMatrix1to2[7][20] = -0.655565631325538; fWeightMatrix1to2[8][20] = 0.0328298309629951; fWeightMatrix1to2[9][20] = 2.47687107216798; fWeightMatrix1to2[10][20] = -1.31727714643284; fWeightMatrix1to2[11][20] = 0.586882777837358; fWeightMatrix1to2[12][20] = 3.34669415200308; fWeightMatrix1to2[13][20] = -1.24835285149263; fWeightMatrix1to2[14][20] = -0.303064713737857; fWeightMatrix1to2[15][20] = 0.43584036158932; fWeightMatrix1to2[16][20] = -4.05159409606892; fWeightMatrix1to2[17][20] = 2.21576542642957; fWeightMatrix1to2[18][20] = 0.67403982688309; fWeightMatrix1to2[19][20] = -2.0911645289899; fWeightMatrix1to2[20][20] = 6.11559527924956; fWeightMatrix1to2[21][20] = -0.013067681953243; fWeightMatrix1to2[22][20] = -4.97966359587766; fWeightMatrix1to2[23][20] = 0.526919362427119; fWeightMatrix1to2[24][20] = 1.64084511898937; fWeightMatrix1to2[25][20] = -2.71646594335391; fWeightMatrix1to2[0][21] = 2.22033700989532; fWeightMatrix1to2[1][21] = -1.28310820487593; fWeightMatrix1to2[2][21] = 1.18578797331458; fWeightMatrix1to2[3][21] = -0.73473592442451; fWeightMatrix1to2[4][21] = 0.141528879766262; fWeightMatrix1to2[5][21] = 0.711922114344245; fWeightMatrix1to2[6][21] = 0.420392742362001; fWeightMatrix1to2[7][21] = -1.55959954705701; fWeightMatrix1to2[8][21] = -0.150977166222392; fWeightMatrix1to2[9][21] = -0.826967323258667; fWeightMatrix1to2[10][21] = -2.55736204440673; fWeightMatrix1to2[11][21] = 0.427437314196909; fWeightMatrix1to2[12][21] = -0.555050570684762; fWeightMatrix1to2[13][21] = 1.51648027904742; fWeightMatrix1to2[14][21] = -2.02798082027158; fWeightMatrix1to2[15][21] = -1.24478947245666; fWeightMatrix1to2[16][21] = -1.10974587268366; fWeightMatrix1to2[17][21] = 0.234679404464147; fWeightMatrix1to2[18][21] = -1.20817467338081; fWeightMatrix1to2[19][21] = -0.214963054674045; fWeightMatrix1to2[20][21] = -0.551367808087289; fWeightMatrix1to2[21][21] = -0.248544895971679; fWeightMatrix1to2[22][21] = -1.57470436736833; fWeightMatrix1to2[23][21] = -1.00650451873223; fWeightMatrix1to2[24][21] = -2.07544847240614; fWeightMatrix1to2[25][21] = -2.41509644605963; fWeightMatrix1to2[0][22] = 1.06220335747465; fWeightMatrix1to2[1][22] = -1.16047658870225; fWeightMatrix1to2[2][22] = 0.666979449975493; fWeightMatrix1to2[3][22] = 0.166428237495014; fWeightMatrix1to2[4][22] = 2.02048309562704; fWeightMatrix1to2[5][22] = -1.73313536581252; fWeightMatrix1to2[6][22] = -1.33613669571071; fWeightMatrix1to2[7][22] = -1.41710952121289; fWeightMatrix1to2[8][22] = 0.739746571062648; fWeightMatrix1to2[9][22] = -0.977774933891606; fWeightMatrix1to2[10][22] = -1.64406527899345; fWeightMatrix1to2[11][22] = -2.54032042109841; fWeightMatrix1to2[12][22] = 0.818762151921671; fWeightMatrix1to2[13][22] = 1.35068736031281; fWeightMatrix1to2[14][22] = -0.0460603969070053; fWeightMatrix1to2[15][22] = 0.920107484971912; fWeightMatrix1to2[16][22] = -6.07423513736312; fWeightMatrix1to2[17][22] = -7.49388419084191; fWeightMatrix1to2[18][22] = 0.31110795273547; fWeightMatrix1to2[19][22] = -4.01484611087324; fWeightMatrix1to2[20][22] = 2.43282622903122; fWeightMatrix1to2[21][22] = -0.920386214577947; fWeightMatrix1to2[22][22] = 0.611896098732821; fWeightMatrix1to2[23][22] = -0.960746825641441; fWeightMatrix1to2[24][22] = -0.209268645993483; fWeightMatrix1to2[25][22] = -1.24577473947544; fWeightMatrix1to2[0][23] = -4.16911430750348; fWeightMatrix1to2[1][23] = -0.610118987761007; fWeightMatrix1to2[2][23] = -7.22029488926003; fWeightMatrix1to2[3][23] = -1.94310999565718; fWeightMatrix1to2[4][23] = 0.47533548589762; fWeightMatrix1to2[5][23] = 3.99763843025216; fWeightMatrix1to2[6][23] = 1.31614639991916; fWeightMatrix1to2[7][23] = -5.21032743441094; fWeightMatrix1to2[8][23] = -2.35437945183884; fWeightMatrix1to2[9][23] = 0.827583024928972; fWeightMatrix1to2[10][23] = 3.7128858059891; fWeightMatrix1to2[11][23] = -3.71241555480885; fWeightMatrix1to2[12][23] = 0.916489493973131; fWeightMatrix1to2[13][23] = -0.184673968866184; fWeightMatrix1to2[14][23] = -1.79749453404998; fWeightMatrix1to2[15][23] = 1.14658167671565; fWeightMatrix1to2[16][23] = 3.55282866773412; fWeightMatrix1to2[17][23] = -2.18276754185619; fWeightMatrix1to2[18][23] = -0.176782081914723; fWeightMatrix1to2[19][23] = 1.00840050772836; fWeightMatrix1to2[20][23] = -1.15524139389051; fWeightMatrix1to2[21][23] = -2.26921706492768; fWeightMatrix1to2[22][23] = -2.38620651054307; fWeightMatrix1to2[23][23] = -1.46796702026481; fWeightMatrix1to2[24][23] = 2.08745587559456; fWeightMatrix1to2[25][23] = -2.90173218978531; fWeightMatrix1to2[0][24] = 1.67162372805067; fWeightMatrix1to2[1][24] = -0.120915035506766; fWeightMatrix1to2[2][24] = 1.68434946410522; fWeightMatrix1to2[3][24] = -2.19653554636011; fWeightMatrix1to2[4][24] = 0.376294137000896; fWeightMatrix1to2[5][24] = -2.28293990013547; fWeightMatrix1to2[6][24] = -0.482091005947777; fWeightMatrix1to2[7][24] = -0.0115310881092496; fWeightMatrix1to2[8][24] = 0.347149883664455; fWeightMatrix1to2[9][24] = 0.162735729060801; fWeightMatrix1to2[10][24] = -0.26155710694465; fWeightMatrix1to2[11][24] = -2.45502798538402; fWeightMatrix1to2[12][24] = 0.25134156419056; fWeightMatrix1to2[13][24] = -0.229574224042053; fWeightMatrix1to2[14][24] = 2.24911359493143; fWeightMatrix1to2[15][24] = -6.0217905481103; fWeightMatrix1to2[16][24] = 2.91196961550715; fWeightMatrix1to2[17][24] = -1.94327700332592; fWeightMatrix1to2[18][24] = -6.93340782141272; fWeightMatrix1to2[19][24] = -2.53265048128494; fWeightMatrix1to2[20][24] = -1.68587890600208; fWeightMatrix1to2[21][24] = -3.99937763184718; fWeightMatrix1to2[22][24] = -4.95454439229119; fWeightMatrix1to2[23][24] = -3.65584655882476; fWeightMatrix1to2[24][24] = 0.584102879454267; fWeightMatrix1to2[25][24] = -0.737413331827237; fWeightMatrix1to2[0][25] = -0.191552868352777; fWeightMatrix1to2[1][25] = -0.0453096034484923; fWeightMatrix1to2[2][25] = 2.58545069064326; fWeightMatrix1to2[3][25] = 1.54293075624934; fWeightMatrix1to2[4][25] = -0.535412796200926; fWeightMatrix1to2[5][25] = 1.39660703855603; fWeightMatrix1to2[6][25] = -1.31265459648857; fWeightMatrix1to2[7][25] = 1.71284718730767; fWeightMatrix1to2[8][25] = -0.717965714733347; fWeightMatrix1to2[9][25] = -1.26338140150762; fWeightMatrix1to2[10][25] = -1.62795158808522; fWeightMatrix1to2[11][25] = -1.70943663919344; fWeightMatrix1to2[12][25] = 2.24090736346216; fWeightMatrix1to2[13][25] = -0.18364140988795; fWeightMatrix1to2[14][25] = -2.16767186218072; fWeightMatrix1to2[15][25] = -1.8799026298825; fWeightMatrix1to2[16][25] = -2.06284400630603; fWeightMatrix1to2[17][25] = -0.0613932149036233; fWeightMatrix1to2[18][25] = -1.88424706036558; fWeightMatrix1to2[19][25] = 0.338703016252846; fWeightMatrix1to2[20][25] = -2.17857737916305; fWeightMatrix1to2[21][25] = 0.120470929484302; fWeightMatrix1to2[22][25] = -1.88644264151775; fWeightMatrix1to2[23][25] = -0.208491024180428; fWeightMatrix1to2[24][25] = -0.844311103430519; fWeightMatrix1to2[25][25] = -1.59997131379706; fWeightMatrix1to2[0][26] = -2.05387802024594; fWeightMatrix1to2[1][26] = -1.99192781598885; fWeightMatrix1to2[2][26] = 0.743204056121248; fWeightMatrix1to2[3][26] = 2.61019076104654; fWeightMatrix1to2[4][26] = -3.79679323547243; fWeightMatrix1to2[5][26] = -3.75742962070698; fWeightMatrix1to2[6][26] = -0.527144029103799; fWeightMatrix1to2[7][26] = -0.519662705915285; fWeightMatrix1to2[8][26] = -2.84214818661886; fWeightMatrix1to2[9][26] = -2.01714998998177; fWeightMatrix1to2[10][26] = -4.0318511511387; fWeightMatrix1to2[11][26] = 1.06168548336905; fWeightMatrix1to2[12][26] = -3.21097436558837; fWeightMatrix1to2[13][26] = -1.46723731966939; fWeightMatrix1to2[14][26] = -1.91319120515706; fWeightMatrix1to2[15][26] = 0.000178678902805549; fWeightMatrix1to2[16][26] = -0.923985358690712; fWeightMatrix1to2[17][26] = 1.5634597061912; fWeightMatrix1to2[18][26] = -2.69611692132661; fWeightMatrix1to2[19][26] = -1.7356420199891; fWeightMatrix1to2[20][26] = -6.75746886656993; fWeightMatrix1to2[21][26] = 2.01082538405808; fWeightMatrix1to2[22][26] = 2.36122163429159; fWeightMatrix1to2[23][26] = -2.3081184444774; fWeightMatrix1to2[24][26] = -2.85465196274869; fWeightMatrix1to2[25][26] = -2.00148623572729; // weight matrix from layer 2 to 3 fWeightMatrix2to3[0][0] = 1.61078261013062; fWeightMatrix2to3[0][1] = -1.04361446775197; fWeightMatrix2to3[0][2] = -6.06356716291454; fWeightMatrix2to3[0][3] = -2.8029500550794; fWeightMatrix2to3[0][4] = 2.60661238433342; fWeightMatrix2to3[0][5] = -1.82078557110212; fWeightMatrix2to3[0][6] = 1.89018217169305; fWeightMatrix2to3[0][7] = -2.93652579681918; fWeightMatrix2to3[0][8] = 1.96222352796433; fWeightMatrix2to3[0][9] = 3.35050564442835; fWeightMatrix2to3[0][10] = -1.81508911898084; fWeightMatrix2to3[0][11] = 3.96050463342793; fWeightMatrix2to3[0][12] = -4.30655902056645; fWeightMatrix2to3[0][13] = 4.13715299741317; fWeightMatrix2to3[0][14] = -6.20523406124395; fWeightMatrix2to3[0][15] = 2.97019518300221; fWeightMatrix2to3[0][16] = -2.02884360064534; fWeightMatrix2to3[0][17] = 1.95755947862915; fWeightMatrix2to3[0][18] = -2.26349036894752; fWeightMatrix2to3[0][19] = -2.60907772233962; fWeightMatrix2to3[0][20] = 1.54288727268656; fWeightMatrix2to3[0][21] = -4.10489234037631; fWeightMatrix2to3[0][22] = 1.90024091771466; fWeightMatrix2to3[0][23] = -1.06155824037229; fWeightMatrix2to3[0][24] = -2.35720814545697; fWeightMatrix2to3[0][25] = -4.25413531736433; fWeightMatrix2to3[0][26] = -1.37392915694078; } inline double ReadKaon_Upstream_TMVA::GetMvaValue__( const std::vector& inputValues ) const { if (inputValues.size() != (unsigned int)fLayerSize[0]-1) { std::cout << "Input vector needs to be of size " << fLayerSize[0]-1 << std::endl; return 0; } std::array fWeights0 {{}}; std::array fWeights1 {{}}; std::array fWeights2 {{}}; std::array fWeights3 {{}}; fWeights0.back() = 1.; fWeights1.back() = 1.; fWeights2.back() = 1.; for (int i=0; i& inputValues ) const { // classifier response value double retval = 0; // classifier response, sanity check first if (!IsStatusClean()) { std::cout << "Problem in class \"" << fClassName << "\": cannot return classifier response" << " because status is dirty" << std::endl; retval = 0; } else { if (IsNormalised()) { // normalise variables std::vector iV; iV.reserve(inputValues.size()); int ivar = 0; for (std::vector::const_iterator varIt = inputValues.begin(); varIt != inputValues.end(); varIt++, ivar++) { iV.push_back(NormVariable( *varIt, fVmin[ivar], fVmax[ivar] )); } Transform( iV, -1 ); retval = GetMvaValue__( iV ); } else { std::vector iV; int ivar = 0; for (std::vector::const_iterator varIt = inputValues.begin(); varIt != inputValues.end(); varIt++, ivar++) { iV.push_back(*varIt); } Transform( iV, -1 ); retval = GetMvaValue__( iV ); } } return retval; } //_______________________________________________________________________ inline void ReadKaon_Upstream_TMVA::InitTransform_1() { // Normalization transformation, initialisation fMin_1[0][0] = 398.970001221; fMax_1[0][0] = 4906346; fMin_1[1][0] = 299.929992676; fMax_1[1][0] = 4991732; fMin_1[2][0] = 299.929992676; fMax_1[2][0] = 4991732; fMin_1[0][1] = 30.6749610901; fMax_1[0][1] = 842704.4375; fMin_1[1][1] = 22.4395828247; fMax_1[1][1] = 869137; fMin_1[2][1] = 22.4395828247; fMax_1[2][1] = 869137; fMin_1[0][2] = 0.00610114913434; fMax_1[0][2] = 2.9998281002; fMin_1[1][2] = 3.66457766177e-06; fMax_1[1][2] = 2.99979233742; fMin_1[2][2] = 3.66457766177e-06; fMax_1[2][2] = 2.9998281002; fMin_1[0][3] = 2; fMax_1[0][3] = 43; fMin_1[1][3] = 2; fMax_1[1][3] = 43; fMin_1[2][3] = 2; fMax_1[2][3] = 43; fMin_1[0][4] = 0.000584781169891; fMax_1[0][4] = 0.997683465481; fMin_1[1][4] = 0.000659823417664; fMax_1[1][4] = 0.99999833107; fMin_1[2][4] = 0.000584781169891; fMax_1[2][4] = 0.99999833107; fMin_1[0][5] = 4.11253395782e-08; fMax_1[0][5] = 86.530090332; fMin_1[1][5] = 9.53189527308e-10; fMax_1[1][5] = 94.2393569946; fMin_1[2][5] = 9.53189527308e-10; fMax_1[2][5] = 94.2393569946; fMin_1[0][6] = -1; fMax_1[0][6] = 39; fMin_1[1][6] = -1; fMax_1[1][6] = 38; fMin_1[2][6] = -1; fMax_1[2][6] = 39; fMin_1[0][7] = 0; fMax_1[0][7] = 1; fMin_1[1][7] = 0; fMax_1[1][7] = 1; fMin_1[2][7] = 0; fMax_1[2][7] = 1; fMin_1[0][8] = 0; fMax_1[0][8] = 1; fMin_1[1][8] = 0; fMax_1[1][8] = 1; fMin_1[2][8] = 0; fMax_1[2][8] = 1; fMin_1[0][9] = 0; fMax_1[0][9] = 1; fMin_1[1][9] = 0; fMax_1[1][9] = 1; fMin_1[2][9] = 0; fMax_1[2][9] = 1; fMin_1[0][10] = 0; fMax_1[0][10] = 1; fMin_1[1][10] = 0; fMax_1[1][10] = 1; fMin_1[2][10] = 0; fMax_1[2][10] = 1; fMin_1[0][11] = -999; fMax_1[0][11] = 55.9726982117; fMin_1[1][11] = -999; fMax_1[1][11] = 102.354698181; fMin_1[2][11] = -999; fMax_1[2][11] = 102.354698181; fMin_1[0][12] = -999; fMax_1[0][12] = 20.3693008423; fMin_1[1][12] = -999; fMax_1[1][12] = 63.8021011353; fMin_1[2][12] = -999; fMax_1[2][12] = 63.8021011353; fMin_1[0][13] = -999; fMax_1[0][13] = 92.4558029175; fMin_1[1][13] = -999; fMax_1[1][13] = 82.4543991089; fMin_1[2][13] = -999; fMax_1[2][13] = 92.4558029175; fMin_1[0][14] = -999; fMax_1[0][14] = 81.0615997314; fMin_1[1][14] = -999; fMax_1[1][14] = 72.5251998901; fMin_1[2][14] = -999; fMax_1[2][14] = 81.0615997314; fMin_1[0][15] = -999; fMax_1[0][15] = 79.984703064; fMin_1[1][15] = -999; fMax_1[1][15] = 66.5830993652; fMin_1[2][15] = -999; fMax_1[2][15] = 79.984703064; fMin_1[0][16] = -999; fMax_1[0][16] = 46.2883987427; fMin_1[1][16] = -999; fMax_1[1][16] = 43.9267997742; fMin_1[2][16] = -999; fMax_1[2][16] = 46.2883987427; fMin_1[0][17] = 0; fMax_1[0][17] = 1; fMin_1[1][17] = 0; fMax_1[1][17] = 1; fMin_1[2][17] = 0; fMax_1[2][17] = 1; fMin_1[0][18] = -999; fMax_1[0][18] = 4.79148387909; fMin_1[1][18] = -999; fMax_1[1][18] = 4.79148387909; fMin_1[2][18] = -999; fMax_1[2][18] = 4.79148387909; } //_______________________________________________________________________ inline void ReadKaon_Upstream_TMVA::Transform_1( std::vector& iv, int cls) const { // Normalization transformation if (cls < 0 || cls > 2) { if (2 > 1 ) cls = 2; else cls = 2; } const int nVar = 19; // get indices of used variables // define the indices of the variables which are transformed by this transformation static std::vector indicesGet; static std::vector indicesPut; if ( indicesGet.empty() ) { indicesGet.reserve(fNvars); indicesGet.push_back( 0); indicesGet.push_back( 1); indicesGet.push_back( 2); indicesGet.push_back( 3); indicesGet.push_back( 4); indicesGet.push_back( 5); indicesGet.push_back( 6); indicesGet.push_back( 7); indicesGet.push_back( 8); indicesGet.push_back( 9); indicesGet.push_back( 10); indicesGet.push_back( 11); indicesGet.push_back( 12); indicesGet.push_back( 13); indicesGet.push_back( 14); indicesGet.push_back( 15); indicesGet.push_back( 16); indicesGet.push_back( 17); indicesGet.push_back( 18); } if ( indicesPut.empty() ) { indicesPut.reserve(fNvars); indicesPut.push_back( 0); indicesPut.push_back( 1); indicesPut.push_back( 2); indicesPut.push_back( 3); indicesPut.push_back( 4); indicesPut.push_back( 5); indicesPut.push_back( 6); indicesPut.push_back( 7); indicesPut.push_back( 8); indicesPut.push_back( 9); indicesPut.push_back( 10); indicesPut.push_back( 11); indicesPut.push_back( 12); indicesPut.push_back( 13); indicesPut.push_back( 14); indicesPut.push_back( 15); indicesPut.push_back( 16); indicesPut.push_back( 17); indicesPut.push_back( 18); } static std::vector dv; dv.resize(nVar); for (int ivar=0; ivar& iv, int sigOrBgd ) const { Transform_1( iv, sigOrBgd ); }