I have a FORTRAN program that fits IDF curves to several common forms, you choose the best fit from the results. You have to supply (duration, intesity) pairs for a range of duration values (say, 5 min - 240 min, as from IDF curves). Works very nicely. I wrote the program so I could automate...