|
pueoAnalysisTools
|
An effective area calculator. More...
#include <effective_area.h>
Public Attributes | |
| std::filesystem::path | PUEO_MC_DATA |
Path to where the run/ directories are stored. | |
| double | effective_area_score = 0. |
| The combined effective areas of all the runs in PUEO_MC_DATA. | |
Private Member Functions | |
| void | compute_mean_interaction_length () |
| Computes the mean interaction_length by going through the DataFrame df. | |
| void | compute_total_weight () |
| Computes total_num_weighted_passEvents by going through the DataFrame df. | |
| void | compute_effective_area () |
| Computes effective_area_score based on all runs in PUEO_MC_DATA. | |
Private Attributes | |
| std::unique_ptr< TChain > | allTree_chain_ptr |
A chain that combines the allTrees in all the IceFinal files in PUEO_MC_DATA. | |
| int | total_num_neutrino_simulated = 0 |
| The (combined) total number of neutrinos thrown in PUEO_MC_DATA. | |
| std::unique_ptr< TChain > | passTree_chain_ptr |
A chain that combines the passTree in all the IceFinal files in PUEO_MC_DATA. | |
| int | passTree_length = 0 |
| Similar to total_num_neutrino_simulated; this is the length of passTree_chain_ptr. | |
| std::unique_ptr< ROOT::RDataFrame > | df |
| CERN ROOT DataFrame built based on passTree_chain_ptr. | |
| double | interaction_length = 0 |
| Interaction length in kilometers. | |
| double | total_num_weighted_passEvents = 0. |
| The (combined) total number of passed events (weighted) in PUEO_MC_DATA. | |
| const double | ICE_VOLUME = 26859227.0607 |
| Antarctica ice volume [km \(^3\)]. | |
An effective area calculator.
See the repository simulations-ci's effective area tracker for example usage.
Definition at line 26 of file effective_area.h.
|
private |
Computes the mean interaction_length by going through the DataFrame df.
| [in] | df | |
| [out] | interaction_length |
Definition at line 30 of file effective_area.cpp.
|
private |
Computes total_num_weighted_passEvents by going through the DataFrame df.
| [in] | df | |
| [out] | total_num_weighted_passEvents |
Definition at line 36 of file effective_area.cpp.
|
private |
Computes effective_area_score based on all runs in PUEO_MC_DATA.
| [in] | total_num_weighted_passEvents | See total_num_weighted_passEvents |
| [in] | interaction_length | See interaction_length |
| [in] | total_num_neutrino_simulated | See total_num_neutrino_simulated |
| [out] | effective_area_score |
The effective volume is defined by
\[V_{\rm eff} \equiv V_a \cdot 4 \pi \cdot \frac{ N_{\rm passed} }{N_{\rm total}} \]
where \(V_a\) denotes the ICE_VOLUME, \( N_{\rm passed} \) the total_num_weighted_passEvents, and \(N_{\rm total} \) the total_num_neutrino_simulated. The effective area is then defined by
\[A_{\rm eff} \equiv V_{\rm eff} \div l_{\rm int} \]
where \(l_{\rm int}\) is the interaction_length.
Definition at line 50 of file effective_area.cpp.
| std::filesystem::path PUEO_MC_DATA |
Path to where the run/ directories are stored.
Example file structure:
Definition at line 53 of file effective_area.h.
| double effective_area_score = 0. |
The combined effective areas of all the runs in PUEO_MC_DATA.
See compute_effective_area to see how this is calculated.
Definition at line 60 of file effective_area.h.
|
private |
A chain that combines the allTrees in all the IceFinal files in PUEO_MC_DATA.
This chain contains every single event; ie. its length gives us total_num_neutrino_simulated.
Definition at line 68 of file effective_area.h.
|
private |
The (combined) total number of neutrinos thrown in PUEO_MC_DATA.
For example, if each run simulates 400 neutrinos, and there are 100 runs, then this would be 40k.
Definition at line 76 of file effective_area.h.
|
private |
A chain that combines the passTree in all the IceFinal files in PUEO_MC_DATA.
This chain is used to construct df, which in turn is used to compute total_num_weighted_passEvents.
Definition at line 83 of file effective_area.h.
|
private |
Similar to total_num_neutrino_simulated; this is the length of passTree_chain_ptr.
This is used to guarantee that compute_mean_interaction_length does not divide by zero.
Definition at line 92 of file effective_area.h.
|
private |
CERN ROOT DataFrame built based on passTree_chain_ptr.
This is then used to iterate through all the (passed) events for computing total_num_weighted_passEvents.
Definition at line 99 of file effective_area.h.
|
private |
Interaction length in kilometers.
The mean interaction length of the pass events, computed by compute_mean_interaction_length.
Definition at line 117 of file effective_area.h.
|
private |
The (combined) total number of passed events (weighted) in PUEO_MC_DATA.
neutrino.path.weight, loop.positionWeight, and loop.directionWeight, then the total weight of this event is \( w1 \div (w2 \cdot w3) \)Definition at line 133 of file effective_area.h.