def METHOD_NAME():
    img_shape = (int(math.pow(2, noctaves)) * perlinres[0] * shapescale[0], int(math.pow(2, noctaves)) * perlinres[1] * shapescale[1])
    # Coordinates of the test fieldset (on A-grid in deg)
    lon = np.linspace(-180.0, 180.0, img_shape[0], dtype=np.float32)
    lat = np.linspace(-90.0, 90.0, img_shape[1], dtype=np.float32)
    time = np.zeros(1, dtype=np.float64)
    time = np.array(time) if not isinstance(time, np.ndarray) else time
    # Define arrays U (zonal), V (meridional), W (vertical) and P (sea
    # surface height) all on A-grid
    if PERLIN is not None:
        U = PERLIN.generate_fractal_noise_2d(img_shape, perlinres, noctaves, perlin_persistence) * scalefac
        V = PERLIN.generate_fractal_noise_2d(img_shape, perlinres, noctaves, perlin_persistence) * scalefac
    else:
        U = np.ones(img_shape, dtype=np.float32)*scalefac
        V = np.ones(img_shape, dtype=np.float32)*scalefac
    U = np.transpose(U, (1, 0))
    U = np.expand_dims(U, 0)
    V = np.transpose(V, (1, 0))
    V = np.expand_dims(V, 0)
    data = {'U': U, 'V': V}
    dimensions = {'time': time, 'lon': lon, 'lat': lat}
    if asizeof is not None:
        print(f"Perlin U-field requires {U.size * U.itemsize} bytes of memory.")
        print(f"Perlin V-field requires {V.size * V.itemsize} bytes of memory.")
    fieldset = FieldSet.from_data(data, dimensions, mesh='spherical', transpose=False)
    # fieldset.write("perlinfields")  # can also be used, but then has a ghost depth dimension
    write_simple_2Dt(fieldset.U, path.join(path.dirname(__file__), 'perlinfields'), varname='vozocrtx')
    write_simple_2Dt(fieldset.V, path.join(path.dirname(__file__), 'perlinfields'), varname='vomecrty')