AttributeError в python / numpy при построении функции для определенных значений

Я пишу код Python для генерации и построения «супергауссовых» функций, как:

def supergaussian(x, A, mu, sigma, offset, N=8):
    """Supergaussian function, amplitude A, centroid mu, st dev sigma, exponent N, with constant offset"""
    return A * (1/(2**(1+1/N)*sigma*2*scipy.special.gamma(1+1/N))) * numpy.exp(-numpy.absolute(numpy.power(x-mu,N))/(2*sigma**N)) + offset

init_x = numpy.arange(-100,100,1.0)
init_y = supergaussian(init_x, 1, 0, 25, 0, N=12)

Следующий код просто составляет сюжет этого. По причине, которую я не могу понять, этот код работает нормально, когда используется значение по умолчанию 8 дляNили для значенийN до 13. КогдаN 14 или выше, функция вылетает с сообщением об ошибке:

AttributeError: 'float' object has no attribute 'exp'

На обратной строке в определении функции. Есть идеи? Поскольку единственное, что в этой строке использует .exp, этоnumpy.exp сообщение об ошибке, кажется, подразумевает, чтоnumpy интерпретируется как число с плавающей запятой, но только для больших значенийN...

Я использую Python 3.3.2 с numpy 1.7.1 и scipy 0.12.0