python - 有没有办法将分散的数据插入到复杂的 3d 网格上?
问题描述
我正在跟踪流场中的粒子。我在整个域中都有位置和速度。这给我留下了一个带有 x、y、z 坐标和粒子速度的大数据文件。有没有办法将这些分散的数据插入到现有域的节点上,这样我就可以在其节点上有一个带有粒子数据的网格?
以前,我使用 np.meshgrid 和 scipy.interpolate.griddata 在平面网格(只是一个矩形网格)上做了同样的事情。
def contours():
size = 700 # Refining grid
xi, yi = np.linspace(18.191, 61.851, size), np.linspace(0.25681, 17.721, size) # Define Domain
xi, yi = np.meshgrid(xi, yi) # Forming a grid
# xj, yj, uj are numpy arrays; Interpolation step
zi = scipy.interpolate.griddata((xj, yj), uj/603.0, (xi, yi), method=method, fill_value=1.1)
# Plotting
plt.figure()
plt.contour(xi ,yi, zi, np.linspace(0, 1.0, 10), linewidths=1.0, linestyles='dashed', cmap='jet')
plt.colorbar()
plt.xlabel('X(mm)')
plt.ylabel('Y(mm)')
plt.xlim(18.2, 61.9)
plt.ylim(0.257, 17.7)
return
上面的代码适用于二维问题。有没有办法为 3d 案例做同样的事情?如果我在域内有预定义的 3d 网格和分散的数据怎么办?
提前致谢!!
解决方案
推荐阅读
- reactjs - React Router 刷新 url 但不刷新页面
- java - 使用 Spring Boot 验证 Generic Rest Api
- salesforce - 无法安装@salesforce/lwc-dev-server
- excel - 从 Microsoft CSV 读取大数据并写入 AWS 中的 Microsoft Excel 的策略
- amazon-athena - LOCATION 对于 Amazon Athena 中的数据库的用途是什么?
- python - 如何在轴上绘制时间图
- android - 如何使用 SwitcpMap 观察三个数据?
- python - vscode python模块智能感知不起作用
- javascript - 反应透视动画麻烦
- r - 为另一列中的每个唯一值分配一个名称