10#include "Statistics.h"
43 DurationSize start_time,
73 [[nodiscard]] vector<MathSize>
getSizes()
const;
83 [[nodiscard]]
size_t numSizes()
const noexcept;
92 void saveSizes(
const string& base_name)
const;
98 void saveAll(
const tm& start_time,
100 const bool is_interim)
const;
105 void saveTotal(
const string& base_name,
const bool is_interim)
const;
115 void saveHigh(
const string& base_name)
const;
125 void saveLow(
const string& base_name)
const;
146 const string& base_name,
147 const R divisor)
const
The base class with information for a grid of data with geographic coordinates.
Definition Grid.h:43
A GridData that uses an unordered_map for storage.
Definition GridMap.h:23
string saveToProbabilityFile(const string &dir, const string &base_name, const R divisor) const
Save GridMap contents to .asc file as probability.
Definition GridMap.h:263
Represents a map of intensities that cells have burned at for a single Scenario.
Definition IntensityMap.h:29
Map of the percentage of simulations in which a Cell burned in each intensity category.
Definition ProbabilityMap.h:22
const string dir_out_
Directory to write outputs to.
Definition ProbabilityMap.h:156
ProbabilityMap * copyEmpty() const
Create a copy of this that is empty.
Definition ProbabilityMap.cpp:46
mutex mutex_
Mutex for parallel access.
Definition ProbabilityMap.h:188
static void deleteInterim()
Definition ProbabilityMap.cpp:202
data::GridMap< size_t > med_
Map representing moderate intensities.
Definition ProbabilityMap.h:168
void setPerimeter(const topo::Perimeter *const perimeter)
Assign perimeter to use for marking cells as initial perimeter.
Definition ProbabilityMap.cpp:57
vector< MathSize > getSizes() const
List of sizes of IntensityMaps that have been added.
Definition ProbabilityMap.cpp:129
data::GridMap< size_t > low_
Map representing low intensities.
Definition ProbabilityMap.h:172
vector< MathSize > sizes_
List of sizes for perimeters that have been added.
Definition ProbabilityMap.h:176
void show() const
Output Statistics to log.
Definition ProbabilityMap.cpp:141
void saveTotalCount(const string &base_name) const
Save map representing all intensities occurrence.
Definition ProbabilityMap.cpp:316
const IntensitySize low_max_
Upper bound of 'low' intensity range.
Definition ProbabilityMap.h:200
void saveHigh(const string &base_name) const
Save map representing high intensities.
Definition ProbabilityMap.cpp:320
bool record_if_interim(const char *filename) const
Make note of any interim files for later deletion.
Definition ProbabilityMap.cpp:155
IntensitySize max_value_
Upper bound of 'high' intensity range.
Definition ProbabilityMap.h:196
void saveSizes(const string &base_name) const
Save list of sizes.
Definition ProbabilityMap.cpp:171
void saveTotal(const string &base_name, const bool is_interim) const
Save map representing all intensities.
Definition ProbabilityMap.cpp:302
string saveToProbabilityFile(const data::GridMap< size_t > &grid, const string &dir, const string &base_name, const R divisor) const
Save probability file and record filename if interim.
Definition ProbabilityMap.h:144
const DurationSize time_
Time in simulation this ProbabilityMap represents.
Definition ProbabilityMap.h:180
data::GridMap< size_t > all_
Map representing all intensities.
Definition ProbabilityMap.h:160
const DurationSize start_time_
Start time of simulation.
Definition ProbabilityMap.h:184
const IntensitySize med_max_
Upper bound of 'moderate' intensity range.
Definition ProbabilityMap.h:204
data::GridMap< size_t > high_
Map representing high intensities.
Definition ProbabilityMap.h:164
void saveLow(const string &base_name) const
Save map representing low intensities.
Definition ProbabilityMap.cpp:328
util::Statistics getStatistics() const
Generate Statistics on sizes of IntensityMaps that have been added.
Definition ProbabilityMap.cpp:133
void reset()
Clear maps and return to initial state.
Definition ProbabilityMap.cpp:332
void saveAll(const tm &start_time, DurationSize time, const bool is_interim) const
Save total, low, moderate, and high maps, and output information to log.
Definition ProbabilityMap.cpp:227
void addProbability(const IntensityMap &for_time)
Add in an IntensityMap to the appropriate probability grid based on each cell burn intensity.
Definition ProbabilityMap.cpp:96
IntensitySize min_value_
Lower bound of 'low' intensity range.
Definition ProbabilityMap.h:192
void addProbabilities(const ProbabilityMap &rhs)
Combine results from another ProbabilityMap into this one.
Definition ProbabilityMap.cpp:61
size_t numSizes() const noexcept
Number of sizes that have been added.
Definition ProbabilityMap.cpp:137
const topo::Perimeter * perimeter_
Initial ignition grid to apply to outputs.
Definition ProbabilityMap.h:208
void saveModerate(const string &base_name) const
Save map representing moderate intensities.
Definition ProbabilityMap.cpp:324
Perimeter for an existing fire to initialize a simulation with.
Definition Perimeter.h:24
Provides statistics calculation for vectors of values.
Definition Statistics.h:125