made half life function continuous rather than discrete, makes more sense with a tolerence