68      return input.CountChar(
',')+1;
 
   74      return output.CountChar(
',')+1;
 
   80                               fStructure.
Last(
':') - fStructure.
First(
':') - 1));
 
   89         if(
layer==cnt) 
return num;
 
   93      if(
layer==cnt) 
return num;
 
 
  116      if(cnt==idx) 
return brName;
 
 
  131   return neuron ? neuron->
GetName() : 
"NO SUCH NEURON";
 
 
  140   return neuron ? neuron->
GetName() : 
"NO SUCH NEURON";
 
 
  149   std::cout << 
"Network with structure: " << fStructure.
Data() << std::endl;
 
  150   std::cout << 
"inputs with low values in the differences plot may not be needed" << std::endl;
 
  152   char var[64], 
sel[64];
 
  160           << 
" -> " << tmp->GetMean()
 
  161           << 
" +/- " << tmp->GetRMS() << std::endl;
 
 
  188      pos = re.Index(formula,&
len);
 
  189      if(pos==-1 || 
len<3) {
 
  202      rms[i]  = tmp.GetRMS();
 
  238   for(
j=0; 
j< nEvents; 
j++) {
 
  256            params[i] += shift*
rms[i];
 
  258            params[i] -= 2*shift*
rms[i];
 
  262            params[i] += shift*
rms[i];
 
 
  313   THStack* stack  = 
new THStack(
"differences",
"differences (impact of variables on ANN)");
 
  316   char var[64], 
sel[64];
 
  322      tmp->SetDirectory(
nullptr);
 
  323      tmp->SetLineColor(i+1);
 
  327   stack->
Draw(
"nostack");
 
 
  343   THStack* stack = 
new THStack(
"__NNout_TMLPA",
Form(
"Neural net output (neuron %d)",neuron));
 
  344   TH1F *
bgh  = 
new TH1F(
"__bgh_TMLPA", 
"NN output", 50, -0.5, 1.5);
 
  345   TH1F *
sigh = 
new TH1F(
"__sigh_TMLPA", 
"NN output", 50, -0.5, 1.5);
 
  346   bgh->SetDirectory(
nullptr);
 
  347   sigh->SetDirectory(
nullptr);
 
  354   data->Draw(
">>__tmpBkg_MLPA",
bg,
"goff");
 
  358   for(
j=0; 
j< nEvents; 
j++) {
 
  363   for(
j=0; 
j< nEvents; 
j++) {
 
  368   bgh->SetFillStyle(3008);
 
  371   sigh->SetFillStyle(3003);
 
  373   bgh->SetStats(
false);
 
  374   sigh->SetStats(
false);
 
  380   stack->
Draw(
"nostack");
 
  383   data->SetEventList(current);
 
 
  404   drawline.Form(
"Out.Out%d-True.True%d:True.True%d>>",
 
  411      h->SetTitle(
Form(
"#Delta(output - truth) vs. truth for %s",
 
  413      h->GetXaxis()->SetTitle(title);
 
  414      h->GetYaxis()->SetTitle(
Form(
"#Delta(output - truth) for %s", title));
 
 
  434                           "Deviation of MLP output from truth");
 
  439      leg=
new TLegend(.4,.85,.95,.95,
"#Delta(output - truth) vs. truth for:");
 
  460      hs->GetYaxis()->SetTitle(
"#Delta(output - truth)");
 
 
  481   drawline.Form(
"Out.Out%d-True.True%d:In.In%d>>",
 
  485   h->SetDirectory(
nullptr);
 
  488   h->SetTitle(
Form(
"#Delta(output - truth) of %s vs. input %s",
 
  491   h->GetYaxis()->SetTitle(
Form(
"#Delta(output - truth) for %s",
 
 
  513                           Form(
"Deviation of MLP output %s from truth",
 
  520                      Form(
"#Delta(output - truth) of %s vs. input for:",
 
  531      if (
leg) 
leg->AddEntry(
h,
h->GetXaxis()->GetTitle());
 
  538      hs->GetXaxis()->SetTitle(
"Input value");
 
  539      hs->GetYaxis()->SetTitle(
Form(
"#Delta(output - truth) for %s",
 
 
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void data
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void input
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h Atom_t Int_t ULong_t ULong_t unsigned char prop_list Atom_t sel
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t index
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h Atom_t Int_t ULong_t ULong_t unsigned char prop_list Atom_t Atom_t Atom_t Time_t UChar_t len
 
char * Form(const char *fmt,...)
Formats a string in a circular formatting buffer.
 
<div class="legacybox"><h2>Legacy Code</h2> TEventList is a legacy interface: there will be no bug fi...
 
1-D histogram with a double per channel (see TH1 documentation)
 
1-D histogram with a float per channel (see TH1 documentation)
 
virtual void SetDirectory(TDirectory *dir)
By default, when a histogram is created, it is added to the list of histogram objects in the current ...
 
TObject * FindObject(const char *name) const override
Search object named name in the list of functions.
 
The Histogram stack class.
 
virtual void Add(TH1 *h, Option_t *option="")
Add a new histogram to the list.
 
void Draw(Option_t *chopt="") override
Draw this stack with its current attributes.
 
This class displays a legend box (TPaveText) containing several legend entries.
 
This utility class contains a set of tests useful when developing a neural network.
 
Int_t GetNeurons(Int_t layer)
Returns the number of neurons in given layer.
 
Int_t GetLayers()
Returns the number of layers.
 
TProfile * DrawTruthDeviation(Int_t outnode=0, Option_t *option="")
Create a profile of the difference of the MLP output minus the true value for a given output node out...
 
void DrawDInput(Int_t i)
Draws the distribution (on the test sample) of the impact on the network output of a small variation ...
 
const char * GetOutputNeuronTitle(Int_t out)
Returns the name of any neuron from the output layer.
 
~TMLPAnalyzer() override
Destructor.
 
void DrawDInputs()
Draws the distribution (on the test sample) of the impact on the network output of a small variation ...
 
THStack * DrawTruthDeviationInsOut(Int_t outnode=0, Option_t *option="")
Creates a profile of the difference of the MLP output outnode minus the true value of outnode vs the ...
 
void CheckNetwork()
Gives some information about the network in the terminal.
 
void GatherInformations()
Collect information about what is useful in the network.
 
THStack * DrawTruthDeviations(Option_t *option="")
Creates TProfiles of the difference of the MLP output minus the true value vs the true value,...
 
TProfile * DrawTruthDeviationInOut(Int_t innode, Int_t outnode=0, Option_t *option="")
Creates a profile of the difference of the MLP output outnode minus the true value of outnode vs the ...
 
const char * GetInputNeuronTitle(Int_t in)
Returns the name of any neuron from the input layer.
 
TMultiLayerPerceptron * fNetwork
 
TString GetNeuronFormula(Int_t idx)
Returns the formula used as input for neuron (idx) in the first layer.
 
void DrawNetwork(Int_t neuron, const char *signal, const char *bg)
Draws the distribution of the neural network (using ith neuron).
 
Double_t Evaluate(Int_t index, Double_t *params) const
Returns the Neural Net for a given set of input parameters #parameters must equal #input neurons.
 
TEventList * fTest
! EventList defining the events in the test dataset
 
TTree * fData
! pointer to the tree used as datasource
 
Double_t Result(Int_t event, Int_t index=0) const
Computes the output for a given event.
 
TString GetStructure() const
 
TObjArray fLastLayer
Collection of the output neurons; subset of fNetwork.
 
TObjArray fFirstLayer
Collection of the input neurons; subset of fNetwork.
 
void GetEntry(Int_t) const
Load an entry into the network.
 
const char * GetName() const override
Returns name of object.
 
This class describes an elementary neuron, which is the basic element for a Neural Network.
 
Regular expression class.
 
Int_t Atoi() const
Return integer value of string.
 
Ssiz_t First(char c) const
Find first occurrence of a character c.
 
const char * Data() const
 
Ssiz_t Last(char c) const
Find last occurrence of a character c.
 
Int_t CountChar(Int_t c) const
Return number of times character c occurs in the string.
 
Ssiz_t Index(const char *pat, Ssiz_t i=0, ECaseCompare cmp=kExact) const
 
A TTree represents a columnar dataset.
 
virtual Int_t Fill()
Fill all branches.
 
void Draw(Option_t *opt) override
Default Draw method for all objects.
 
virtual void SetDirectory(TDirectory *dir)
Change the tree's directory.
 
TBranch * Branch(const char *name, T *obj, Int_t bufsize=32000, Int_t splitlevel=99)
Add a new branch, and infer the data type from the type of obj being passed.
 
virtual void ResetBranchAddresses()
Tell all of our branches to drop their current objects and allocate new ones.
 
Double_t Sqrt(Double_t x)
Returns the square root of x.