Thanks for the interest in a map of FDD and for looking into coding it up. I am looking forward to seeing these plots and - thanks Blizzard for the links - there is an outside chance I might try to learn Python to try something myself, but likely not realistic.
Would like to raise one issue of definition: when is the first day to use for calculating FDD(x) at each point, x (shorthand for a two dimensional coordinate)?
Use a single, universal date for the whole map, i_start? This seems a poor solution to me. The problem with that is that the colder places will begin freezing before the warmer ones. The warmer places would still be having days above the reference temperature, Tref (either 0 or -1.8 degrees C, not sure that has been decided?) while the cooler places begin accumulating FDDs.
A better solution imo would be to store a separate start date, i_start(x) appropriate for each point x on your 2-dimensional map grid.
Further, I would propose a suitable definition for i_start(x) as the start day that maximises the FDD at that point x.
That is, the FDD at point x on day n, FDD(n,x) is determined by stepping over days, j, and finding the maximum for:
FDD(n,x) = max. for i_start(x) of, sum[j=i_start(x),n] (Tref-T(j,x)).
The day i_start(x) only needs to be determined once for each x - just step through the days up to any day n well into the freezing season and record the value of i_start(x) that maximises it.
Has anyone encountered this as an issue? Does the above proposed solution make any sense?