FMT 0.9.8
Forest management tools for forest planning
|
#include <FMToperatingarea.hpp>
Public Member Functions | |
FMToperatingarea & | operator+= (const double &value) |
std::vector< Core::FMTmask > | getneighbors () const |
double | getarea () const |
double | getneihgborsperimeter () const |
Core::FMTmask | getmask () const |
void | setneighbors (const std::vector< Core::FMTmask > &lneighbors) |
FMToperatingarea (const Core::FMTmask &lmask, const double &lneihgborsperimeter) | |
void | setarea (const double &newarea) |
FMToperatingarea ()=default | |
FMToperatingarea (const FMToperatingarea &rhs)=default | |
FMToperatingarea & | operator= (const FMToperatingarea &rhs)=default |
bool | operator== (const FMToperatingarea &rhs) const |
bool | operator!= (const FMToperatingarea &rhs) const |
virtual | ~FMToperatingarea ()=default |
FMToperatingarea | presolveoperatingarea (const Core::FMTmaskfilter &filter, const std::vector< Core::FMTtheme > &presolvedthemes) const |
FMToperatingarea | postsolveoperatingarea (const Core::FMTmaskfilter &filter, const std::vector< Core::FMTtheme > &basethemes) const |
Protected Attributes | |
Core::FMTmask | mask |
The mask describing the operating area. | |
std::vector< Core::FMTmask > | neighbors |
Neighbors mask of the operating area. | |
double | neihgborsperimeter |
neighborsperimeter is the ratio a operatingarea needs to share to a other operatingarea to be considered neighbor. | |
double | _area |
The initial area of the operating area used as big M for the MIP. | |
Friends | |
class | boost::serialization::access |
FMToperatingarea gives informations about a given operating area it's mask,neighbors,neighborsperimeter. FMToperating area have to be based on static themes (not used within transitions).
Heuristics::FMToperatingarea::FMToperatingarea | ( | const Core::FMTmask & | lmask, |
const double & | lneihgborsperimeter | ||
) |
Main FMToperatingarea constructor targeting the user. Before synchronizing everything to the solverinterface, the user has to provide to the heuristics all the green-up, returntime etc.... for each operating area.
|
default |
Default FMToperatingarea constructor
|
default |
FMToperatingarea copy constructor
|
virtualdefault |
Default FMToperatingarea destructor
double Heuristics::FMToperatingarea::getarea | ( | ) | const |
Get the area of the operating area.
Core::FMTmask Heuristics::FMToperatingarea::getmask | ( | ) | const |
Getter returning mask of the operating area.
std::vector< Core::FMTmask > Heuristics::FMToperatingarea::getneighbors | ( | ) | const |
Getter returning a copy of the neighbors masks data of the operatingarea.
double Heuristics::FMToperatingarea::getneihgborsperimeter | ( | ) | const |
Getter returning the percentage of perimeter the oprating area needs to share with a other operating area, to be considered neighbor.
bool Heuristics::FMToperatingarea::operator!= | ( | const FMToperatingarea & | rhs | ) | const |
Comparison operator of FMToperatingarea
FMToperatingarea & Heuristics::FMToperatingarea::operator+= | ( | const double & | value | ) |
Add area to the operating area.
|
default |
FMToperatingarea copy assignment
bool Heuristics::FMToperatingarea::operator== | ( | const FMToperatingarea & | rhs | ) | const |
Comparison operator of FMToperatingarea
FMToperatingarea Heuristics::FMToperatingarea::postsolveoperatingarea | ( | const Core::FMTmaskfilter & | filter, |
const std::vector< Core::FMTtheme > & | basethemes | ||
) | const |
Using a FMTmask (selectedmask) and the original FMTthemes it returns a postsolved FMTmask.
FMToperatingarea Heuristics::FMToperatingarea::presolveoperatingarea | ( | const Core::FMTmaskfilter & | filter, |
const std::vector< Core::FMTtheme > & | presolvedthemes | ||
) | const |
Using a FMTmask (selectedmask) and a subset of the original FMTthemes used to construct the FMTmask, it returns a presolved FMTmask with potentialy less data.
void Heuristics::FMToperatingarea::setarea | ( | const double & | newarea | ) |
Set the area of the operating area.
void Heuristics::FMToperatingarea::setneighbors | ( | const std::vector< Core::FMTmask > & | lneighbors | ) |
Setter for the neighbors mask member data.
|
friend |
serialize function is for serialization, used to do multiprocessing across multiple cpus (pickle in Pyhton)
|
protected |
The initial area of the operating area used as big M for the MIP.
|
protected |
The mask describing the operating area.
|
protected |
Neighbors mask of the operating area.
|
protected |
neighborsperimeter is the ratio a operatingarea needs to share to a other operatingarea to be considered neighbor.