Optimization 存储scipy griddata使用的权重以供重用
我正在尝试将数据从一个非结构化网格M1插值到另一个非结构化网格M2。为此,Optimization 存储scipy griddata使用的权重以供重用,optimization,scipy,interpolation,Optimization,Scipy,Interpolation,我正在尝试将数据从一个非结构化网格M1插值到另一个非结构化网格M2。为此,scipy.interpolate.griddata似乎不错 但是,我需要从M1到M2进行多次插值,只更改数据,而不更改网格。我猜想,在内部,scipy.interpolate.griddata定义了从M1插值到M2时的一些权重系数,这可能是计算中代价高昂的部分之一 因此,我希望避免每次重新计算这些重量。有办法做到这一点吗?也就是说,从一个非结构化网格到另一个非结构化网格进行多次插值,两者都保持不变,避免重新计算scipy
scipy.interpolate.griddata
似乎不错
但是,我需要从M1到M2进行多次插值,只更改数据,而不更改网格。我猜想,在内部,scipy.interpolate.griddata
定义了从M1插值到M2时的一些权重系数,这可能是计算中代价高昂的部分之一
因此,我希望避免每次重新计算这些重量。有办法做到这一点吗?也就是说,从一个非结构化网格到另一个非结构化网格进行多次插值,两者都保持不变,避免重新计算scipy.interpolate.griddata
(或等效物)?解决方案是将scipy函数与预计算的三角剖分一起使用:
from scipy.spatial import Delaunay
from scipy.interpolate import LinearNDInterpolator
tri = Delaunay(mesh1) # Compute the triangulation
# Perform the interpolation with the given values:
interpolator = LinearNDInterpolator(tri, values_mesh1)
values_mesh2 = interpolator(mesh2)
mesh1
是一个(点数*dim)数组
注:可用于非线性插值griddata
使用LinearNDInterpolator
或CloughtoHer2dInterpolator
您能帮我解决类似问题吗