Use this additive formula marker in F_settings$mu_form or
index_settings$q_form, including inside for_fleet() and for_survey().
Ordinary formula coefficients provide the F or q scale; the curve multiplies
it. This curve does not select an age at which F must equal its scale.
Details
The four-parameter curve follows WHAM's raw product: $$S(x)=\frac{1}{1+\exp\{-(x-a_{50,up})/k_{up}\}} \frac{1}{1+\exp\{(x-a_{50,down})/k_{down}\}},$$ with positive \(k_{up},k_{down}\). There is no peak normalization or midpoint ordering. The accompanying F/q coefficient is a scale multiplier, not necessarily maximum realized F/q. Reversed midpoints are permitted; sparse tails and alternative parameter combinations can yield weak or multimodal estimates. Check uncertainty and recovery before routine use.
WHAM's age counter runs from 1 to the number of ages; tinyAM instead uses
the numeric coordinates in x. Account for this offset in comparisons.
F curves support no residual process, IID or AR1 residuals; static curves
cancel from intrinsic RW/correlated-RW increments and are rejected there.
Catchability curves multiply q after its inverse link, including logit q.
References
Miller, T. J. and Stock, B. C., WHAM, src/selectivity.hpp,
get_selAA(), double-logistic model 3, revision
ffcbfd093161e8210aa20716933975191b661807 (GPL-3).
https://github.com/timjmiller/wham/blob/ffcbfd093161e8210aa20716933975191b661807/src/selectivity.hpp
Examples
~ double_logistic(age)
#> ~double_logistic(age)
#> <environment: 0x5edf8584e5a0>
~ double_logistic(age, by = fleet)
#> ~double_logistic(age, by = fleet)
#> <environment: 0x5edf8584e5a0>
~ 0 + for_fleet("Trawl", ~ factor(year) + logistic(age)) +
for_fleet("Gillnet", ~ factor(year) + double_logistic(age))
#> ~0 + for_fleet("Trawl", ~factor(year) + logistic(age)) + for_fleet("Gillnet",
#> ~factor(year) + double_logistic(age))
#> <environment: 0x5edf8584e5a0>