43 def hessSdf(xc, yc, zc, x, y, z):
44 x = x-xc
45 y = y-yc
46 z = z-zc
47 Hxx = -x**2/(x**2 + y**2 + z**2)**(3/2) + 1/np.sqrt(x**2 + y**2 + z**2)
48 Hzx = -x*z/(x**2 + y**2 + z**2)**(3/2)
49 Hxy = -x*y/(x**2 + y**2 + z**2)**(3/2)
50 Hyy = -y**2/(x**2 + y**2 + z**2)**(3/2) + 1/np.sqrt(x**2 + y**2 + z**2)
51 Hzy = -y*z/(x**2 + y**2 + z**2)**(3/2)
52 Hzz = -z**2/(x**2 + y**2 + z**2)**(3/2) + 1/np.sqrt(x**2 + y**2 + z**2)
53
54 Hxx = Hxx.reshape((-1,1))
55 Hzx = Hzx.reshape((-1,1))
56 Hxy = Hxy.reshape((-1,1))
57 Hyy = Hyy.reshape((-1,1))
58 Hzy = Hzy.reshape((-1,1))
59 Hzz = Hzz.reshape((-1,1))
60 hess_array = np.hstack([Hxx, Hxy, Hzx, Hyy, Hzy, Hzz])
61
62 return hess_array
63
64
65
66
67