获取特定点的渐变

时间:2016-03-03 18:24:21

标签: python numpy scipy interpolation

我希望在非常特定的点计算非解析函数的梯度,这意味着我需要插值(scipy.interpolate.interp2d)渐变的近似值。我从这个最小的工作示例开始,此时迷路了。

import numpy as np
import matplotlib.pyplot as plt

x, y = np.meshgrid(np.linspace(-200,200), np.linspace(-200,200))
z = -x**2 - y**2

v, u = np.gradient(z, 2, 2)

fig, ax = plt.subplots()
ax.quiver(x, y, u, v)

plt.show()

此外,我知道点(x[i], y[j])的渐变是u[i,j]*\hat x + v[i,j]*\hat y。但是,如果在某些时候没有定义梯度,事情就会变得相当困难。

0 个答案:

没有答案