我想從一個不規則網格插值到另一個使用Python的不規則網格。網格是2D的,有103,113個數據點。我使用Python 2.6.6,Scipy 0.7.2,Numpy 1.3.0,Matplotlib 0.99.3將大型不規則網格插值到Python中的另一個不規則網格
在Matlab中使用griddata可以在大約5秒內完成。
BnGRID2 = griddata(R_GRID1,Z_GRID1,BnGRID1,R_GRID2,Z_GRID2) (MATLAB)
(注意:所有的數組是201 X 513)
不過,如果我嘗試使用matplotlib.mlab.griddata我得到的MemoryError即使我嘗試只有真正的部分工作:
mlab.griddata(R_GRID1.flatten(),Z_GRID1.flatten(),num.real(BnGRID1.flatten()),R_GRID2.flatten(),Z_GRID2.flatten())
如果我嘗試使用interp2d我得到一個分段錯誤和Python退出:
a = interp.interp2d(R_GRID1,Z_GRID1,num.real(BnGRID1))
我曾嘗試使用設g KDTree和這似乎工作正常,但是,它需要幾分鐘與Matlab的幾秒鐘,但我還沒有探索這個選項太多。
想知道如果有人有任何想法,我可以像Matlab似乎儘快完成這項工作嗎?我注意到新版本的Scipy也有griddata,有誰知道這是否可以處理大型不規則網格?
我試過新的scipy griddata,它效果很好,謝謝! –