SupernovaTruth.h
Go to the documentation of this file.
1 ////////////////////////////////////////////////////////////////////////
2 /// \file SupernovaTruth.h
3 /// \brief Stores extra MC truth information that is recorded when
4 /// generating events using a time-dependent supernova neutrino spectrum
5 ///
6 /// \author Steven Gardiner <sjgardiner@ucdavis.edu>
7 ////////////////////////////////////////////////////////////////////////
8 
9 #ifndef SupernovaTruth_h
10 #define SupernovaTruth_h
11 
12 namespace sim {
13 
15  kUnknownSupernovaSamplingMode = 0, ///< Unknown sampling mode
16  kUnbiased, ///< Sample directly from cross-section weighted spectrum
17  kUniformTime, ///< Arrival times were sampled uniformly
18  kUniformEnergy, ///< Neutrino energies were sampled uniformly
19  kSupernovaSamplingModeMax ///< Max value of enum for iteration
20  };
21 
23  public:
25  SupernovaTruth(double time, double weight,
26  double xs_avg, SupernovaSamplingMode_t sampling_mode);
27 
28  /// @brief Arrival time of the supernova neutrino (seconds)
29  /// @details The arrival time is measured relative to the supernova
30  /// core bounce (defined to be t = 0), not the start of the detector
31  /// readout window.
32  double SupernovaTime;
33 
34  /// @brief Statistical weight for this neutrino vertex.
35  /// @details The statistical weight will always be unity unless
36  /// a biased sampling method was used. In general, the weight is
37  /// given by the likelihood ratio @f$f(E_{\nu}, t_{SN})
38  /// / g(E_{\nu}, t_{SN})@f$ where @f$ f(E_nu, t_SN) @f$ is the unbiased
39  /// probability density, and @f$ g(E_{\nu}, t_{SN})@f$ is the actual
40  /// probability density that was used for sampling.
41  double Weight;
42 
43  /// @brief Flux-averaged total cross section (fm<sup>2</sup>,
44  /// average is taken over all energies and times for all defined
45  /// MARLEY reactions) used by MARLEY to generate this neutrino vertex
47 
48  /// @brief Method used to sample the supernova neutrino's energy
49  /// and arrival time
51  };
52 
53 }
54 #endif
Max value of enum for iteration.
weight
Definition: test.py:257
SupernovaSamplingMode_t SamplingMode
Method used to sample the supernova neutrino&#39;s energy and arrival time.
double FluxAveragedCrossSection
Flux-averaged total cross section (fm2, average is taken over all energies and times for all defined ...
double Weight
Statistical weight for this neutrino vertex.
Arrival times were sampled uniformly.
Code to link reconstructed objects back to the MC truth information.
double SupernovaTime
Arrival time of the supernova neutrino (seconds)
Sample directly from cross-section weighted spectrum.
SupernovaSamplingMode_t
Neutrino energies were sampled uniformly.