![]() |
FIMS
v0.10.0
|
Size provider that converts growth outputs to population size products. More...
#include <growth_derived_size_provider.hpp>
Public Member Functions | |
| GrowthDerivedSizeProvider (std::shared_ptr< GrowthDerivedObservationBase< Type > > growth) | |
| Construct a provider linked to a Growth-derived observation object. | |
| const SizeGrid * | TryGetSizeGrid () const override |
| Return the biological size grid used by this provider. | |
| void | SetPopulationSizeGrid (const SizeGrid *population_size_grid) override |
| Configure the provider to use the canonical population size grid. | |
| void | SetPopulationDimensions (std::size_t n_years, std::size_t n_ages) override |
| Configure the provider dimensions for prepared size products. | |
| void | PrepareSizeProducts () override |
| Prepare size products for the current model state. | |
| void | InvalidatePreparedSizeProducts () override |
| Invalidate any prepared size state held by this provider. | |
| const Type & | MeanLAA (std::size_t year_index, std::size_t age_index) const override |
| Read prepared mean length-at-age. | |
| const Type & | SdLAA (std::size_t year_index, std::size_t age_index) const override |
| Read prepared spread of length-at-age. | |
| const Type & | ProbSize (std::size_t year_index, std::size_t age_index, std::size_t size_bin_index) const override |
| Read prepared age-to-size probability on the population grid. | |
| void | SetGrowth (std::shared_ptr< GrowthDerivedObservationBase< Type > > growth) |
| Replace the Growth-derived observation object used by this provider. | |
Size provider that converts growth outputs to population size products.
The provider reads mean length, length standard deviation, and weight-at-age from a Growth-derived observation object, then builds probability rows on the population biological size grid.
| Type | Numeric or automatic-differentiation scalar type. |
|
inlineexplicit |
Construct a provider linked to a Growth-derived observation object.
| growth | Growth object that supplies mean length and weight outputs. |
|
inlineoverridevirtual |
Invalidate any prepared size state held by this provider.
This is called when upstream biological inputs or the canonical population size grid change and previously prepared size products should no longer be reused.
Implements fims_popdy::SizeDistributionProviderBase< Type >.
|
inlineoverridevirtual |
Read prepared mean length-at-age.
| year_index | Year index. |
| age_index | Age index. |
Implements fims_popdy::SizeDistributionProviderBase< Type >.
|
inlineoverridevirtual |
Prepare size products for the current model state.
Implements fims_popdy::SizeDistributionProviderBase< Type >.
|
inlineoverridevirtual |
Read prepared age-to-size probability on the population grid.
| year_index | Year index. |
| age_index | Age index. |
| size_bin_index | Size-bin index. |
Implements fims_popdy::SizeDistributionProviderBase< Type >.
|
inlineoverridevirtual |
Read prepared spread of length-at-age.
| year_index | Year index. |
| age_index | Age index. |
Implements fims_popdy::SizeDistributionProviderBase< Type >.
|
inline |
Replace the Growth-derived observation object used by this provider.
| growth | Growth object that supplies mean length and weight outputs. |
|
inlineoverridevirtual |
Configure the provider dimensions for prepared size products.
| n_years | Number of modeled years represented. |
| n_ages | Number of modeled ages represented. |
Providers use these dimensions together with the canonical population size grid to size any prepared population-level size products.
Implements fims_popdy::SizeDistributionProviderBase< Type >.
|
inlineoverridevirtual |
Configure the provider to use the canonical population size grid.
| size_grid | Canonical population-level biological size grid. |
Providers should prepare any grid-based size products on this grid rather than creating an independent biological size definition.
Implements fims_popdy::SizeDistributionProviderBase< Type >.
|
inlineoverridevirtual |
Return the biological size grid used by this provider.
Implements fims_popdy::SizeDistributionProviderBase< Type >.