interpn and 4D atmospheric data

2 次查看(过去 30 天)
Seb Biass
Seb Biass 2015-12-2
Hello all,
I've been thinking about that for a while, and it seems that there are a bit too many dimensions for my brain to figure out. I am working with atmospheric data downloaded from the ECMWF ERA-Interim website, which provides data at 37 pressure levels gridded to a max resolution of 0.25 degrees up to every 3 h. I would like to test the effect of interpolating variables of interest through space and time. So, I have my 4D space depending on lat, lon, altitude and time, and each of the variables (e.g. u and v components of wind, etc...) are 4D matrices of sizes (length(lon), length(lat), length(altitude), length(time)).
Where it gets tricky is that although lat, lon and time are given as regularly-spaced vectors, altitude (in m asl) is converted from geopotential heights (mbar), and is itself given as a 4D matrix varying with lon, lat and time.
So, how would you proceed to calculate the value of a given variable (let's call it UWIND) at given sets of lonq, latq, altq, timeq? If altitude had been a vector, I guess I could have done something like:
[LON, LAT, ALT, TIME] = ndgrid(lon, lat, altitude, time)
UWINDq = interpn(LON,LAT,ALT,TIME,UWIND,lonq,latq,altq,timeq)
Any suggestion of how I could achieve something like that?
Thanks a lot for your help!
S
  1 个评论
Marcus Buker
Marcus Buker 2020-6-8
I would do it in two steps...interpolate pressure to height, then interpolate the 3D data in time...

请先登录,再进行评论。

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Interpolation of 2-D Selections in 3-D Grids 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by