def frange(start, stop=None, step=1.0):
    """floating point version of range. Returns a list of real numbers starting
    at start, stepping by step, and stopping less than stop.
    If only one number is given, start is assumed to be 0.0, and step to be 1.0"""
    if stop == None:
        stop = start
        start = 0.0
    l = []
    i = float(start)
    while i < stop:
        l.append(i)
        i += step
    return l