def METHOD_NAME(key, shape):
    import numpy as np
    x, y = np.ogrid[:shape[0], :shape[1]]
    x = 2* x.astype('f')/shape[0] - 1
    y = 2* y.astype('f')/shape[1] - 1
    x = x - x.mean()
    y = y - y.mean()
    c = x + 1j*y
    r = np.abs(c)
    theta = np.angle(c)
    return zernike(key, r, theta)*(r<1)