def METHOD_NAME(x, mu,alpha,beta,scale):
    """
    Generalized normal distribution.
    Parameters
    ----------
    x : np.ndarray
       X values to evaluate the distribution.
       over.
    mu : float
       Mean/center value of the distribution.
    alpha : float
       Sets the scale/standard deviation of the 
       distribution.
    beta : float
       Sets the shape of the distribution. 
       Beta > 2 becomes boxy. Beta < 2 becomes
       peaky. Beta = 2 is a normal Gaussian.
    scale : float
       A value to scale the distribution by.
    """
    gfunc = gamma(1.0/beta)
    frac  = beta / (2 * alpha * gfunc)
    exp   = (np.abs(x-mu)/alpha)**beta
    return frac * np.exp(-exp)*scale