gpt4 book ai didi

python - 如何在 python 中找到 f(x,y) 沿 x 和 y : del^2 f(x, y)/[del(x)][del (y)] 的偏导数

转载 作者:太空狗 更新时间:2023-10-30 02:51:34 27 4
gpt4 key购买 nike

我在 (xx,yy) 网格中定义了一个二维函数 f(x,y)。我想在数值上获得它的偏导数,如下所示。请注意,np.gradient 不会完成这项工作,因为它返回沿每个轴的矢量场。

enter image description here

我该怎么做?这是我的代码:

import numpy as np
import matplotlib.pyplot as plt

x = np.arange(-5, 5, 0.1)
y = np.arange(-4, 4, 0.1)
xx, yy = np.meshgrid(x, y, sparse=True)
f = np.sin(xx**2 + yy**2) / (xx**2 + yy**2)
h = plt.contourf(x,y,f)
plt.show()

df=np.gradient(f,y,x) #Doesn't do my job
df=np.array(df)
print(df.shape)

# h = plt.contourf(x,y,df) #This is what I want to plot.
# plt.show()

最佳答案

您需要调用np.gradient两次:

import numpy as np
import matplotlib.pyplot as plt

x = np.arange(-5, 5, 0.1)
y = np.arange(-4, 4, 0.1)
xx, yy = np.meshgrid(x, y, sparse=True)
f = np.sin(xx**2 + yy**2) / (xx**2 + yy**2)
h = plt.contourf(x,y,f)
plt.show()

dfy = np.gradient(f, y, axis=0)
dfxy = np.gradient(dfy, x, axis=1)
print(dfxy.shape)
# (80, 100)

h = plt.contourf(x, y, dfxy)
plt.show()

输出:

Result

关于python - 如何在 python 中找到 f(x,y) 沿 x 和 y : del^2 f(x, y)/[del(x)][del (y)] 的偏导数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55376102/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com