FireSTARR
Loading...
Searching...
No Matches
fs::sim::ProbabilityMap Class Reference

Map of the percentage of simulations in which a Cell burned in each intensity category. More...

#include <ProbabilityMap.h>

Collaboration diagram for fs::sim::ProbabilityMap:

Public Member Functions

 ProbabilityMap (const ProbabilityMap &rhs) noexcept=delete
 
 ProbabilityMap (ProbabilityMap &&rhs) noexcept=delete
 
ProbabilityMapoperator= (const ProbabilityMap &rhs) noexcept=delete
 
ProbabilityMapoperator= (ProbabilityMap &&rhs) noexcept=delete
 
 ProbabilityMap (const string dir_out, DurationSize time, DurationSize start_time, const data::GridBase &grid_info)
 Constructor.
 
void setPerimeter (const topo::Perimeter *const perimeter)
 Assign perimeter to use for marking cells as initial perimeter.
 
void addProbabilities (const ProbabilityMap &rhs)
 Combine results from another ProbabilityMap into this one.
 
void addProbability (const IntensityMap &for_time)
 Add in an IntensityMap to the appropriate probability grid based on each cell burn intensity.
 
void show () const
 Output Statistics to log.
 
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.
 
void reset ()
 Clear maps and return to initial state.
 

Static Public Member Functions

static void deleteInterim ()
 

Private Member Functions

ProbabilityMapcopyEmpty () const
 Create a copy of this that is empty.
 
vector< MathSize > getSizes () const
 List of sizes of IntensityMaps that have been added.
 
util::Statistics getStatistics () const
 Generate Statistics on sizes of IntensityMaps that have been added.
 
size_t numSizes () const noexcept
 Number of sizes that have been added.
 
void saveSizes (const string &base_name) const
 Save list of sizes.
 
void saveTotal (const string &base_name, const ProcessingStatus processing_status) const
 Save map representing all intensities.
 
void saveTotalCount (const string &base_name) const
 Save map representing all intensities occurrence.
 
bool record_if_interim (const char *filename) const
 Make note of any interim files for later deletion.
 
template<class R >
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.
 

Private Attributes

const string dir_out_
 Directory to write outputs to.
 
data::GridMap< size_t > all_
 Map representing all intensities.
 
vector< MathSize > sizes_ {}
 List of sizes for perimeters that have been added.
 
const DurationSize time_
 Time in simulation this ProbabilityMap represents.
 
const DurationSize start_time_
 Start time of simulation.
 
mutex mutex_
 Mutex for parallel access.
 
const topo::Perimeterperimeter_
 Initial ignition grid to apply to outputs.
 

Detailed Description

Map of the percentage of simulations in which a Cell burned in each intensity category.

Constructor & Destructor Documentation

◆ ProbabilityMap()

fs::sim::ProbabilityMap::ProbabilityMap ( const string dir_out,
DurationSize time,
DurationSize start_time,
const data::GridBase & grid_info )

Constructor.

Parameters
dir_outDirectory to save outputs to
timeTime in simulation this ProbabilityMap represents
start_timeStart time of simulation
min_valueLower bound of 'low' intensity range
low_maxUpper bound of 'low' intensity range
med_maxUpper bound of 'moderate' intensity range
max_valueUpper bound of 'high' intensity range
grid_infoGridBase to use for extent of this

Member Function Documentation

◆ addProbabilities()

void fs::sim::ProbabilityMap::addProbabilities ( const ProbabilityMap & rhs)

Combine results from another ProbabilityMap into this one.

Parameters
rhsProbabilityMap to combine from

◆ addProbability()

void fs::sim::ProbabilityMap::addProbability ( const IntensityMap & for_time)

Add in an IntensityMap to the appropriate probability grid based on each cell burn intensity.

Parameters
for_timeIntensityMap to add results from
Here is the call graph for this function:

◆ copyEmpty()

ProbabilityMap * fs::sim::ProbabilityMap::copyEmpty ( ) const
private

Create a copy of this that is empty.

Returns
New empty Probability with same range bounds and times

◆ deleteInterim()

void fs::sim::ProbabilityMap::deleteInterim ( )
static

Delete interim output files

Here is the caller graph for this function:

◆ getSizes()

vector< MathSize > fs::sim::ProbabilityMap::getSizes ( ) const
nodiscardprivate

List of sizes of IntensityMaps that have been added.

Returns
List of sizes of IntensityMaps that have been added
Here is the caller graph for this function:

◆ getStatistics()

util::Statistics fs::sim::ProbabilityMap::getStatistics ( ) const
nodiscardprivate

Generate Statistics on sizes of IntensityMaps that have been added.

Returns
Generate Statistics on sizes of IntensityMaps that have been added
Here is the call graph for this function:
Here is the caller graph for this function:

◆ numSizes()

size_t fs::sim::ProbabilityMap::numSizes ( ) const
nodiscardprivatenoexcept

Number of sizes that have been added.

Returns
Number of sizes that have been added
Here is the caller graph for this function:

◆ saveAll()

void fs::sim::ProbabilityMap::saveAll ( const tm & start_time,
DurationSize time,
const ProcessingStatus processing_status ) const

Save total, low, moderate, and high maps, and output information to log.

Parameters
start_timeStart time of simulation
timeTime for these maps
processing_statusStage in processing for simulations
Here is the call graph for this function:

◆ saveSizes()

void fs::sim::ProbabilityMap::saveSizes ( const string & base_name) const
private

Save list of sizes.

Parameters
base_nameBase name of file to save into
Here is the call graph for this function:
Here is the caller graph for this function:

◆ saveToProbabilityFile()

template<class R >
string fs::sim::ProbabilityMap::saveToProbabilityFile ( const data::GridMap< size_t > & grid,
const string & dir,
const string & base_name,
const R divisor ) const
inlineprivate

Save probability file and record filename if interim.

Returns
Path for file that was written
Here is the call graph for this function:
Here is the caller graph for this function:

◆ saveTotal()

void fs::sim::ProbabilityMap::saveTotal ( const string & base_name,
const ProcessingStatus processing_status ) const
private

Save map representing all intensities.

Parameters
base_nameBase file name to save to
processing_statusStage in processing for simulations
Here is the call graph for this function:
Here is the caller graph for this function:

◆ saveTotalCount()

void fs::sim::ProbabilityMap::saveTotalCount ( const string & base_name) const
private

Save map representing all intensities occurrence.

Parameters
base_nameBase file name to save to
Here is the call graph for this function:

◆ setPerimeter()

void fs::sim::ProbabilityMap::setPerimeter ( const topo::Perimeter *const perimeter)

Assign perimeter to use for marking cells as initial perimeter.

Parameters
perimeterIgnition grid to store for marking in outputs

The documentation for this class was generated from the following files: