The fraction of alpha left on a lot, from the dates it carries.
This is the counterpart of viabilityFromManufactureDate, for the same
reason. Callers have dates, and converting them to the model's units belongs
here so that every caller agrees on what "14 months" means.
There are three cases, and the third is a judgement call:
Neither date: nothing is known, so nothing is taken away.
Purchase only: one period under the brewer's conditions.
Harvest but no purchase: the span can't be split, so the brewer's
conditions are applied to all of it. That overstates the loss, which is
the direction we lean everywhere in this module, because the mistake to
avoid is telling a brewer their hops are fine when they aren't.
The fraction of alpha left on a lot, from the dates it carries.
This is the counterpart of
viabilityFromManufactureDate, for the same reason. Callers have dates, and converting them to the model's units belongs here so that every caller agrees on what "14 months" means.There are three cases, and the third is a judgement call: