Commit 79e0349a authored by Sabine's avatar Sabine
Browse files

Doing the fit for scavenging when using metfields with no clouds

parent 2bfec12f
...@@ -297,7 +297,11 @@ subroutine get_wetscav(itime,ltsample,loutnext,jpart,ks,grfraction,inc_count,blc ...@@ -297,7 +297,11 @@ subroutine get_wetscav(itime,ltsample,loutnext,jpart,ks,grfraction,inc_count,blc
cl=ctwc(ix,jy,n)*(grfraction(1)/cc) cl=ctwc(ix,jy,n)*(grfraction(1)/cc)
else !parameterize cloudwater m2/m3 else !parameterize cloudwater m2/m3
!ZHG updated parameterization of cloud water to better reproduce the values coming from ECMWF !ZHG updated parameterization of cloud water to better reproduce the values coming from ECMWF
cl=1.6E-6*prec(1)**0.36 ! sec test
! cl=1E6*1E-7*prec(1)**0.3 !Sec GFS new
cl=1E6*2E-7*prec(1)**0.36 !Sec ECMWF new
! cl=2E-7*prec(1)**0.36 !Andreas
! cl=1.6E-6*prec(1)**0.36 !Henrik
endif endif
!ZHG: Calculate the partition between liquid and water phase water. !ZHG: Calculate the partition between liquid and water phase water.
...@@ -317,6 +321,7 @@ subroutine get_wetscav(itime,ltsample,loutnext,jpart,ks,grfraction,inc_count,blc ...@@ -317,6 +321,7 @@ subroutine get_wetscav(itime,ltsample,loutnext,jpart,ks,grfraction,inc_count,blc
!******** !********
if (dquer(ks).gt.0.) then if (dquer(ks).gt.0.) then
S_i= frac_act/cl S_i= frac_act/cl
! write(*,*) 'Si: ',S_i
! GAS ! GAS
!**** !****
...@@ -333,7 +338,9 @@ subroutine get_wetscav(itime,ltsample,loutnext,jpart,ks,grfraction,inc_count,blc ...@@ -333,7 +338,9 @@ subroutine get_wetscav(itime,ltsample,loutnext,jpart,ks,grfraction,inc_count,blc
if ((readclouds.and.ngrid.eq.0).or.(readclouds_this_nest.and.ngrid.gt.0)) then if ((readclouds.and.ngrid.eq.0).or.(readclouds_this_nest.and.ngrid.gt.0)) then
wetscav=incloud_ratio*S_i*(prec(1)/3.6E6) wetscav=incloud_ratio*S_i*(prec(1)/3.6E6)
else else
wetscav=incloud_ratio*S_i*(prec(1)/3.6E6)/clouds_h !SEC wetscav fix
wetscav=incloud_ratio*S_i*(prec(1)/3.6E6)
! wetscav=incloud_ratio*S_i*(prec(1)/3.6E6)/clouds_h
endif endif
endif ! positive in-cloud scavenging parameters given in Species file endif ! positive in-cloud scavenging parameters given in Species file
endif !incloud endif !incloud
......
...@@ -147,12 +147,12 @@ module par_mod ...@@ -147,12 +147,12 @@ module par_mod
! ECMWF ! ECMWF
! integer,parameter :: nxmax=361,nymax=181,nuvzmax=92,nwzmax=92,nzmax=92,nxshift=359 ! 1.0 degree 92 level ! integer,parameter :: nxmax=361,nymax=181,nuvzmax=92,nwzmax=92,nzmax=92,nxshift=359 ! 1.0 degree 92 level
integer,parameter :: nxmax=361,nymax=181,nuvzmax=138,nwzmax=138,nzmax=138,nxshift=359 ! 1.0 degree 138 level ! integer,parameter :: nxmax=361,nymax=181,nuvzmax=138,nwzmax=138,nzmax=138,nxshift=359 ! 1.0 degree 138 level
! integer,parameter :: nxmax=721,nymax=361,nuvzmax=138,nwzmax=138,nzmax=138,nxshift=359 ! 0.5 degree 138 level ! integer,parameter :: nxmax=721,nymax=361,nuvzmax=138,nwzmax=138,nzmax=138,nxshift=359 ! 0.5 degree 138 level
! integer,parameter :: nxmax=181,nymax=91,nuvzmax=92,nwzmax=92,nzmax=92,nxshift=0 ! CERA 2.0 degree 92 level ! integer,parameter :: nxmax=181,nymax=91,nuvzmax=92,nwzmax=92,nzmax=92,nxshift=0 ! CERA 2.0 degree 92 level
! GFS ! GFS
! integer,parameter :: nxmax=361,nymax=181,nuvzmax=138,nwzmax=138,nzmax=138,nxshift=0 integer,parameter :: nxmax=361,nymax=181,nuvzmax=138,nwzmax=138,nzmax=138,nxshift=0
!********************************************* !*********************************************
......
...@@ -107,10 +107,11 @@ subroutine verttransform_ecmwf(n,uuh,vvh,wwh,pvh) ...@@ -107,10 +107,11 @@ subroutine verttransform_ecmwf(n,uuh,vvh,wwh,pvh)
!ZHG 2015 temporary variables for testing !ZHG 2015 temporary variables for testing
! real :: rcw(0:nxmax-1,0:nymax-1) ! real :: rcw(0:nxmax-1,0:nymax-1)
! real :: rpc(0:nxmax-1,0:nymax-1) ! real :: rpc(0:nxmax-1,0:nymax-1)
! character(len=60) :: zhgpath='/xnilu_wrk/flex_wrk/zhg/' character(len=60) :: zhgpath='/xnilu_wrk/users/sec/kleinprojekte/hertlfit/'
character(len=60) :: fnameH,fnameI,fnameJ
! character(len=60) :: fnameA,fnameB,fnameC,fnameD,fnameE,fnameF,fnameG,fnameH ! character(len=60) :: fnameA,fnameB,fnameC,fnameD,fnameE,fnameF,fnameG,fnameH
! CHARACTER(LEN=3) :: aspec CHARACTER(LEN=3) :: aspec
! integer :: virr=0 integer :: virr=0
!real :: tot_cloud_h !real :: tot_cloud_h
!real :: dbg_height(nzmax) !real :: dbg_height(nzmax)
!ZHG !ZHG
...@@ -731,8 +732,8 @@ subroutine verttransform_ecmwf(n,uuh,vvh,wwh,pvh) ...@@ -731,8 +732,8 @@ subroutine verttransform_ecmwf(n,uuh,vvh,wwh,pvh)
! WRITE OUT SOME TEST VARIABLES ! WRITE OUT SOME TEST VARIABLES
!********* TEST ************'** !********* TEST ************'**
!teller(:)=0 !teller(:)=0
!virr=virr+1 virr=virr+1
!WRITE(aspec, '(i3.3)'), virr WRITE(aspec, '(i3.3)'), virr
!if (readclouds) then !if (readclouds) then
!fnameH=trim(zhgpath)//trim(aspec)//'Vertical_placement.txt' !fnameH=trim(zhgpath)//trim(aspec)//'Vertical_placement.txt'
...@@ -769,29 +770,34 @@ subroutine verttransform_ecmwf(n,uuh,vvh,wwh,pvh) ...@@ -769,29 +770,34 @@ subroutine verttransform_ecmwf(n,uuh,vvh,wwh,pvh)
!fnameE=trim(zhgpath)//trim(aspec)//'old_cloudV.txt' !fnameE=trim(zhgpath)//trim(aspec)//'old_cloudV.txt'
!fnameF=trim(zhgpath)//trim(aspec)//'lsp.txt' !fnameF=trim(zhgpath)//trim(aspec)//'lsp.txt'
!fnameG=trim(zhgpath)//trim(aspec)//'convp.txt' !fnameG=trim(zhgpath)//trim(aspec)//'convp.txt'
if (1.eq.2) then
fnameH=trim(zhgpath)//trim(aspec)//'tcwc.txt'
fnameI=trim(zhgpath)//trim(aspec)//'prec.txt'
fnameJ=trim(zhgpath)//trim(aspec)//'cloudsh.txt'
write(*,*) 'Writing data to file: ',fnameH
!if (readclouds) then !if (readclouds) then
!OPEN(UNIT=111, FILE=fnameA,FORM='FORMATTED',STATUS = 'UNKNOWN') !OPEN(UNIT=111, FILE=fnameA,FORM='FORMATTED',STATUS = 'UNKNOWN')
!OPEN(UNIT=112, FILE=fnameB,FORM='FORMATTED',STATUS = 'UNKNOWN') !OPEN(UNIT=112, FILE=fnameB,FORM='FORMATTED',STATUS = 'UNKNOWN')
!OPEN(UNIT=113, FILE=fnameC,FORM='FORMATTED',STATUS = 'UNKNOWN') !OPEN(UNIT=113, FILE=fnameC,FORM='FORMATTED',STATUS = 'UNKNOWN')
!OPEN(UNIT=114, FILE=fnameD,FORM='FORMATTED',STATUS = 'UNKNOWN') !OPEN(UNIT=114, FILE=fnameD,FORM='FORMATTED',STATUS = 'UNKNOWN')
!else !else
!OPEN(UNIT=115, FILE=fnameE,FORM='FORMATTED',STATUS = 'UNKNOWN') OPEN(UNIT=115, FILE=fnameH,FORM='FORMATTED',STATUS = 'UNKNOWN')
!OPEN(UNIT=116, FILE=fnameF,FORM='FORMATTED',STATUS = 'UNKNOWN') OPEN(UNIT=116, FILE=fnameI,FORM='FORMATTED',STATUS = 'UNKNOWN')
!OPEN(UNIT=117, FILE=fnameG,FORM='FORMATTED',STATUS = 'UNKNOWN') OPEN(UNIT=117, FILE=fnameJ,FORM='FORMATTED',STATUS = 'UNKNOWN')
!endif !endif
! !
!do ix=0,nxmin1 do ix=0,nxmin1
!if (readclouds) then !if (readclouds) then
!write(111,*) (icloud_stats(ix,jy,1,n),jy=0,nymin1) !write(111,*) (icloud_stats(ix,jy,1,n),jy=0,nymin1)
!write(112,*) (icloud_stats(ix,jy,2,n),jy=0,nymin1) !write(112,*) (icloud_stats(ix,jy,2,n),jy=0,nymin1)
!write(113,*) (icloud_stats(ix,jy,3,n),jy=0,nymin1) !write(113,*) (icloud_stats(ix,jy,3,n),jy=0,nymin1)
!write(114,*) (icloud_stats(ix,jy,4,n),jy=0,nymin1) !write(114,*) (icloud_stats(ix,jy,4,n),jy=0,nymin1)
!else !else
!write(115,*) (cloudsh(ix,jy,n),jy=0,nymin1) !integer write(115,*) (ctwc(ix,jy,n),jy=0,nymin1)
!write(116,*) (lsprec(ix,jy,1,n),jy=0,nymin1) !7.83691406E-02 write(116,*) (lsprec(ix,jy,1,n)+convprec(ix,jy,1,n),jy=0,nymin1)
!write(117,*) (convprec(ix,jy,1,n),jy=0,nymin1) !5.38330078E-02 write(117,*) (cloudsh(ix,jy,n),jy=0,nymin1)
!endif !endif
!end do end do
! !
!if (readclouds) then !if (readclouds) then
!CLOSE(111) !CLOSE(111)
...@@ -799,9 +805,10 @@ subroutine verttransform_ecmwf(n,uuh,vvh,wwh,pvh) ...@@ -799,9 +805,10 @@ subroutine verttransform_ecmwf(n,uuh,vvh,wwh,pvh)
!CLOSE(113) !CLOSE(113)
!CLOSE(114) !CLOSE(114)
!else !else
!CLOSE(115) CLOSE(115)
!CLOSE(116) CLOSE(116)
!CLOSE(117) CLOSE(117)
endif
!endif !endif
! !
!END ********* TEST *************** END !END ********* TEST *************** END
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment