8#include "OMSimLogger.hh"
26 std::vector<double>
arange(
double start,
double stop,
double step);
27 TGraph*
create1dInterpolator(
const std::vector<double>& pX,
const std::vector<double>& pY,
const std::string& pName);
32 std::pair<std::vector<double>, std::vector<double>>
histogram(
33 const std::vector<double> &data,
34 const std::variant<
int, std::vector<double>> &bins = 10,
35 const std::optional<std::pair<double, double>> &range = std::nullopt,
36 const std::vector<double> &weights = std::vector<double>());
39 std::vector<std::vector<double>>
loadtxt(
const std::string &pFilePath,
42 char pDelimiter =
' ',
43 char pComments =
'#');
44 std::vector<double>
linspace(
double start,
double end,
int num_points,
bool endpoint =
true);
45 std::vector<double>
logspace(
double start,
double end,
int num_points,
double base = 10.0,
bool endpoint =
true);
46 void sortVectorByReference(std::vector<G4double> &referenceVector, std::vector<G4double> &sortVector);
47 double median(std::vector<double> p_vec);
48 double mean(
const std::vector<double> &p_vec,
const std::vector<double> &p_weights = {});
49 double std(
const std::vector<double>& vec,
const std::vector<double> &p_weights = {});
51 void throwError(
const G4String& message);
52 std::vector<G4String> splitStringByDelimiter(G4String
const &p_string,
char p_delim);
53 std::vector<G4String> splitStringByDelimiter(
char *p_char,
char p_delim);
54 extern std::string visualisationURL;