1 #ifndef __JFIT__JSHOWERBJORKENYREGRESSOR__ 
    2 #define __JFIT__JSHOWERBJORKENYREGRESSOR__ 
   97       const JPDF_t::JSupervisor supervisor(
new JPDF_t::JDefaultResult(
JMATH::zero));
 
   98       const JPDF_t2::JSupervisor supervisor2(
new JPDF_t2::JDefaultResult(
JMATH::zero));
 
  100       for (
int i = 0; i != NUMBER_OF_PDFS; ++i) {
 
  107           const string file_name = 
getFilename(fileDescriptor, pdf_t[i]);
 
  109           NOTICE(
"loading PDF from file " << file_name << 
"... " << flush);
 
  113             pdf.
load(file_name.c_str());
 
  121             pdf2.
load(file_name.c_str());
 
  137       for (
int i = 1; i < (NUMBER_OF_PDFS-2); i += 2) {
 
  139         npe[ i ].add(npe[i-1]);
 
  143         npe[i-1].swap(buffer);
 
  145         npe2[ i ].
add(npe2[i-1]);
 
  149         npe2[i-1].swap(buffer2);        
 
  172       double ct = U.getDot(
D) / 
D.getLength();
 
  176       const double z  = 
D.getDot(shower_dir);
 
  177       const double x  = 
D.getX()  -  z * shower.
getDX();
 
  178       const double y  = 
D.getY()  -  z * shower.
getDY();
 
  179       const double cosDelta = z/
D.getLength();  
 
  181       U.rotate(JRotation3Z(-atan2(y,
x)));                  
 
  183       const double theta = U.getTheta();
 
  184       const double phi   = fabs(U.getPhi());
 
  186       double H0 = getH0(pmt.
getR());  
 
  187       double H1 = getH1(
D.getLength(), ct, cosDelta, theta, phi,
 
  190       if (
H1 >= Vmax_npe) {
 
  196       const bool hit = pmt.
getN() != 0;
 
  199       return estimator->getRho(
u);
 
  208     double getH0(
const double R_Hz)
 const 
  228                  const double cosDelta,
 
  233                  const double Y)
 const 
  238       for (
int i = 0; i != (NUMBER_OF_PDFS-1); ++i) {
 
  240         if (!npe[i].empty() && D <= npe[i].getXmax() && !npe2[i].empty() && D <= npe2[i].getXmax()) {
 
  247             P_em = abs(Eem) * npe[i](std::max(D, npe[i].getXmin()), cosDelta, theta, phi);
 
  249             P_h = abs(Eh) * npe2[i](std::max(D, npe2[i].getXmin()), ct);
 
  259             ERROR(error << std::endl);
 
  270     static const int    NUMBER_OF_PDFS = 4;
 
JTOOLS::JSplineFunction1S_t JFunction1D_t
 
Template definition of a data regressor of given model. 
 
JRegressor(const std::string &fileDescriptor)
Parameterized constructor. 
 
void load(const char *file_name)
Load from input file. 
 
General purpose data regression method. 
 
double getR() const 
Get rate. 
 
This include file containes various data structures that can be used as specific return types for the...
 
Auxiliary class for handling PMT geometry, rate and response. 
 
scattered light from EM shower 
 
const JDirection3D & getDirection() const 
Get direction. 
 
JTOOLS::JRange< double > JTimeRange
Type definition for time range (unit [ns]). 
 
JLANG::JSharedPointer< JMEstimator > estimator
M-Estimator function. 
 
double getEem() const 
Get EM energy. 
 
JPHYSICS::JPDFTable< JFunction1D_t, JMapList_t2 > JPDF_t2
 
double getH1(const double D, const double ct, const double cosDelta, const double theta, const double phi, const double Eem, const double Eh, const double Y) const 
Get signal hypothesis value for time integrated PDF. 
 
then for HISTOGRAM in h0 h1
 
static const JZero zero
Function object to assign zero value. 
 
direct light from bright point 
 
then fatal Wrong number of arguments fi set_variable STRING $argv[1] set_variable DETECTORXY_TXT $WORKDIR $DETECTORXY_TXT tail read X Y CHI2 RMS printf optimum n $X $Y $CHI2 $RMS awk v Y
 
Definition of zero value for any class. 
 
double getH0(const double R_Hz) const 
Get background hypothesis value for time integrated PDF. 
 
double operator()(const JShowerEH &shower, const JPMTW0 &pmt) const 
Fit function. 
 
double getDY() const 
Get y direction. 
 
Various implementations of functional maps. 
 
Numbering scheme for PDF types. 
 
void add(const JNPETable &input)
Add NPE table. 
 
The template JSharedPointer class can be used to share a pointer to an object. 
 
JPHYSICS::JNPETable< double, double, JNPEMapList_t2 > JNPE_t2
 
multifunction_t::result_type result_type
 
static JTimeRange T_ns
Time window with respect to Cherenkov hypothesis [ns]. 
 
static double Vmax_npe
Maximal integral of PDF [npe]. 
 
direct light from EM shower 
 
JTOOLS::JMapList< JTOOLS::JPolint0FunctionalMap, JTOOLS::JMapList< JTOOLS::JPolint0FunctionalMap, JTOOLS::JMapList< JTOOLS::JPolint0FunctionalGridMap, JTOOLS::JMapList< JTOOLS::JPolint0FunctionalGridMap > > > > JPDFMaplist_t
 
JTOOLS::JMAPLIST< JTOOLS::JPolint1FunctionalMap, JTOOLS::JPolint1FunctionalGridMap >::maplist JNPEMapList_t2
 
const JPosition3D & getPosition() const 
Get position. 
 
General purpose messaging. 
 
scattered light from bright point 
 
const JVersor3Z & getDirection() const 
Get direction. 
 
Data structure for fit of straight line in positive z-direction with energy. 
 
virtual const char * what() const override
Get error message. 
 
JPHYSICS::JNPETable< double, double, JNPEMaplist_t > JNPE_t
 
double getEh() const 
Get Hadronic energy. 
 
double getBy() const 
Get bjorken y. 
 
int getN() const 
Get number of hits. 
 
Auxiliary class to define a range between two values. 
 
Simple fit method based on Powell's algorithm, see reference: Numerical Recipes in C++...
 
double getDX() const 
Get x direction. 
 
std::string getFilename(const std::string &file_name)
Get file name part, i.e. part after last JEEP::PATHNAME_SEPARATOR if any. 
 
JPHYSICS::JPDFTable< JFunction1D_t, JPDFMaplist_t > JPDF_t
 
Data structure for position in three dimensions. 
 
Data structure for normalised vector in three dimensions. 
 
JTOOLS::JMAPLIST< JTOOLS::JPolint1FunctionalMap, JTOOLS::JPolint1FunctionalGridMap >::maplist JMapList_t2
 
double getChi2(const double P)
Get chi2 corresponding to given probability. 
 
Abstract class for global fit method. 
 
do echo Generating $dir eval D
 
Maximum likelihood estimator (M-estimators). 
 
JTOOLS::JMapList< JTOOLS::JPolint0FunctionalMap, JTOOLS::JMapList< JTOOLS::JPolint0FunctionalMap, JTOOLS::JMapList< JTOOLS::JPolint0FunctionalGridMap, JTOOLS::JMapList< JTOOLS::JPolint0FunctionalGridMap > > > > JNPEMaplist_t