|
Jpp
master_rocky-40-g5f0272dcd
the software that should make you happy
|
Regressor function object for JLine3Z fit using JGandalf minimiser. More...
#include <JLine3ZRegressor.hh>
Public Member Functions | |
| JRegressor () | |
| Default constructor. More... | |
| JRegressor (const std::string &fileDescriptor, const double TTS, const int numberOfPoints=25, const double epsilon=1.0e-10) | |
| Constructor. More... | |
| JRegressor (const JRegressorStorage< JLine3Z, JGandalf > &storage) | |
| Constructor. More... | |
| template<class JHit_t > | |
| result_type | operator() (const JLine3Z &track, const JHit_t &hit) const |
| Fit function. More... | |
| result_type | operator() (const JLine3Z &track, const JPMTW0 &pmt) const |
| Fit function. More... | |
| JPDF_t::result_type | getH0 (const double R_Hz, const double t1) const |
| Get background hypothesis value for time differentiated PDF. More... | |
| JPDF_t::result_type | getH1 (const double E, const double R, const double theta, const double phi, const double t1) const |
| Get signal hypothesis value for time differentiated PDF. More... | |
| JNPE_t::result_type | getH0 (const double R_Hz) const |
| Get background hypothesis value for time integrated PDF. More... | |
| JNPE_t::result_type | getH1 (const double E, const double R, const double theta, const double phi) const |
| Get signal hypothesis value for time integrated PDF. More... | |
| double | getRmax () const |
| Get maximal road width of PDF. More... | |
| result_type | operator() (const JLine3Z &value, T __begin, T __end) |
| Global fit. More... | |
| template<class JFunction_t , class T , class ... Args> | |
| result_type | operator() (const JFunction_t &fit, T __begin, T __end, Args ...args) |
| Multi-dimensional fit of multiple data sets. More... | |
| const JPDFs_t & | getPDF () const |
| Get PDFs. More... | |
| const JNPEs_t & | getNPE () const |
| Get NPEs. More... | |
| void | transform (const transformer_type &transformer) |
| Transform PDFs and NPEs. More... | |
| void | setRmax (const double Rmax) |
| Set maximal road width of PDF. More... | |
Public Attributes | |
| const JPDFs_t & | |
| PDF. More... | |
| const JNPEs_t & | npe |
| PDF. More... | |
| double | E_GeV = 0.0 |
| Energy of muon at vertex [GeV]. More... | |
| JLANG::JSharedPointer< JMEstimator > | estimator = new JMEstimatorNormal() |
| M-Estimator function. More... | |
| std::vector< parameter_type > | parameters |
| fit parameters More... | |
| int | numberOfIterations |
| number of iterations More... | |
| double | lambda |
| control parameter More... | |
| JModel_t | value |
| value More... | |
| JModel_t | error |
| error More... | |
| JMATH::JMatrixNS | V |
| Hesse matrix. More... | |
Static Public Attributes | |
| static JTimeRange | T_ns |
| Time window with respect to Cherenkov hypothesis [ns]. More... | |
| static double | Vmax_npe = std::numeric_limits<double>::max() |
| Maximal integral of PDF [npe]. More... | |
| static double | Rmin_m = 0.1 |
| Minimal distance of [m]. More... | |
| static int | MAXIMUM_ITERATIONS = 1000 |
| maximal number of iterations More... | |
| static double | EPSILON = 1.0e-3 |
| maximal distance to minimum More... | |
| static bool | EPSILON_ABSOLUTE = false |
| set epsilon to absolute difference instead of relative More... | |
| static double | LAMBDA_MIN = 0.01 |
| minimal value control parameter More... | |
| static double | LAMBDA_MAX = 100.0 |
| maximal value control parameter More... | |
| static double | LAMBDA_UP = 10.0 |
| multiplication factor control parameter More... | |
| static double | LAMBDA_DOWN = 10.0 |
| multiplication factor control parameter More... | |
| static double | PIVOT = std::numeric_limits<double>::epsilon() |
| minimal value diagonal element of Hesse matrix More... | |
| static int | debug = 0 |
| debug level (default is off). More... | |
| static const int | NUMBER_OF_PDFS = 6 |
| Number of PDFs. More... | |
| static const JPDFType_t | pdf_t [NUMBER_OF_PDFS] |
| PDF types. More... | |
Private Member Functions | |
| void | reset () |
| Reset current parameters. More... | |
| template<class JFunction_t , class T , class ... Args> | |
| void | update (const JFunction_t &fit, T __begin, T __end, Args ...args) |
| Recursive method to update current parameters. More... | |
| template<class JFunction_t > | |
| void | update (const JFunction_t &fit) |
| Termination method to update current parameters. More... | |
Static Private Member Functions | |
| static double | get (const JModel_t &model, double JModel_t::*parameter) |
| Read/write access to parameter value by data member. More... | |
| static double & | get (JModel_t &model, double JModel_t::*parameter) |
| Read/write access to parameter value by data member. More... | |
| static double | get (const JModel_t &model, const size_t index) |
| Read/write access to parameter value by index. More... | |
| static double & | get (JModel_t &model, const size_t index) |
| Read/write access to parameter value by index. More... | |
| static double | get (const JModel_t &model, const int index) |
| Read/write access to parameter value by index. More... | |
| static double & | get (JModel_t &model, const int index) |
| Read/write access to parameter value by index. More... | |
Private Attributes | |
| std::vector< double > | h |
| JMATH::JVectorND | x |
| struct { | |
| result_type result | |
| } | current |
| struct { | |
| JModel_t value | |
| result_type result | |
| } | previous |
| JPDFs_t | _pdf |
| PDFs. More... | |
| JNPEs_t | _npe |
| NPEs. More... | |
Regressor function object for JLine3Z fit using JGandalf minimiser.
Definition at line 103 of file JLine3ZRegressor.hh.
| typedef JRegressorStorage<JLine3Z, JGandalf> JFIT::JRegressor< JLine3Z, JGandalf >::JRegressorStorage_t |
Definition at line 109 of file JLine3ZRegressor.hh.
|
inherited |
Definition at line 80 of file JRegressor.hh.
|
inherited |
Definition at line 81 of file JRegressor.hh.
|
inherited |
Definition at line 82 of file JRegressor.hh.
|
inherited |
Data type of fit parameter.
Definition at line 95 of file JGandalf.hh.
|
inherited |
Definition at line 57 of file JRegressorHelper.hh.
|
inherited |
Definition at line 60 of file JRegressorHelper.hh.
|
inherited |
time dependent PDF
Definition at line 61 of file JRegressorHelper.hh.
|
inherited |
Definition at line 65 of file JRegressorHelper.hh.
|
inherited |
time integrated PDF
Definition at line 66 of file JRegressorHelper.hh.
|
inherited |
Definition at line 68 of file JRegressorHelper.hh.
|
inherited |
PDFs.
Definition at line 72 of file JRegressorHelper.hh.
|
inherited |
NPEs.
Definition at line 73 of file JRegressorHelper.hh.
|
inline |
Default constructor.
Definition at line 114 of file JLine3ZRegressor.hh.
|
inline |
Constructor.
The PDF file descriptor should contain the wild card character JPHYSICS::WILDCARD which will be replaced by the corresponding PDF types listed in JRegressor<JLine3Z, JGandalf>::pdf_t.
The TTS corresponds to the additional time smearing applied to the PDFs.
| fileDescriptor | PDF file descriptor |
| TTS | TTS [ns] |
| numberOfPoints | number of points for Gauss-Hermite integration of TTS |
| epsilon | precision for Gauss-Hermite integration of TTS |
Definition at line 134 of file JLine3ZRegressor.hh.
|
inline |
|
inline |
Fit function.
This method is used to determine the chi2 and gradient of given hit with respect to trajectory of muon.
The template argument JHit_t refers to a data structure which should have the following member methods:
| track | track |
| hit | hit |
Definition at line 173 of file JLine3ZRegressor.hh.
|
inline |
Fit function.
This method is used to determine the chi2 and gradient of given PMT with respect to trajectory of muon.
| track | track |
| pmt | pmt |
Definition at line 235 of file JLine3ZRegressor.hh.
|
inline |
Get background hypothesis value for time differentiated PDF.
| R_Hz | rate [Hz] |
| t1 | time [ns] |
Definition at line 295 of file JLine3ZRegressor.hh.
|
inline |
Get signal hypothesis value for time differentiated PDF.
| E | muon energy at minimum distance of approach [GeV] |
| R | minimum distance of approach [m] |
| theta | PMT zenith angle [rad] |
| phi | PMT azimuth angle [rad] |
| t1 | arrival time relative to Cherenkov hypothesis [ns] |
Definition at line 312 of file JLine3ZRegressor.hh.
|
inline |
Get background hypothesis value for time integrated PDF.
| R_Hz | rate [Hz] |
Definition at line 362 of file JLine3ZRegressor.hh.
|
inline |
Get signal hypothesis value for time integrated PDF.
| E | muon energy at minimum distance of approach [GeV] |
| R | minimum distance of approach [m] |
| theta | PMT zenith angle [rad] |
| phi | PMT azimuth angle [rad] |
Definition at line 377 of file JLine3ZRegressor.hh.
|
inline |
Get maximal road width of PDF.
Definition at line 425 of file JLine3ZRegressor.hh.
|
inlineinherited |
Global fit.
| value | start value |
| __begin | begin of data set |
| __end | end of data set |
Definition at line 94 of file JRegressor.hh.
|
inlineinherited |
Multi-dimensional fit of multiple data sets.
The fit function should return the chi2 as well as the partial derivatives for the current value of the model and a given data point.
| fit | fit function |
| __begin | begin of data |
| __end | end of data |
| args | optional data |
Definition at line 160 of file JGandalf.hh.
|
inlineprivateinherited |
Reset current parameters.
Definition at line 349 of file JGandalf.hh.
|
inlineprivateinherited |
Recursive method to update current parameters.
| fit | fit function |
| __begin | begin of data |
| __end | end of data |
| args | optional data |
Definition at line 369 of file JGandalf.hh.
|
inlineprivateinherited |
Termination method to update current parameters.
| fit | fit function |
Definition at line 395 of file JGandalf.hh.
|
inlinestaticprivateinherited |
Read/write access to parameter value by data member.
| model | model |
| parameter | parameter |
Definition at line 412 of file JGandalf.hh.
|
inlinestaticprivateinherited |
Read/write access to parameter value by data member.
| model | model |
| parameter | parameter |
Definition at line 425 of file JGandalf.hh.
|
inlinestaticprivateinherited |
Read/write access to parameter value by index.
| model | model |
| index | index |
Definition at line 438 of file JGandalf.hh.
|
inlinestaticprivateinherited |
Read/write access to parameter value by index.
| model | model |
| index | index |
Definition at line 451 of file JGandalf.hh.
|
inlinestaticprivateinherited |
Read/write access to parameter value by index.
| model | model |
| index | index |
Definition at line 464 of file JGandalf.hh.
|
inlinestaticprivateinherited |
Read/write access to parameter value by index.
| model | model |
| index | index |
Definition at line 477 of file JGandalf.hh.
|
inlineinherited |
Get PDFs.
Definition at line 172 of file JRegressorHelper.hh.
|
inlineinherited |
Get NPEs.
Definition at line 183 of file JRegressorHelper.hh.
|
inlineinherited |
Transform PDFs and NPEs.
| transformer | transformer |
Definition at line 194 of file JRegressorHelper.hh.
|
inlineinherited |
Set maximal road width of PDF.
| Rmax | road width [m] |
Definition at line 208 of file JRegressorHelper.hh.
|
static |
Time window with respect to Cherenkov hypothesis [ns].
Default values.
Definition at line 439 of file JLine3ZRegressor.hh.
|
static |
Maximal integral of PDF [npe].
Definition at line 440 of file JLine3ZRegressor.hh.
|
static |
Minimal distance of [m].
Definition at line 441 of file JLine3ZRegressor.hh.
| const JPDFs_t& JFIT::JRegressor< JLine3Z, JGandalf >::pdf |
PDF.
Definition at line 443 of file JLine3ZRegressor.hh.
| const JNPEs_t& JFIT::JRegressor< JLine3Z, JGandalf >::npe |
PDF.
Definition at line 444 of file JLine3ZRegressor.hh.
| double JFIT::JRegressor< JLine3Z, JGandalf >::E_GeV = 0.0 |
Energy of muon at vertex [GeV].
Definition at line 446 of file JLine3ZRegressor.hh.
| JLANG::JSharedPointer<JMEstimator> JFIT::JRegressor< JLine3Z, JGandalf >::estimator = new JMEstimatorNormal() |
M-Estimator function.
Definition at line 448 of file JLine3ZRegressor.hh.
|
staticinherited |
maximal number of iterations
maximal number of iterations.
Definition at line 329 of file JGandalf.hh.
|
staticinherited |
maximal distance to minimum
maximal distance to minimum.
Definition at line 330 of file JGandalf.hh.
|
staticinherited |
set epsilon to absolute difference instead of relative
set epsilon to absolute difference instead of relative.
Definition at line 331 of file JGandalf.hh.
|
staticinherited |
minimal value control parameter
Definition at line 332 of file JGandalf.hh.
|
staticinherited |
maximal value control parameter
Definition at line 333 of file JGandalf.hh.
|
staticinherited |
multiplication factor control parameter
Definition at line 334 of file JGandalf.hh.
|
staticinherited |
multiplication factor control parameter
Definition at line 335 of file JGandalf.hh.
|
staticinherited |
minimal value diagonal element of Hesse matrix
minimal value diagonal element of matrix
Definition at line 336 of file JGandalf.hh.
|
inherited |
fit parameters
Definition at line 338 of file JGandalf.hh.
|
inherited |
number of iterations
Definition at line 339 of file JGandalf.hh.
|
inherited |
control parameter
Definition at line 340 of file JGandalf.hh.
|
inherited |
value
Definition at line 341 of file JGandalf.hh.
|
inherited |
error
Definition at line 342 of file JGandalf.hh.
|
inherited |
Hesse matrix.
Definition at line 343 of file JGandalf.hh.
|
privateinherited |
Definition at line 482 of file JGandalf.hh.
|
privateinherited |
Definition at line 483 of file JGandalf.hh.
|
inherited |
Definition at line 486 of file JGandalf.hh.
| struct { ... } JFIT::JGandalf< JModel_t >::current |
| struct { ... } JFIT::JGandalf< JModel_t >::previous |
|
staticinherited |
debug level (default is off).
Definition at line 45 of file JMessage.hh.
|
privateinherited |
PDFs.
Definition at line 221 of file JRegressorHelper.hh.
|
privateinherited |
NPEs.
Definition at line 222 of file JRegressorHelper.hh.
|
staticinherited |
Number of PDFs.
Definition at line 70 of file JRegressorHelper.hh.
|
staticinherited |
PDF types.
Definition at line 79 of file JRegressorHelper.hh.