3#ifndef cMHN_UTILITY_READ_THETA_H
4#define cMHN_UTILITY_READ_THETA_H
22 template<
class T, pRC::Size D>
23 static inline auto readTheta(std::string
const &filename)
25 std::ifstream file(filename);
29 pRC::Logging::warning(
30 "Unable to open file containing previous theta!");
31 pRC::Logging::info(
"Returning pRC::zero()");
32 return eval(pRC::zero<pRC::Tensor<T, D, D>>());
35 pRC::Tensor<T, D, D> theta = pRC::zero();
36 pRC::Tensor<pRC::Bool, D, D> check = pRC::zero();
41 std::getline(file, line);
44 while(std::getline(file, line))
46 std::istringstream iss(line);
53 pRC::Logging::warning(
54 "Number of events in file and binary do not match "
56 pRC::Logging::info(
"Returning pRC::zero()");
57 return eval(pRC::zero<
decltype(theta)>());
72 pRC::Logging::warning(
"Failed to read thetas from:", filename);
73 pRC::Logging::warning(
"Probably file had fewer events than binary");
74 pRC::Logging::info(
"Returning pRC::zero()");
75 return eval(pRC::zero<
decltype(theta)>());
pRC::Size const D
Definition: CalculatePThetaTests.cpp:9
pRC::Float<> T
Definition: externs_nonTT.hpp:1
Definition: calculate_pTheta.hpp:15
static auto readTheta(std::string const &filename)
Reads a theta matrix from file, discarding its header.
Definition: read_theta.hpp:23