English Français

Documentation / Developer's manual

Available modules

Calibration,  DataServer,  Launcher,  MetaModelOptim,  Modeler,  Optimizer,  ReLauncher,  Reliability,  ReOptimizer,  Sampler,  Sensitivity,  UncertModeler,  XmlProblem,   Uranie / Sampler: TNeuralGas.h Source File
Uranie / Sampler  v4.10.0
/* @license-end */
TNeuralGas.h
Go to the documentation of this file.
1 // Copyright (C) 2013-2024 CEA/DES
3 //
4 // This program is free software: you can redistribute it and/or modify
5 // it under the terms of the GNU Lesser General Public License as published
6 // by the Free Software Foundation, either version 3 of the License, or any
7 // later version.
8 //
9 // This program is distributed in the hope that it will be useful,
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 // GNU Lesser General Public License for more details.
13 //
14 // You should have received a copy of the GNU Lesser General Public License
15 // along with this program. If not, see <http://www.gnu.org/licenses/>.
18 // $Id$
19 // $Author$
20 // $Date$
21 // $Revision$
22 // $State$
24 
31 #ifndef TNeuralGas_H
32 #define TNeuralGas_H
33 
34 // ROOT
35 #include "TMatrixD.h"
36 
37 // Uranie
38 #include "TVQ.h"
39 
87 namespace URANIE
88 {
89 namespace Sampler
90 {
91 class TNeuralGas: public TVQ
92 {
93  // Attributes
94 public:
95  TMatrixD _datamatrix;
96 
97  TMatrixD _dvw;
98 
99  TString _svardraw;
101  Double_t _dtmax;
102  Double_t _dinitlambda;
103  Double_t _dlambda;
104  Double_t _dfinalambda;
105  Double_t _dinitalpha;
106  Double_t _dalpha;
107  Double_t _dfinalalpha;
108 
109 public:
110  //---------------------------------------------
114 
121  TNeuralGas(URANIE::DataServer::TDataServer *tds, Option_t *option,
122  Int_t ns);
124  virtual ~TNeuralGas();
126 
127  //---------------------------------------------
131 
138  void setLambda(Double_t dinitlambda, Double_t dfinallambda)
139  {
140  _dinitlambda = dinitlambda;
141  _dfinalambda = dfinallambda;
142  }
144 
150  void setAlpha(Double_t dinitalpha, Double_t dfinalalpha)
151  {
152  _dinitalpha = dinitalpha;
153  _dfinalalpha = dfinalalpha;
154  }
156 
158  void setTMax(Int_t dtmax)
159  {
160  _dtmax = 1.0 * dtmax;
161  }
163 
165  Int_t getTMax()
166  {
167  return (Int_t)(_dtmax);
168  }
170 
171  //---------------------------------------------
177  void init();
180  void learn(Int_t index);
182 
183  //---------------------------------------------
188 
191  void generateSample(Option_t *option = "");
193 
194  //---------------------------------------------
198  virtual void printLog(Option_t *option = "");
200 
201  ClassDef(URANIE::Sampler::TNeuralGas, ID_SAMPLER)
202  //Classe abstraite de g�n�ration de plan d'exp�rience num�rique
203 };
204 
205 } // Fin du namespace Sampler
206 } // Fin du namespace URANIE
207 #endif
208 // fin du fichier $RCSfile$.
Definition: TAMHCopula.h:59
Double_t _dinitalpha
The initial value of .
Definition: TNeuralGas.h:105
Int_t _ntemperature
Definition: TNeuralGas.h:100
TMatrixD _dvw
The matrix of difference.
Definition: TNeuralGas.h:97
void init()
The preprocessing step.
Definition: TNeuralGas.cxx:100
Double_t _dlambda
The current value of .
Definition: TNeuralGas.h:103
TNeuralGas(URANIE::DataServer::TDataServer *tds, Option_t *option, Int_t ns)
Constructor with a dataserver.
Definition: TNeuralGas.cxx:56
Implement the Neural Gas algorithm (Martinetz and Schulten, 1991)
Definition: TNeuralGas.h:91
void learn(Int_t index)
The learning step for the index pattern.
Definition: TNeuralGas.cxx:165
Double_t _dinitlambda
The initial value of .
Definition: TNeuralGas.h:102
Define the abstract class for Vectorial Quantification (VQ) algorithms.
void setAlpha(Double_t dinitalpha, Double_t dfinalalpha)
Set the alpha parameters.
Definition: TNeuralGas.h:150
void setTMax(Int_t dtmax)
Set the parameter.
Definition: TNeuralGas.h:158
Double_t _dfinalalpha
The final value of .
Definition: TNeuralGas.h:107
TString _svardraw
Definition: TNeuralGas.h:99
Double_t _dtmax
The parameter.
Definition: TNeuralGas.h:101
Double_t _dfinalambda
The final value of .
Definition: TNeuralGas.h:104
Int_t getTMax()
Get the parameter.
Definition: TNeuralGas.h:165
virtual ~TNeuralGas()
Default destructor.
Definition: TNeuralGas.cxx:87
Double_t _dalpha
The current value of .
Definition: TNeuralGas.h:106
void setLambda(Double_t dinitlambda, Double_t dfinallambda)
Set the lambda parameters.
Definition: TNeuralGas.h:138
Abstract class for Vectorial Quantification (VQ) algorithms.
Definition: TVQ.h:60
void generateSample(Option_t *option="")
Generates the sample.
Definition: TNeuralGas.cxx:285
virtual void printLog(Option_t *option="")
Prints the log.
Definition: TNeuralGas.cxx:415
TMatrixD _datamatrix
The matrix of data.
Definition: TNeuralGas.h:95