hillSlope1 into the ledger's parameter setsaddHillSlope1ToLedger.RdhillSlope1 (the spread link's slope) is fixed at 1, not fitted (see estimateSpreadParams()):
it is not identifiable together with the covariate coefficients, so it is no longer part of
DEoptim's parameter space, and paramsBest (from bestParamSets()) does not include it either.
fireSense_spreadPredict splits a ledger row's parameters from its covariates BY NAME, and the
spread link (fireSenseUtils::logistic3p()/logistic3pUpper()) reads the result BY POSITION –
maxAsymptote, hillSlope1, inflectionPoint1, and (with the upper-tail link) upperTail1.
This restores that position for
new fits, so a new ledger row predicts with hillSlope1 = 1 exactly like an old row whose
hillSlope1 happened to be fitted at that value, and an old row keeps predicting with its own
fitted value.
addHillSlope1ToLedger(paramsBest)paramsBest with a hillSlope1 column of 1s inserted right after maxAsymptote.