np.meshgridの働きをまとめておこう。
import numpy as np
x1=np.array([1,2,3])
x2=np.array([4,5,6])
X1,X2=np.meshgrid(x1,x2)
print(X1)
[[1,2,3]
 [1,2,3]
 [1,2,3]]
print(x2)
[[4,4,4]
 [5,5,5]
 [6,6,6]]
第一引数のリストが横に、一方、第二引数のリストが縦に配置される。リストの個数は、それぞれの値の数と対応しているようだ。
これを、使うことで、たとえばx1とx2すべてを足した値、あるいはすべてを掛けた値のリストを作ることができる。
def sum(X1,X2):
    return X1+X2
sum(X1,X2):
array([[5, 6, 7],
       [6, 7, 8],
       [7, 8, 9]])
def malti(X1,X2):
    return  X1*x2
array([[ 4,  8, 12],
       [ 5, 10, 15],
       [ 6, 12, 18]])
一昨日のブログで示した二乗和のグラフは、これを応用しているんだね。ほー。
