登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
这里的“有条件”,指的是对于风矢量和大小的判断,例如你输出的风矢量大小参差不齐,难以设置标尺,这时你可以设置矢量和小于某一定值的风矢量不画,但通过grads不好对矢量大小做出筛选,我也是在论坛发帖得到@lsd1984 这位同仁的启发,有人希望能把东西分享出来,我就贴出来跟大家交流一下,其实很简单。
parameter(nx=144,ny=73,n=25,undef=-9.99e+02)
dimension u1(nx,ny,n),u2(nx,ny,n),v1(nx,ny,n),v2(nx,ny,n)
real s
open(2,file='E:\lww\rxg_res\sst_uv_precip\res_u2.grd',form='binary')
read(2) (((u1(i,j,it),i=1,nx),j=1,ny),it=1,n)
close(2)
open(1,file='E:\lww\rxg_res\sst_uv_precip\res_v2.grd',form='binary')
read(1) (((v1(i,j,it),i=1,nx),j=1,ny),it=1,n)
close(1)
do i=1,nx
do j=1,ny
do it=1,n
s=0.0
s=sqrt(u1(i,j,it)*u1(i,j,it)+v1(i,j,it)*v1(i,j,it))
!write(*,*) s
if(s.lt.0.2) then
u2(i,j,it)=-999
v2(i,j,it)=-999
else
u2(i,j,it)=u1(i,j,it)
v2(i,j,it)=v1(i,j,it)
endif
enddo;enddo;enddo
open (4,file='E:\lww\rxg_res\sst_uv_precip\res_u22.grd',form='binary')
write (4) (((u2(i,j,it),i=1,nx),j=1,ny),it=1,n)
open (5,file='E:\lww\rxg_res\sst_uv_precip\res_v22.grd',form='binary')
write (5) (((v2(i,j,it),i=1,nx),j=1,ny),it=1,n)
end
就用这个fortran实现的 之后你不想要的部分就成了缺测值,不会在图中显示。我给出张图给大家看看效果,大家只看风矢量图里我还叠加了海温及降水。
|