10#include "Statistics.h"
19enum ProcessingStatus :
size_t
52 DurationSize start_time,
79 void saveAll(
const tm& start_time,
81 const ProcessingStatus processing_status)
const;
100 [[nodiscard]] vector<MathSize>
getSizes()
const;
110 [[nodiscard]]
size_t numSizes()
const noexcept;
115 void saveSizes(
const string& base_name)
const;
121 void saveTotal(
const string& base_name,
const ProcessingStatus processing_status)
const;
138 const string& base_name,
139 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:31
const string dir_out_
Directory to write outputs to.
Definition ProbabilityMap.h:148
ProbabilityMap * copyEmpty() const
Create a copy of this that is empty.
Definition ProbabilityMap.cpp:37
void saveTotal(const string &base_name, const ProcessingStatus processing_status) const
Save map representing all intensities.
Definition ProbabilityMap.cpp:212
mutex mutex_
Mutex for parallel access.
Definition ProbabilityMap.h:168
static void deleteInterim()
Definition ProbabilityMap.cpp:154
void setPerimeter(const topo::Perimeter *const perimeter)
Assign perimeter to use for marking cells as initial perimeter.
Definition ProbabilityMap.cpp:44
vector< MathSize > getSizes() const
List of sizes of IntensityMaps that have been added.
Definition ProbabilityMap.cpp:80
vector< MathSize > sizes_
List of sizes for perimeters that have been added.
Definition ProbabilityMap.h:156
void show() const
Output Statistics to log.
Definition ProbabilityMap.cpp:92
void saveTotalCount(const string &base_name) const
Save map representing all intensities occurrence.
Definition ProbabilityMap.cpp:233
void saveAll(const tm &start_time, DurationSize time, const ProcessingStatus processing_status) const
Save total, low, moderate, and high maps, and output information to log.
Definition ProbabilityMap.cpp:179
bool record_if_interim(const char *filename) const
Make note of any interim files for later deletion.
Definition ProbabilityMap.cpp:107
void saveSizes(const string &base_name) const
Save list of sizes.
Definition ProbabilityMap.cpp:123
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:136
const DurationSize time_
Time in simulation this ProbabilityMap represents.
Definition ProbabilityMap.h:160
data::GridMap< size_t > all_
Map representing all intensities.
Definition ProbabilityMap.h:152
const DurationSize start_time_
Start time of simulation.
Definition ProbabilityMap.h:164
util::Statistics getStatistics() const
Generate Statistics on sizes of IntensityMaps that have been added.
Definition ProbabilityMap.cpp:84
void reset()
Clear maps and return to initial state.
Definition ProbabilityMap.cpp:237
void addProbability(const IntensityMap &for_time)
Add in an IntensityMap to the appropriate probability grid based on each cell burn intensity.
Definition ProbabilityMap.cpp:67
void addProbabilities(const ProbabilityMap &rhs)
Combine results from another ProbabilityMap into this one.
Definition ProbabilityMap.cpp:49
size_t numSizes() const noexcept
Number of sizes that have been added.
Definition ProbabilityMap.cpp:88
const topo::Perimeter * perimeter_
Initial ignition grid to apply to outputs.
Definition ProbabilityMap.h:172
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