16 std::map<std::string, Eigen::MatrixXd>
stats;
19 std::vector<Eigen::Matrix<short, Eigen::Dynamic, Eigen::Dynamic>>
adc_snap_data;
45 std::map<Eigen::Index, std::vector<std::vector<Eigen::VectorXd>>>
evals;
48 template <timestream::TCDataKind tcdata_kind>
52 template <timestream::TCDataKind tcdata_kind>
56 template <timestream::TCDataKind tcdata_kind>
60template <timestream::TCDataKind tcdata_kind>
62 Eigen::Index n_pts = in.scans.data.rows();
63 Eigen::Index n_dets = in.scans.data.cols();
65 for (Eigen::Index i=0; i<n_dets; ++i) {
67 Eigen::Map<Eigen::Matrix<double, Eigen::Dynamic, 1>> scans(
68 in.scans.data.col(i).data(), in.scans.data.rows());
69 Eigen::Map<Eigen::Matrix<bool, Eigen::Dynamic, 1>> flags(
70 in.flags.data.col(i).data(), in.flags.data.rows());
76 stats[
"median"](i,in.index.data) = tula::alg::median(scans);
78 stats[
"flagged_frac"](i,in.index.data) = flags.cast<
double>().sum()/
static_cast<double>(n_pts);
81 if (in.weights.data.size()!=0) {
83 stats[
"weights"].col(in.index.data) = in.weights.data;
89 evals[in.index.data] = in.evals.data;
93template <timestream::TCDataKind tcdata_kind>
95 for (Eigen::Index i=0; i<in.scans.data.cols(); ++i) {
97 Eigen::VectorXd scan = in.scans.data.col(i);
103template <timestream::TCDataKind tcdata_kind>
Definition diagnostics.h:14
std::map< Eigen::Index, std::vector< std::vector< Eigen::VectorXd > > > evals
Definition diagnostics.h:45
int n_hist_bins
Definition diagnostics.h:28
bool write_evals
Definition diagnostics.h:25
void calc_tod_hist(timestream::TCData< tcdata_kind, Eigen::MatrixXd > &)
Definition diagnostics.h:94
std::vector< std::string > grp_stats_header
Definition diagnostics.h:40
void calc_stats(timestream::TCData< tcdata_kind, Eigen::MatrixXd > &)
Definition diagnostics.h:61
double fsmp
Definition diagnostics.h:22
std::map< std::string, Eigen::MatrixXd > stats
Definition diagnostics.h:16
void calc_tod_psd(timestream::TCData< tcdata_kind, Eigen::MatrixXd > &)
Definition diagnostics.h:104
std::vector< std::string > det_stats_header
Definition diagnostics.h:31
std::vector< Eigen::Matrix< short, Eigen::Dynamic, Eigen::Dynamic > > adc_snap_data
Definition diagnostics.h:19
auto calc_rms(Eigen::DenseBase< DerivedA > &data)
Definition utils.h:389
auto calc_hist(Eigen::DenseBase< Derived > &data, int n_bins)
Definition utils.h:842
auto calc_std_dev(Eigen::DenseBase< DerivedA > &data)
Definition utils.h:336
TC data class.
Definition timestream.h:55