FMT 1.2.0
Forest management tools for forest planning
Loading...
Searching...
No Matches
FMTYieldModelUnitCoverage.h
Go to the documentation of this file.
1/*
2Copyright (c) 2024 Gouvernement du Québec
3
4SPDX-License-Identifier: LiLiQ-R-1.1
5License-Filename: LICENSES/EN/LiLiQ-R11unicode.txt
6*/
7
8#ifndef FMTyieldmodelUnitCoverag_Hm_included
9#define FMTyieldmodelUnitCoverag_Hm_included
10
11#include "FMTYieldModel.h"
12#include "FMTMask.h"
13#include <vector>
14
15namespace Core
16{
17 class FMTOutput;
18 // DocString: FMTYieldModelUnitCoverage
23 public FMTYieldModel
24 {
25 public:
26 // DocString: FFMTyieldmodelUnitCoverage::FMTYieldModelUnitCoverage(const boost::property_tree::ptree&,const std::string&)
34 const std::vector<std::string>& p_yields, const Core::FMTMask& p_mask);
35 // DocString: FMTYieldModelUnitCoverage::predict
41 const std::vector<double>predict(const Core::FMTYieldRequest& p_request) const;
42 // DocString: FMTYieldModelRandom::preSolve
50 std::unique_ptr<FMTYieldModel> preSolve(const FMTMaskFilter& p_filter,
51 const std::vector<FMTTheme>& p_newThemes) const;
52 // DocString: FMTYieldModelUnitCoverage::postSolve
59 std::unique_ptr<FMTYieldModel> postSolve(const FMTMaskFilter& p_filter,
60 const std::vector<FMTTheme>& p_baseThemes) const;
61 // DocString: FMTYieldModelUnitCoverage::clone
66 std::unique_ptr<FMTYieldModel>clone() const;
67 // DocString: FMTYieldModelUnitCoverage::getModelType
72 static std::string getModelType();
73 private:
74 // DocString: FMTYieldModelUnitCoverage::getOutputs
79 std::vector<FMTOutput> getOutputs() const;
80 // DocString: FMTYieldModelUnitCoverage::getOutputValues
86 std::vector<double> getOutputValues(const std::vector<FMTOutput>& p_outputs) const;
87 // DocString: FMTYieldModelUnitCoverage::m_cache
89 mutable std::vector<double>m_cache;
90 // DocString: FMTYieldModelUnitCoverage::m_mask
92 Core::FMTMask m_mask;
93
94 };
95}
96
97
98#endif
99
Filter built from masks used to preSolve and postsolve FMTMask objects.
Definition: FMTMaskFilter.h:31
Core class holding, as a boost dynamic bitset, which theme attributes are part of a mask.
Definition: FMTMask.h:96
Yield model calculating the sum of a yield value over a spatial unit at period 0.
Definition: FMTYieldModelUnitCoverage.h:24
const std::vector< double > predict(const Core::FMTYieldRequest &p_request) const
predict the yields values using this class.
std::unique_ptr< FMTYieldModel > postSolve(const FMTMaskFilter &p_filter, const std::vector< FMTTheme > &p_baseThemes) const
Postsolve the yieldmodel by default it will return a clone.
static std::string getModelType()
Get the model type.
std::unique_ptr< FMTYieldModel > clone() const
clone this FMTYieldModel
std::unique_ptr< FMTYieldModel > preSolve(const FMTMaskFilter &p_filter, const std::vector< FMTTheme > &p_newThemes) const
If the FMTYieldModelUnitCoverage contains Core classes it also need to be presolved when presolved is...
FMTYieldModelUnitCoverage(const boost::property_tree::ptree &p_jsonProps, const std::vector< std::string > &p_yields, const Core::FMTMask &p_mask)
Main constructor for the unit coverage model.
Abstract class to be implemented as a machine learning yield model.
Definition: FMTYieldModel.h:45
Request for yield values using a development and optionally a graph vertex.
Definition: FMTYieldRequest.h:37
Definition: FMTYieldModel.h:30
The Core namespace provides classes for simulating stands/strata growth/harvest through time.
Definition: FMTAction.h:34