Interpolate vertically from a 4-D data set

Dear all,
Here's the thing. I have two 4-D data sets of T(longitude,latitude,pressure,time) and w(longitude,latitude,pressure,time) which are temperature and vertical velocity respectively. I intended to interpolate vertical velocity to a specific temperature level (ex:320K), and tried to handle this by scatteredInterpolatant function. However, it took me more than 10 minutes only for making the interpolant. I was wondering if there's a more efficient way to implement this. Here's the code I made for the interpolant:
for t=1:nt
X = double(reshape(longitude(:,:,:,t),[],1));
Y = double(reshape(latitude(:,:,:,t),[],1));
Z = reshape(theta(:,:,:,t),[],1);
omega = reshape(w(:,:,:,t),[],1);
F = scatteredInterpolant(X,Y,Z,omega);
V = F(X,Y,Q);
end
Any help would be appreciated.
Sincerely, Charles Tai

回答(0 个)

类别

帮助中心File Exchange 中查找有关 Interpolation 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by