Erro em plt.countour

Tenho um array com 500 itens, chamada a1. Outra, a2, também tem 500 itens. Estou tentando plotar as duas com contornos, mas estou com o erro:

TypeError: Shape of x does not match that of z: found (500, 1) instead of (500, 2). 

O problema é que se eu mudo Z para só uma coluna, ele acusa outro erro:

TypeError: Input z must be at least a 2x2 array. 

Então não consigo achar uma solução. O Código é esse:

fig = plt.figure() ax = fig.add_subplot(111) u = np.linspace (-1,1,100) X1, X2 = np.meshgrid(a1, a2) Z = np.ones((500,2))  plt.contour(a1, a2, Z)