Avoid repeated FAR/IFAR conversions
Too many FAR/IFAR conversions means that numerical inaccuracy can creep in.
The fact that FAR is in Hz in some places and years^{-1} in others should be kept consistent throughout.
These are two separate questions, but maybe worth considering/fixing at the same time.
My initial thoughts on this are that IFAR is a nicer variable to use internally, as it's some number of seconds which in some cases (time slide limit, thresholding at some number of hours/days/years) can be a whole number.
For the units, it might be worth having them in variable names so that we can see what they are and spot bugs more easily .. eg fg_ifar_s / fg_ifar_yr
(except inside functions which don't care about units ..)