39 std::unordered_map<core::Identifier, int>
variables;
67 const std::map<int, HierarchicalLevel> &levels);
71 std::string
name()
const noexcept
override;
78 const std::unordered_map<core::Identifier, LinearModel> &models_;
79 const std::map<int, HierarchicalLevel> &levels_;
82 std::vector<MappingEntry> &level_factors);
93 std::unordered_map<core::Identifier, LinearModel> linear_models,
94 std::map<int, HierarchicalLevel> model_levels);
98 std::unique_ptr<HierarchicalLinearModel>
create_model()
const override;
101 std::unordered_map<core::Identifier, LinearModel> models_;
102 std::map<int, HierarchicalLevel> levels_;
Defines the full hierarchical linear model data type.
Definition: hierarchical_model_static.h:86
HierarchicalLinearModelDefinition(std::unordered_map< core::Identifier, LinearModel > linear_models, std::map< int, HierarchicalLevel > model_levels)
Initialises a new instance of the HierarchicalLinearModelDefinition class.
Definition: hierarchical_model_static.cpp:123
std::unique_ptr< HierarchicalLinearModel > create_model() const override
Construct a new StaticHierarchicalLinearModel from this definition.
Definition: hierarchical_model_static.cpp:138
Hierarchical linear model interface.
Definition: interfaces.h:137
Risk factor model definition interface.
Definition: interfaces.h:160
Defines the Simulation runtime context data type.
Definition: runtime_context.h:21
Implements the static hierarchical linear model type.
Definition: hierarchical_model_static.h:61
void update_risk_factors(RuntimeContext &context) override
Update risk factors for population.
Definition: hierarchical_model_static.cpp:44
StaticHierarchicalLinearModel(const std::unordered_map< core::Identifier, LinearModel > &models, const std::map< int, HierarchicalLevel > &levels)
Initialises a new instance of the StaticHierarchicalLinearModel class.
Definition: hierarchical_model_static.cpp:6
std::string name() const noexcept override
Gets the model name.
Definition: hierarchical_model_static.cpp:25
HierarchicalModelType type() const noexcept override
Gets the model type identifier.
Definition: hierarchical_model_static.cpp:21
void generate_risk_factors(RuntimeContext &context) override
Generates the initial risk factors for a population and newborns.
Definition: hierarchical_model_static.cpp:27
Defines a contiguous storage for two-dimensional numerical data in row-major format.
Definition: array2d.h:15
Top-level namespace for Health-GPS C++ API.
Definition: analysis_definition.h:8
HierarchicalModelType
Health GPS risk factor module types enumeration.
Definition: interfaces.h:29
Regression coefficients data type.
Definition: hierarchical_model_static.h:9
double value
The coefficient value.
Definition: hierarchical_model_static.h:11
double std_error
Associated standard error.
Definition: hierarchical_model_static.h:20
double tvalue
Associated t-value.
Definition: hierarchical_model_static.h:17
double pvalue
Associated p-value.
Definition: hierarchical_model_static.h:14
Defines a hierarchical level data type.
Definition: hierarchical_model_static.h:36
core::DoubleArray2D residual_distribution
The residuals distribution.
Definition: hierarchical_model_static.h:48
core::DoubleArray2D inverse_transition
The inverse transition matrix.
Definition: hierarchical_model_static.h:45
core::DoubleArray2D transition
The transition matrix.
Definition: hierarchical_model_static.h:42
core::DoubleArray2D correlation
The correlation matrix.
Definition: hierarchical_model_static.h:51
std::vector< double > variances
The associated variance.
Definition: hierarchical_model_static.h:54
std::unordered_map< core::Identifier, int > variables
The level variables.
Definition: hierarchical_model_static.h:39
Defines a linear regression model data type.
Definition: hierarchical_model_static.h:24
double residuals_standard_deviation
The residuals standard deviation value.
Definition: hierarchical_model_static.h:29
double rsquared
The R squared value.
Definition: hierarchical_model_static.h:32
std::unordered_map< core::Identifier, Coefficient > coefficients
The model coefficients.
Definition: hierarchical_model_static.h:26
Defines a virtual population person data type.
Definition: person.h:40