![]() |
FIMS
v0.10.0
|
Stores FIMS model information and creates model. Contains all objects and data pre-model construction. More...
#include <information.hpp>
Public Types | |
| typedef std::map< uint32_t, std::shared_ptr< fims_data_object::DataObject< Type > > >::iterator | data_iterator |
| typedef std::map< uint32_t, std::shared_ptr< fims_popdy::RecruitmentBase< Type > > >::iterator | recruitment_models_iterator |
| typedef std::map< uint32_t, std::shared_ptr< fims_popdy::RecruitmentBase< Type > > >::iterator | recruitment_process_iterator |
| typedef std::map< uint32_t, std::shared_ptr< fims_popdy::SelectivityBase< Type > > >::iterator | selectivity_models_iterator |
| typedef std::map< uint32_t, std::shared_ptr< fims_popdy::GrowthBase< Type > > >::iterator | growth_models_iterator |
| typedef std::map< uint32_t, std::shared_ptr< fims_popdy::MaturityBase< Type > > >::iterator | maturity_models_iterator |
| typedef std::map< uint32_t, std::shared_ptr< fims_popdy::Fleet< Type > > >::iterator | fleet_iterator |
| typedef std::map< uint32_t, std::shared_ptr< fims_popdy::Population< Type > > >::iterator | population_iterator |
| typedef std::map< uint32_t, std::shared_ptr< fims_distributions::DensityComponentBase< Type > > >::iterator | density_components_iterator |
| typedef std::unordered_map< uint32_t, std::shared_ptr< fims_popdy::FisheryModelBase< Type > > >::iterator | model_map_iterator |
| typedef std::unordered_map< uint32_t, fims::Vector< Type > * >::iterator | variable_map_iterator |
Public Member Functions | |
| void | Clear () |
| Clears all containers. | |
| std::string | State () |
| Get a summary string of the Information object state. | |
| void | RegisterParameter (Type &p) |
| Register a parameter as estimable. | |
| void | RegisterRandomEffect (Type &re) |
| Register a random effect as estimable. | |
| void | RegisterParameterName (std::string p_name) |
| Register a parameter name. | |
| void | RegisterRandomEffectName (std::string re_name) |
| Register a random effects name. | |
| void | SetupPriors () |
| Loop over distributions and set links to distribution x value if distribution is a prior type. | |
| void | SetupRandomEffects () |
| Loop over distributions and set links to distribution x value if distribution is a random effects type. | |
| void | SetupData () |
| Loop over distributions and set links to distribution expected value if distribution is a data type. | |
| void | SetFleetCatchData (bool &valid_model, std::shared_ptr< fims_popdy::Fleet< Type > > f) |
| Set pointers to catch data in the fleet module. | |
| void | SetFleetIndexData (bool &valid_model, std::shared_ptr< fims_popdy::Fleet< Type > > f) |
| Set pointers to index data in the fleet module. | |
| void | SetAgeCompositionData (bool &valid_model, std::shared_ptr< fims_popdy::Fleet< Type > > f) |
| Set pointers to age composition data in the fleet module. | |
| void | SetLengthCompositionData (bool &valid_model, std::shared_ptr< fims_popdy::Fleet< Type > > f) |
| Set pointers to length composition data in the fleet module. | |
| void | SetFleetSelectivityModel (bool &valid_model, std::shared_ptr< fims_popdy::Fleet< Type > > f) |
| Set pointers to the selectivity module referenced in the fleet module. | |
| void | SetFleetAgeToLengthConversionModel (bool &valid_model, std::shared_ptr< fims_popdy::Population< Type > > p, std::shared_ptr< fims_popdy::Fleet< Type > > f) |
| Set the age-to-length conversion module referenced by the fleet and population modules. | |
| void | SetRecruitment (bool &valid_model, std::shared_ptr< fims_popdy::Population< Type > > p) |
| Set pointers to the recruitment module referenced in the population module. | |
| void | SetRecruitmentProcess (bool &valid_model, std::shared_ptr< fims_popdy::Population< Type > > p) |
| Set pointers to the recruitment process module referenced in the population module. | |
| fims::Vector< fims::Vector< double > > | PrepareFleetObservationBinEdges (const std::shared_ptr< fims_popdy::Population< Type > > &p) |
| Build canonical fleet observation-bin edge vectors from fleet length_bin centers. | |
| void | EnforcePopulationGridNotCoarserThanFleetBins (const fims_popdy::SizeGrid &size_grid, const fims::Vector< fims::Vector< double > > &fleet_edges) |
| Enforce that biological size bins are not coarser than overlapping active fleet observation bins. | |
| void | EnsurePopulationSizeGrid (bool &valid_model, std::shared_ptr< fims_popdy::Population< Type > > p) |
| Ensure a population has a usable biological size grid. | |
| void | ConfigureGrowthDerivedSizeProvider (std::shared_ptr< fims_popdy::Population< Type > > p, std::shared_ptr< fims_popdy::GrowthDerivedObservationBase< Type > > growth_observation) |
| Configure the growth-derived size provider for a population. | |
| void | SetGrowth (bool &valid_model, std::shared_ptr< fims_popdy::Population< Type > > p) |
| Set pointers to the growth module referenced in the population module. | |
| void | SetMaturity (bool &valid_model, std::shared_ptr< fims_popdy::Population< Type > > p) |
| Set pointers to the maturity module referenced in the population module. | |
| void | CreateFleetObjects (bool &valid_model) |
| Loop over all fleets and set pointers to fleet objects. | |
| void | SetDataObjects (bool &valid_model) |
| Loop over all density components and set pointers to data objects. | |
| void | CreatePopulationObjects (bool &valid_model) |
| Loop over all populations and set pointers to population objects. | |
| void | CreateModelingObjects (bool &valid_model) |
| Loop over all models and set pointers to population objects. | |
| bool | CreateModel () |
| Create the generalized stock assessment model that will evaluate the objective function. Does error checking to make sure the program has all necessary components for the model and that they're in the right dimensions. This sets up pointers to all memory objects and initializes fleet and population objects. | |
| size_t | GetNages () const |
| Get the Nages object. | |
| void | SetNages (size_t n_ages) |
| Set the Nages object. | |
| size_t | GetNyears () const |
| Get the n_years object. | |
| void | SetNyears (size_t n_years) |
| Set the n_years object. | |
| std::vector< Type * > & | GetParameters () |
| Get the Parameters object. | |
| std::vector< Type * > & | GetFixedEffectsParameters () |
| Get the Fixed Effects Parameters object. | |
| std::vector< Type * > & | GetRandomEffectsParameters () |
| Get the Random Effects Parameters object. | |
| bool | CheckModel () |
| Checks to make sure all required modules are present for specified model. | |
Static Public Member Functions | |
| static std::shared_ptr< Information< Type > > | GetInstance () |
| Returns a singleton Information object for type T. | |
Public Attributes | |
| size_t | n_years = 0 |
| size_t | n_ages = 0 |
| std::vector< Type * > | parameters |
| std::vector< Type * > | random_effects_parameters |
| std::vector< Type * > | fixed_effects_parameters |
| std::vector< std::string > | parameter_names |
| std::vector< std::string > | random_effects_names |
| std::map< uint32_t, std::shared_ptr< fims_data_object::DataObject< Type > > > | data_objects |
| std::map< uint32_t, std::shared_ptr< fims_popdy::RecruitmentBase< Type > > > | recruitment_models |
| std::map< uint32_t, std::shared_ptr< fims_popdy::RecruitmentBase< Type > > > | recruitment_process_models |
| std::map< uint32_t, std::shared_ptr< fims_popdy::SelectivityBase< Type > > > | selectivity_models |
| std::map< uint32_t, std::shared_ptr< fims_popdy::GrowthBase< Type > > > | growth_models |
| std::map< uint32_t, std::shared_ptr< fims_popdy::MaturityBase< Type > > > | maturity_models |
| std::map< uint32_t, std::shared_ptr< fims_popdy::Fleet< Type > > > | fleets |
| std::map< uint32_t, std::shared_ptr< fims_popdy::Population< Type > > > | populations |
| std::map< uint32_t, std::shared_ptr< fims_distributions::DensityComponentBase< Type > > > | density_components |
| std::unordered_map< uint32_t, std::shared_ptr< fims_popdy::FisheryModelBase< Type > > > | models_map |
| std::unordered_map< uint32_t, fims::Vector< Type > * > | variable_map |
Static Public Attributes | |
| static std::shared_ptr< Information< Type > > | fims_information |
Stores FIMS model information and creates model. Contains all objects and data pre-model construction.
| typedef std::map<uint32_t,std::shared_ptr<fims_data_object::DataObject<Type>>>::iterator fims_info::Information< Type >::data_iterator |
iterator for the data objects
| typedef std::map<uint32_t,std::shared_ptr<fims_distributions::DensityComponentBase<Type>>>::iterator fims_info::Information< Type >::density_components_iterator |
iterator for distribution objects>
| typedef std::map<uint32_t,std::shared_ptr<fims_popdy::Fleet<Type>>>::iterator fims_info::Information< Type >::fleet_iterator |
iterator for fleet objects>
| typedef std::map<uint32_t,std::shared_ptr<fims_popdy::GrowthBase<Type>>>::iterator fims_info::Information< Type >::growth_models_iterator |
iterator for growth objects>
| typedef std::map<uint32_t,std::shared_ptr<fims_popdy::MaturityBase<Type>>>::iterator fims_info::Information< Type >::maturity_models_iterator |
iterator for maturity objects>
| typedef std::unordered_map<uint32_t,std::shared_ptr<fims_popdy::FisheryModelBase<Type>>>::iterator fims_info::Information< Type >::model_map_iterator |
iterator for variable map>
| typedef std::map<uint32_t,std::shared_ptr<fims_popdy::Population<Type>>>::iterator fims_info::Information< Type >::population_iterator |
iterator for population objects>
| typedef std::map<uint32_t,std::shared_ptr<fims_popdy::RecruitmentBase<Type>>>::iterator fims_info::Information< Type >::recruitment_models_iterator |
iterator for recruitment objects>
| typedef std::map<uint32_t,std::shared_ptr<fims_popdy::RecruitmentBase<Type>>>::iterator fims_info::Information< Type >::recruitment_process_iterator |
iterator for recruitment process objects>
| typedef std::map<uint32_t,std::shared_ptr<fims_popdy::SelectivityBase<Type>>>::iterator fims_info::Information< Type >::selectivity_models_iterator |
iterator for selectivity objects>
| typedef std::unordered_map<uint32_t,fims::Vector<Type>*>::iterator fims_info::Information< Type >::variable_map_iterator |
iterator for variable map>
|
inline |
Checks to make sure all required modules are present for specified model.
|
inline |
Configure the growth-derived size provider for a population.
| p | Shared pointer to population module. |
| growth_observation | Shared pointer to a growth module that can provide growth-derived observation products. |
|
inline |
Loop over all fleets and set pointers to fleet objects.
| &valid_model | reference to true/false boolean indicating whether model is valid. |
|
inline |
Create the generalized stock assessment model that will evaluate the objective function. Does error checking to make sure the program has all necessary components for the model and that they're in the right dimensions. This sets up pointers to all memory objects and initializes fleet and population objects.
|
inline |
Loop over all populations and set pointers to population objects.
| &valid_model | reference to true/false boolean indicating whether model is valid. |
|
inline |
Enforce that biological size bins are not coarser than overlapping active fleet observation bins.
This rule applies to both the built-in default biological size grid and any user-supplied biological size-grid override. The separate terminal plus-group bin is allowed to remain wider than fleet bins only when it lies entirely above the fleet-supported range and therefore does not overlap any active fleet observation bin.
| size_grid | Population biological size grid to validate. |
| fleet_edges | Prepared fleet observation-bin edge vectors. |
|
inline |
Ensure a population has a usable biological size grid.
Prepare canonical fleet observation-bin geometry from valid fleet length_bin centers whenever that geometry is available. If a user provides a valid biological size grid, keep it only if its bins are not coarser than any overlapping active fleet observation bins; otherwise, report an error and invalidate the model. If no biological size grid has been provided, build the built-in default from the prepared fleet observation-bin geometry, enforce the same fleet-bin compatibility rule, and warn when the built-in default creates more than 200 regular bins. If a user provides an invalid or partially specified grid, report the problem and invalidate the model.
| valid_model | Reference to model-validity flag. |
| p | Shared pointer to population module. |
|
inline |
Get the Fixed Effects Parameters object.
|
inlinestatic |
Returns a singleton Information object for type T.
|
inline |
Get the Nages object.
|
inline |
Get the n_years object.
|
inline |
Get the Parameters object.
|
inline |
Get the Random Effects Parameters object.
|
inline |
Build canonical fleet observation-bin edge vectors from fleet length_bin centers.
| p | Shared pointer to population module. |
|
inline |
Register a parameter as estimable.
| p | parameter |
|
inline |
Register a parameter name.
| p_name | parameter name |
|
inline |
Register a random effect as estimable.
| re | random effect |
|
inline |
Register a random effects name.
| re_name | random effects name |
|
inline |
Set pointers to age composition data in the fleet module.
| &valid_model | reference to true/false boolean indicating whether model is valid. |
| f | shared pointer to fleet module |
|
inline |
Loop over all density components and set pointers to data objects.
| &valid_model | reference to true/false boolean indicating whether model is valid. |
|
inline |
Set the age-to-length conversion module referenced by the fleet and population modules.
| &valid_model | reference to true/false boolean indicating whether model is valid. |
| p | shared pointer to population module |
| f | shared pointer to fleet module |
|
inline |
Set pointers to catch data in the fleet module.
| &valid_model | reference to true/false boolean indicating whether model is valid. |
| f | shared pointer to fleet module |
|
inline |
Set pointers to index data in the fleet module.
| &valid_model | reference to true/false boolean indicating whether model is valid. |
| f | shared pointer to fleet module |
|
inline |
Set pointers to the selectivity module referenced in the fleet module.
| &valid_model | reference to true/false boolean indicating whether model is valid. |
| f | shared pointer to fleet module |
|
inline |
Set pointers to the growth module referenced in the population module.
| &valid_model | reference to true/false boolean indicating whether model is valid. |
| p | shared pointer to population module |
|
inline |
Set pointers to length composition data in the fleet module.
| &valid_model | reference to true/false boolean indicating whether model is valid. |
| f | shared pointer to fleet module |
|
inline |
Set pointers to the maturity module referenced in the population module.
| &valid_model | reference to true/false boolean indicating whether model is valid. |
| p | shared pointer to population module |
|
inline |
Set the Nages object.
| n_ages |
|
inline |
Set the n_years object.
| n_years |
|
inline |
Set pointers to the recruitment module referenced in the population module.
| &valid_model | reference to true/false boolean indicating whether model is valid. |
| p | shared pointer to population module |
|
inline |
Set pointers to the recruitment process module referenced in the population module.
| &valid_model | reference to true/false boolean indicating whether model is valid. |
| p | shared pointer to population module |
|
inline |
Get a summary string of the Information object state.
Returns a string containing the sizes and states of all major containers and model components in the Information object. Useful for debugging and diagnostics.
| std::map<uint32_t, std::shared_ptr<fims_data_object::DataObject<Type> > > fims_info::Information< Type >::data_objects |
map that holds data objects >
| std::map<uint32_t, std::shared_ptr<fims_distributions::DensityComponentBase<Type> > > fims_info::Information< Type >::density_components |
hash map to link each object to its shared location in memory
|
static |
| std::vector<Type*> fims_info::Information< Type >::fixed_effects_parameters |
list of all fixed effects parameters >
| std::map<uint32_t, std::shared_ptr<fims_popdy::Fleet<Type> > > fims_info::Information< Type >::fleets |
hash map to link each object to its shared location in memory
| std::map<uint32_t, std::shared_ptr<fims_popdy::GrowthBase<Type> > > fims_info::Information< Type >::growth_models |
hash map to link each object to its shared location in memory
| std::map<uint32_t, std::shared_ptr<fims_popdy::MaturityBase<Type> > > fims_info::Information< Type >::maturity_models |
hash map to link each object to its shared location in memory
| std::unordered_map<uint32_t, std::shared_ptr<fims_popdy::FisheryModelBase<Type> > > fims_info::Information< Type >::models_map |
hash map of fishery models, e.g., CAA, GMACS, Spatial, etc
| size_t fims_info::Information< Type >::n_ages = 0 |
number of ages>
| size_t fims_info::Information< Type >::n_years = 0 |
number of years >
| std::vector<std::string> fims_info::Information< Type >::parameter_names |
list of all parameter names estimated in the model
| std::vector<Type*> fims_info::Information< Type >::parameters |
list of all estimated parameters >
| std::map<uint32_t, std::shared_ptr<fims_popdy::Population<Type> > > fims_info::Information< Type >::populations |
hash map to link each object to its shared location in memory
| std::vector<std::string> fims_info::Information< Type >::random_effects_names |
list of all random effects names estimated in the model
| std::vector<Type*> fims_info::Information< Type >::random_effects_parameters |
list of all random effects parameters >
| std::map<uint32_t, std::shared_ptr<fims_popdy::RecruitmentBase<Type> > > fims_info::Information< Type >::recruitment_models |
hash map to link each object to its shared location in memory
| std::map<uint32_t, std::shared_ptr<fims_popdy::RecruitmentBase<Type> > > fims_info::Information< Type >::recruitment_process_models |
hash map to link each object to its shared location in memory
| std::map<uint32_t, std::shared_ptr<fims_popdy::SelectivityBase<Type> > > fims_info::Information< Type >::selectivity_models |
hash map to link each object to its shared location in memory
| std::unordered_map<uint32_t, fims::Vector<Type>*> fims_info::Information< Type >::variable_map |
hash map to link a parameter, derived value, or observation to its shared location in memory