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

Answers (0)

Categories

Find more on Interpolation in Help Center and File Exchange

Asked:

on 23 Mar 2018

Community Treasure Hunt

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

Start Hunting!