diff --git a/ogcore/parameters.py b/ogcore/parameters.py index 6e4c13ddf..b715b8ec9 100644 --- a/ogcore/parameters.py +++ b/ogcore/parameters.py @@ -205,6 +205,12 @@ def compute_default_params(self): param_in, dims=(self.T + self.S,), item=item ) setattr(self, item, param_out) + # retirement_age is a whole number of years (bounded well under the + # int16 range), so store it as int16 rather than float64 to reduce + # the memory footprint of the parameters object (see issue #1080). + # Rounding first keeps behavior identical to how it is already + # consumed in `retire`. + self.retirement_age = np.round(self.retirement_age).astype(np.int16) # Deal with parameters that vary across industry and over time tp_param_list2 = [ "Z",