analyze_result.h File Reference

CPP API: analyze_result.h File Reference
memilio/data/analyze_result.h File Reference
#include "memilio/config.h"
#include "memilio/utils/logging.h"
#include "memilio/utils/time_series.h"
#include "memilio/mobility/metapopulation_mobility_instant.h"
#include "memilio/math/interpolation.h"
#include "memilio/io/io.h"
#include <cassert>
#include <vector>
Include dependency graph for memilio/data/analyze_result.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 mio
 A collection of classes to simplify handling of matrix shapes in meta programming.
 

Typedefs

template<class T >
using mio::InterpolateResultT = std::decay_t< decltype(interpolate_simulation_result(std::declval< T >()))>
 helper template, type returned by overload interpolate_simulation_result(T t) More...
 

Functions

template<typename FP >
std::vector< TimeSeries< FP > > mio::ensemble_mean (const std::vector< std::vector< TimeSeries< FP >>> &ensemble_results)
 computes mean of each compartment, node, and time point over all runs input must be uniform as returned by interpolated_ensemble_result: same number of nodes, same time points and elements. More...
 
template<typename FP >
std::vector< TimeSeries< FP > > mio::ensemble_percentile (const std::vector< std::vector< TimeSeries< FP >>> &ensemble_result, FP p)
 computes the p percentile of the result for each compartment, node, and time point. More...
 
template<class T >
std::vector< InterpolateResultT< T > > mio::interpolate_ensemble_results (const std::vector< T > &ensemble_results)
 Interpolates results of all runs with evenly spaced, integer time points that represent whole days. More...
 
template<typename FP , class Simulation >
std::vector< TimeSeries< FP > > mio::interpolate_simulation_result (const Graph< SimulationNode< FP, Simulation >, MobilityEdge< FP >> &graph_result)
 interpolate time series with evenly spaced, integer time points for each node. More...
 
template<typename FP >
TimeSeries< FP > mio::interpolate_simulation_result (const TimeSeries< FP > &simulation_result, const FP abs_tol=FP{100.} *Limits< FP >::zero_tolerance())
 Interpolate a given time series with evenly spaced, integer time points that represent whole days. More...
 
template<typename FP >
TimeSeries< FP > mio::interpolate_simulation_result (const TimeSeries< FP > &simulation_result, const std::vector< FP > &interpolation_times)
 Interpolate a time series at the given time points. More...
 
template<class FP >
IOResult< TimeSeries< FP > > mio::merge_time_series (const TimeSeries< FP > &ts1, const TimeSeries< FP > &ts2, bool add_values=false)
 This function merges two TimeSeries by copying their time points and values to a new TimeSeries in the correct order. More...
 
template<typename FP >
FP mio::result_distance_2norm (const std::vector< mio::TimeSeries< FP >> &result1, const std::vector< mio::TimeSeries< FP >> &result2)
 Compute the distance between two SECIR simulation results. More...
 
template<typename FP , class InfectionState >
FP mio::result_distance_2norm (const std::vector< mio::TimeSeries< FP >> &result1, const std::vector< mio::TimeSeries< FP >> &result2, InfectionState compartment)
 Compute the distance between two compartment model simulation results in one compartment. More...
 
template<typename FP >
std::vector< std::vector< TimeSeries< FP > > > mio::sum_nodes (const std::vector< std::vector< TimeSeries< FP >>> &ensemble_result)