|
| FMTsesmodel () |
|
| ~FMTsesmodel ()=default |
|
| FMTsesmodel (const FMTsesmodel &rhs) |
|
| FMTsesmodel (const FMTmodel &rhs) |
|
| FMTsesmodel (const FMTmodel &rhs, const Spatial::FMTforest &forest) |
|
FMTsesmodel & | operator= (const FMTsesmodel &rhs) |
|
| FMTsesmodel (FMTsesmodel &&rhs)=default |
|
FMTsesmodel & | operator= (FMTsesmodel &&rhs)=default |
|
std::string | getdisturbancestats () const |
|
std::map< std::string, double > | greedyreferencebuild (const Core::FMTschedule &schedule, const size_t &randomiterations, unsigned int seed=0, double tolerance=FMT_DBL_TOLERANCE) |
|
virtual std::unique_ptr< FMTmodel > | clone () const |
|
virtual bool | build (std::vector< Core::FMTschedule > schedules=std::vector< Core::FMTschedule >()) |
|
virtual bool | solve () |
|
virtual std::unique_ptr< FMTmodel > | presolve (std::vector< Core::FMTactualdevelopment > optionaldevelopments=std::vector< Core::FMTactualdevelopment >()) const |
|
virtual std::unique_ptr< FMTmodel > | getcopy (int period=0) const |
|
| FMTsemodel () |
|
virtual | ~FMTsemodel ()=default |
|
| FMTsemodel (const FMTsemodel &rhs) |
|
| FMTsemodel (const FMTmodel &rhs, const Spatial::FMTforest &forest) |
|
| FMTsemodel (const FMTmodel &rhs) |
|
FMTsemodel & | operator= (const FMTsemodel &rhs) |
|
| FMTsemodel (FMTsemodel &&rhs)=default |
|
FMTsemodel & | operator= (FMTsemodel &&rhs)=default |
|
Spatial::FMTforest | getmapping () const |
|
Spatial::FMTspatialschedule | getspschedule () const |
|
std::string | getdisturbancestats () const |
|
std::vector< Core::FMTschedule > | getschedule (bool withlock=false) const |
|
bool | setinitialmapping (Spatial::FMTforest forest) |
|
void | LogConstraintsInfeasibilities () const |
|
void | LogConstraintsFactors () const |
|
virtual std::unique_ptr< FMTmodel > | presolve (std::vector< Core::FMTactualdevelopment > optionaldevelopments=std::vector< Core::FMTactualdevelopment >()) const |
|
virtual void | postsolve (const FMTmodel &originalbasemodel) |
|
virtual std::map< std::string, double > | getoutput (const Core::FMToutput &output, int period, Core::FMToutputlevel level=Core::FMToutputlevel::standard) const |
|
virtual Spatial::FMTlayer< double > | getspatialoutput (const Core::FMToutput &output, int period) const |
|
virtual Core::FMTschedule | getsolution (int period, bool withlock=false) const |
|
virtual std::unique_ptr< FMTmodel > | clone () const |
|
virtual std::vector< Core::FMTactualdevelopment > | getarea (int period=0, bool beforegrowanddeath=false) const |
|
virtual std::unique_ptr< FMTmodel > | getcopy (int period=0) const |
|
virtual double | getobjectivevalue () const |
|
Models::FMTmodel | aggregateAllActions (const std::vector< std::string > &p_Aggregates) const |
| Aggregate actions together and create en enterly new model with new -actions,transitions,outputs,constraints,yields,lifespan.
|
|
std::vector< Core::FMTschedule > | aggregateSchedules (const std::vector< Core::FMTschedule > &p_schedules) const |
| Build new schedule based on p_schedules with the corresponding aggregated actions.
|
|
virtual void | setparallellogger (Logging::FMTlogger &logger) |
|
virtual void | clearcache () |
|
| FMTmodel (const std::vector< Core::FMTactualdevelopment > &larea, const std::vector< Core::FMTtheme > <hemes, const std::vector< Core::FMTaction > &lactions, const std::vector< Core::FMTtransition > <ransitions, const Core::FMTyields &lyields, const Core::FMTlifespans &llifespan, const std::string &lname, const std::vector< Core::FMToutput > &loutputs, std::vector< Core::FMTconstraint > lconstraints=std::vector< Core::FMTconstraint >(), FMTmodelparameters lparameters=FMTmodelparameters()) |
|
| FMTmodel () |
|
virtual | ~FMTmodel ()=default |
|
| FMTmodel (FMTmodel &&rhs)=default |
|
FMTmodel & | operator= (FMTmodel &&rhs)=default |
|
virtual std::vector< Core::FMTactualdevelopment > | getarea (int period=0, bool beforegrowanddeath=false) const |
|
virtual std::unique_ptr< FMTmodel > | getcopy (int period=0) const |
|
FMTmodel | basepresolve () const |
|
Core::FMTmaskfilter | getpresolvefilter (const std::vector< Core::FMTtheme > &originalthemes) const |
|
Core::FMTmaskfilter | getpostsolvefilter (const std::vector< Core::FMTtheme > &originalthemes, const Core::FMTmask &devmask) const |
|
Core::FMTmask | getselectedmask (const std::vector< Core::FMTtheme > &originalthemes) const |
|
virtual std::unique_ptr< FMTmodel > | presolve (std::vector< Core::FMTactualdevelopment > optionaldevelopments=std::vector< Core::FMTactualdevelopment >()) const |
|
virtual void | postsolve (const FMTmodel &originalbasemodel) |
|
Core::FMTschedule | presolveschedule (const Core::FMTschedule &originalbaseschedule, const FMTmodel &originalbasemodel) const |
|
FMTmodelstats | getmodelstats () const |
|
void | cleanactionsntransitions () |
|
std::string | getname () const |
|
std::vector< Core::FMTtheme > | getthemes () const |
|
std::vector< Core::FMTaction > | getactions () const |
|
std::vector< Core::FMTtransition > | gettransitions () const |
|
Core::FMTyields | getyields () const |
|
Core::FMTlifespans | getlifespan () const |
|
std::vector< Core::FMToutput > | getoutputs () const |
|
std::vector< Core::FMTconstraint > | getconstraints () const |
|
void | addoutput (const std::string &name, const std::string &maskstring, Core::FMTotar outputtarget, std::string action=std::string(), std::string yield=std::string(), std::string description=std::string(), int targettheme=-1) |
|
template<typename T > |
void | addyieldhandlers (const std::vector< T > &yieldhandlers) |
|
void | addyieldhandlersfromptr (const std::vector< std::unique_ptr< Core::FMTyieldhandler > > &yieldhandlers) |
|
bool | operator== (const FMTmodel &rhs) const |
|
bool | operator< (const FMTmodel &rhs) const |
|
void | setarea (const std::vector< Core::FMTactualdevelopment > &ldevs) |
|
void | setthemes (const std::vector< Core::FMTtheme > <hemes) |
|
void | setactions (const std::vector< Core::FMTaction > &lactions) |
|
void | settransitions (const std::vector< Core::FMTtransition > <ransitions) |
|
void | setconstraints (const std::vector< Core::FMTconstraint > &lconstraint) |
|
void | setyields (const Core::FMTyields &lylds) |
|
void | setlifespan (const Core::FMTlifespans &llifespan) |
|
void | setname (const std::string &newname) |
|
void | setoutputs (const std::vector< Core::FMToutput > &newoutputs) |
|
bool | isvalid () |
|
std::vector< Core::FMTtheme > | locatestaticthemes (const Core::FMToutput &output, bool ignoreoutputvariables=false) const |
|
std::vector< Core::FMTtheme > | locatestaticthemes (const Core::FMToutputnode &output, bool ignoreoutputvariables=false) const |
|
std::vector< Core::FMTtheme > | locatedynamicthemes (const Core::FMToutput &outpu, bool ignoreoutputvariables=false) const |
|
Core::FMTmask | getdynamicmask (const Core::FMToutput &output, bool ignoreoutputvariables=false) const |
|
Core::FMTmask | getdynamicmask (const Core::FMToutputnode &node, bool ignoreoutputvariables=false) const |
|
Core::FMTmask | getstaticmask (const Core::FMToutputnode &node, bool ignoreoutputvariables=false) const |
|
bool | isstaticnode (const Core::FMToutputnode &node, double ratioofset=0.1) const |
|
std::vector< Core::FMTtheme > | locatestatictransitionsthemes () const |
|
std::vector< Core::FMTtheme > | locatenodestaticthemes (const Core::FMToutputnode &node, bool ignoreoutputvariables=false, std::vector< Core::FMTtheme > basethemes=std::vector< Core::FMTtheme >()) const |
|
| FMTmodel (const FMTmodel &rhs) |
|
FMTmodel & | operator= (const FMTmodel &rhs) |
|
bool | empty () const |
|
void | push_back (const FMTmodel &rhs) |
|
double | getinitialarea () const |
|
void | setareaperiod (const int &period) |
|
Core::FMTschedule | getpotentialschedule (std::vector< Core::FMTactualdevelopment > toremove, std::vector< Core::FMTactualdevelopment > selection, bool withlock=true) const |
|
virtual std::vector< Core::FMTconstraint > | getreplanningconstraints (const std::string &modeltype, const std::vector< Core::FMTconstraint > &localconstraints, const int &period) const |
|
virtual bool | doplanning (const bool &solve, std::vector< Core::FMTschedule > schedules=std::vector< Core::FMTschedule >()) |
|
virtual std::map< std::string, double > | getoutput (const Core::FMToutput &output, int period, Core::FMToutputlevel level=Core::FMToutputlevel::standard) const |
|
virtual Core::FMTschedule | getsolution (int period, bool withlock=false) const |
|
virtual std::map< std::string, std::vector< std::vector< double > > > | getoutputsfromperiods (const std::vector< Core::FMToutput > &theoutputs, const int &firstperiod, const int &lastperiod, Core::FMToutputlevel level=Core::FMToutputlevel::standard) const |
|
virtual std::unique_ptr< FMTmodel > | clone () const |
|
virtual bool | setparameter (const FMTintmodelparameters &key, const int &value) |
|
virtual bool | setparameter (const FMTdblmodelparameters &key, const double &value) |
|
virtual bool | setparameter (const FMTboolmodelparameters &key, const bool &value) |
|
int | getparameter (const FMTintmodelparameters &key) const |
|
double | getparameter (const FMTdblmodelparameters &key) const |
|
bool | getparameter (const FMTboolmodelparameters &key) const |
|
bool | setcompresstime (const int &periodstart, const int &periodstop, const int &value) |
|
std::vector< int > | getcompresstime () const |
|
std::vector< Core::FMTconstraint > | goalconstraints (double penalty=999999) const |
|
std::vector< Core::FMTconstraint > | gettacticalconstraints (double penalty=999999, double scheduleweight=999999, double objective=0, double objectivefactor=1.0) const |
|
virtual void | showparameters (const bool &showhelp=false) const |
|
virtual bool | build (std::vector< Core::FMTschedule > schedules=std::vector< Core::FMTschedule >()) |
|
virtual bool | solve () |
|
virtual bool | isoptimal () const |
|
virtual double | getobjectivevalue () const |
|
| FMTobject () |
|
virtual | ~FMTobject () |
|
| FMTobject (const std::shared_ptr< Exception::FMTexceptionhandler > exhandler) |
|
| FMTobject (const FMTobject &rhs) |
|
FMTobject & | operator= (const FMTobject &rhs) |
|
virtual void | passinlogger (const std::shared_ptr< Logging::FMTlogger > &logger) |
|
void | passinexceptionhandler (const std::shared_ptr< Exception::FMTexceptionhandler > &exhandler) |
|
void | redirectlogtofile (const std::string &location) |
|
virtual void | setdefaultlogger () |
|
virtual void | setquietlogger () |
|
virtual void | settasklogger () |
|
virtual void | setdebuglogger () |
|
void | setdefaultexceptionhandler () |
|
void | setquietexceptionhandler () |
|
void | setdebugexceptionhandler () |
|
void | setfreeexceptionhandler () |
|
void | disablenestedexceptions () |
|
void | enablenestedexceptions () |
|
void | seterrorstowarnings (const std::vector< Exception::FMTexc > &errors) |
|
void | setmaxwarningsbeforesilenced (const size_t &maxwarningcount) |
|
This model is a spatialy explicit simulation (ses) model. It uses simple cellular automaton to spatialy simulate FMTactions on a raster stack for a given planning horizon following an harvest schedule. The FMTaction ordering is realy important because the simulator will attend to place the first action of the list on the map and so on.