# setup: import numpy as np; r = np.arange(1000000, dtype=float) # run: rosen(r) import numpy as np # pythran export rosen(float[]) def rosen(x): t0 = 100 * (x[1:] - x[:-1] ** 2) ** 2 t1 = (1 - x[:-1]) ** 2 return np.sum(t0 + t1)