Project
Loading...
Searching...
No Matches
FluenceWeightCalculator.h
Go to the documentation of this file.
1// Copyright 2019-2026 CERN and copyright holders of ALICE O2.
2// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
3// All rights not expressly granted are reserved.
4//
5// This software is distributed under the terms of the GNU General Public
6// License v3 (GPL Version 3), copied verbatim in the file "COPYING".
7//
8// In applying this license CERN does not waive the privileges and immunities
9// granted to it by virtue of its status as an Intergovernmental Organization
10// or submit itself to any jurisdiction.
11
12#ifndef FluenceWeightCalculator_h
13#define FluenceWeightCalculator_h
14#include <vector>
15#include <string>
16#include <memory>
17#include "TGraph.h"
18//
19// Static container class for damage weight funnctions in form of TGraphs
20// The weights can be read from a csv file and stored in the graphs.
21//
23{
24 public:
26 static void InitWeights(const std::string& filename);
27 static void InitWeightsFromCSV(const std::string& filename);
28 static double GetWeight(const int pdg, const double ekin);
29
30 private:
31 static std::unique_ptr<TGraph> neutronG;
32 static std::unique_ptr<TGraph> protonG;
33 static std::unique_ptr<TGraph> pionG;
34};
35#endif
FluenceWeightCalculator()=delete
static double GetWeight(const int pdg, const double ekin)
static void InitWeightsFromCSV(const std::string &filename)
static void InitWeights(const std::string &filename)
std::string filename()