云量的计算和在cesm模式中实现
今天我将云量计算加入了cesm
云量的计算方法,这是从我的论文里截图
这是绘制的相对湿度和云量的关系图。
云主要和相对湿度有关,当相对湿度大于一定阈值时候就容易产生云。
当然也和大气的稳定不稳定有关,稳定条件和不稳定条件下的云量计算是遵守不同的计算规律的。
实现代码
subroutine yunliang(ncol,obklen , rh , n_l)
integer,intent(in) :: ncol
real(r8),intent(in) :: rh(ncol)
real(r8),intent(in) :: obklen(ncol)
integer :: i
real(r8) :: n_l_stable(ncol)
real(r8) :: n_l_unstable(ncol)
real(r8),intent(out) :: n_l(ncol)
!stable
do i = 1, ncol
if(rh(i)>= 80_r8 )then
n_l_stable(i) = ((rh(i) - 80_r8)**2_r8) / 4_r8
else if(rh(i)<80_r8)then
n_l_stable(i) = 0_r8
end if
end do
!unstable
do i = 1,ncol
if(rh(i)>=57_r8 )then
n_l_unstable(i) =-0.74_r8 + -1.257_r8*rh(i) + 0.022644_r8*rh(i)*rh(i)
else if (rh(i)<57_r8)then
n_l_unstable(i) = 0_r8
end if
end do
!panduan
do i = 1 , ncol
if(obklen(i)>=0_r8) then
n_l(i) = n_l_stable(i)
else if( obklen(i)< 0_r8 )then
n_l(i) = n_l_unstable(i)
end if
end do
end subroutine yunliang
然后根据之前的添加输出变量的方法,将n_l输出出来,
运行5天先实验一下得出结果。
ncl画图程序
begin
b = addfile("FHIST_SH.cam.h1.2000-01-01-00000.nc","r")
n_l = b->n_l
do i = 1,20
filename = "xunhuan_cloud"+i
wks = gsn_open_wks("png",filename)
res = True ; plot mods desired
res@mpFillOn = False ; turn off gray continents
res@cnFillOn = True ; turn on color fill
res@cnFillPalette = "WhiteBlue" ; set color map
res@cnLevelSelectionMode ="ManualLevels"
res@cnMaxLevelValF =110
res@cnMinLevelValF =0
res@cnLevelSpacingF =5
plot = gsn_csm_contour_map(wks,n_l(i,:,:), res); create plot
end do
end
结果 2000年1月1日00时全球云量
Blue20210910: .gitconfig 这个文件是在哪呀?
mayubins: 图片里面很多点,对第一个点标注
2301_76554853: 请问legend后面为什么都要加(1)呀,legend([h1(1),h2(1),h3(1)]
mayubins: 这个我没权限呀,不是我的版权
Cassiee__: 想求一个你们上课的ppt!