/home/docs/checkouts/readthedocs.org/user_builds/ratpac/checkouts/latest/src/fit/include/RAT/FitTensorProc.hh Source File

Ratpac-two: /home/docs/checkouts/readthedocs.org/user_builds/ratpac/checkouts/latest/src/fit/include/RAT/FitTensorProc.hh Source File
Ratpac-two
FitTensorProc.hh
1 #ifndef __RAT_FitTensorProc__
2 #define __RAT_FitTensorProc__
3 
4 #if TENSORFLOW_Enabled
5 #include <cppflow/cppflow.h>
6 
7 #include <RAT/DS/PMTInfo.hh>
8 #include <RAT/Processor.hh>
9 #include <string>
10 
11 namespace RAT {
12 
13 namespace DS {
14 class Root;
15 class EV;
16 } // namespace DS
17 
18 class FitTensorProc : public Processor {
19  public:
20  FitTensorProc();
21  virtual ~FitTensorProc() {}
22 
23  virtual Processor::Result Event(DS::Root *ds, DS::EV *ev);
24  TVector3 PositionFit(DS::Root *ds, DS::EV *ev);
25  TVector3 DirectionFit(DS::Root *ds, DS::EV *ev, TVector3 pos);
26 
27  cppflow::tensor CreateProjection(DS::EV *ev, DS::PMTInfo *pmtinfo, TVector3 coordinates);
28  void BeginOfRun(DS::Run *run);
29 
30  protected:
31  double fPower;
32  double fRescale;
33  cppflow::model *positionModel;
34  cppflow::model *directionModel;
35 };
36 
37 } // namespace RAT
38 
39 #endif
40 #endif // __RAT_FitTensorProc__
Result
Definition: Processor.hh:59
Definition: model.h:60
A TensorFlow eager tensor wrapper.
Definition: tensor.h:61
Definition: CCCrossSecMessenger.hh:29