I have a flowfield that has u,v,w velocities. Each of them are 3D arrays - say 480 x 480 x 60. I know that we can do an asymmetric Gaussian filtering in 3D in the following manner:
sigma = [10, 5, 3];
u_filt = imgaussfilt3(u,sigma);
The problem that I am facing is that my grid is non-unform. That is while my dx = dy = 1km, my dz changes as a function of height. How do I modify the imgaussfilt3 such that the sigma_z is a function of z? One way is to call the imgaussfilt 60 times (that is the size of z) but that would be very inefficient. Is there an alternative solution?