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

Réponses (0)

Catégories

En savoir plus sur Interpolation dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by