A functional version of the model, cannot find maximum dy/dx, nor can it find the time that the canopy was above a given threshold. Apart from that though, it's pretty good