In [1]:
import numpy as np

In [5]:
x = np.linspace(0.0,3.0,num=4)

In [6]:
x


Out[6]:
array([ 0.,  1.,  2.,  3.])

In [8]:
y = np.linspace(0.0,4.0,num=5)

In [9]:
y


Out[9]:
array([ 0.,  1.,  2.,  3.,  4.])

In [11]:
xGrid, yGrid = np.meshgrid(x,y)

In [12]:
xGrid


Out[12]:
array([[ 0.,  1.,  2.,  3.],
       [ 0.,  1.,  2.,  3.],
       [ 0.,  1.,  2.,  3.],
       [ 0.,  1.,  2.,  3.],
       [ 0.,  1.,  2.,  3.]])

In [13]:
yGrid


Out[13]:
array([[ 0.,  0.,  0.,  0.],
       [ 1.,  1.,  1.,  1.],
       [ 2.,  2.,  2.,  2.],
       [ 3.,  3.,  3.,  3.],
       [ 4.,  4.,  4.,  4.]])

In [14]:
z = 3-xGrid**2-2*yGrid

In [15]:
z


Out[15]:
array([[  3.,   2.,  -1.,  -6.],
       [  1.,   0.,  -3.,  -8.],
       [ -1.,  -2.,  -5., -10.],
       [ -3.,  -4.,  -7., -12.],
       [ -5.,  -6.,  -9., -14.]])

In [18]:
x_eval = 2.0
y_eval = 3.0
z_eval = 3-x_eval**2-2*y_eval
print(z_eval)


-7.0