模式中为了防止海陆边界不连续造成积分不稳定,往往会将海温插值到陆地上,画图时当然不希望这些数据出现,求海温区域平均时也不希望出现,所以必须要处理下。
根据目的是画图还是计算,处理的方式不一样。画图的话,我们希望海陆边缘不要出现
比如这样就很好。其实不需对原数据进行操作,只要改变绘图的属性让地图底图后画就可以:
res@mpFillDrawOrder="PostDraw"
如果要进行计算,就需要mask了,如果是规整的1x1的数据可以用landsea_mask解决
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/shea_util.ncl"
a = addfile("$NCARG_ROOT/lib/ncarg/data/cdf/landsea.nc","r") lsdata = a->LSMASK lsm = landsea_mask(lsdata,data&lat,data&lon) data = mask(data,lsm.eq.1,False) data = mask(data,lsm.eq.3,False)
如果数据不是规整的1x1,需要先做一下插值处理,比如包含极点的场变量转换
var4 = f2fsh_Wrap(var4s1,(/180,360/))
Acrobat X安装后出现Adobe Application Manager损坏的问题,安装包下有个amtlib.dll的动态链接库,复制到安装路径的根目录下即可解决问题。至此,Acrobat+Illustrator已经占据paper reading & producing阵地,reading再有paperhub和endnote的助阵,终于把看文献的前期工作准备好了嗯~接下来……T_T
之前在天河二号(包括学校超算集群)测试的F05的CAM,都没有出现什么问题,最近在天河二号上重新跑CAM5 F05,却出现了out of memory的错误,重新配置了CAM4,还是一样的错误:
Fatal error in PMPI_Alltoallv: Other MPI error, error stack: PMPI_Alltoallv(540)....................: MPI_Alltoallv(sbuf=0x806f43e0, scnts=0xe6c75e0, sdispls=0xe764390, dtype=0x4c000829, rbuf=0x805f7650, rcnts=0xe765ba0, rdispls=0xe7673b0, dtype=0x4c000829, comm=0x84000006) failed MPIR_Alltoallv_impl(378)...............: MPIR_Alltoallv(341)....................: MPIR_Alltoallv_intra(192)..............: MPIC_Waitall(720)......................: MPIR_Waitall_impl(163).................: MPIDI_CH3I_Progress(363)...............: MPID_nem_mpich_blocking_recv(906)......: MPID_nem_glex_poll(234)................: MPIDI_nem_glex_ER_progress_PUT(74).....: MPIDI_nem_glex_ER_recv_progress(378)...: MPID_nem_handle_pkt(635)...............: MPIDI_CH3_PktHandler_EagerSend(640)....: failure occurred while posting a receive for message data (MPIDI_CH3_PKT_EAGER_SEND)
重新配置PE层,增多节点数,调整MPIBUFFER,都没用。目前搁置。forum上有贴子:
https://bb.cgd.ucar.edu/node/1001941
eaton提到检查内存leak can be a very challenging exercise.
#Up to 20141108#
俊文寒假前将model统一升级到1.2.2后似乎没有这个问题了。不过我也退出折腾高分辨率啦,还是看paper学英语重要~嘿嘿
#Up to 20150519#