Added desert planet mode. Also made the soil heat capacity visible to landmod_namelist.
This commit is contained in:
1 parent
494510567a
commit
3b5589255f
4 files changed
+31
-4
No files matched your search
@@ -136,7 +136,7 @@
|
||||
& ,albgmin,albgmax,nwetsoil &
|
||||
& ,dsmax,wsmax,drhsfull,dzglac,dztop,dsoilz &
|
||||
& ,rlue,co2conv,tau_veg,tau_soil &
|
||||
& ,rnbiocats,nwetsoil &
|
||||
& ,rnbiocats,nwetsoil,soilcap &
|
||||
& ,newsurf,rinifor,nwatcini,dwatcini
|
||||
!
|
||||
dtclsoil(:) = tmelt
|
||||
@@ -154,6 +154,11 @@
|
||||
! dsnowt(:) = tmelt_CO2
|
||||
endif
|
||||
|
||||
if (ndesert == 1 .and. nrestart == 0) then
|
||||
dwatcini = 0.0
|
||||
dwater(:) = 0.0
|
||||
endif
|
||||
|
||||
if (mypid == NROOT) then
|
||||
open(12,file=landmod_namelist)
|
||||
read(12,landmod_nl)
|
||||
|
||||
+12
-2
@@ -208,6 +208,7 @@ plasimversion = "https://github.com/Edilbert/PLASIM/ : 15-Dec-2015"
|
||||
|
||||
call mpbci(kick ) ! add noise for kick > 0
|
||||
call mpbci(naqua ) ! aqua planet switch
|
||||
call mpbci(ndesert ) ! desert planet switch
|
||||
call mpbci(nveg ) ! vegetation switch
|
||||
call mpbci(noutput ) ! write data switch
|
||||
call mpbci(nafter ) ! write data interval
|
||||
@@ -974,7 +975,7 @@ plasimversion = "https://github.com/Edilbert/PLASIM/ : 15-Dec-2015"
|
||||
namelist /plasim_nl/ &
|
||||
kick , mpstep , nadv , naqua , ncoeff &
|
||||
, ndel , ndheat , ndiag , ndiagcf , ndiaggp &
|
||||
, ndiaggp2d , ndiaggp3d &
|
||||
, ndiaggp2d , ndiaggp3d , ndesert &
|
||||
, ndiagsp , ndiagsp2d , ndiagsp3d &
|
||||
, ndl , nentropy, nentro3d, neqsig , nflux &
|
||||
, ngui , nguidbg , nhdiff , nhordif , nkits &
|
||||
@@ -1017,11 +1018,20 @@ plasimversion = "https://github.com/Edilbert/PLASIM/ : 15-Dec-2015"
|
||||
open(11,file=plasim_namelist,form='formatted')
|
||||
read (11,plasim_nl)
|
||||
|
||||
! aqua planet settings
|
||||
if ((ndesert == 1) .and. (naqua == 1)) then !If both toggled, turn off both
|
||||
naqua = 0
|
||||
ndesert = 0
|
||||
endif
|
||||
|
||||
|
||||
! aqua planet settings
|
||||
if (naqua == 1) then
|
||||
nveg = 0 ! switch off vegetation
|
||||
endif
|
||||
|
||||
! We won't turn off vegetation for the desert planet, figuring that interested parties
|
||||
! might appreciate having the vegetation naturally respond to low moisture.
|
||||
|
||||
|
||||
! set rotation dependent variables
|
||||
|
||||
|
||||
@@ -154,6 +154,7 @@
|
||||
integer :: noutput = 1 ! master switch for output: 0=no output
|
||||
integer :: nafter = 0 ! write data interval: 0 = once per day
|
||||
integer :: naqua = 0 ! 1: switch to aqua planet mode
|
||||
integer :: ndesert = 0 ! 1: switch to desert planet mode
|
||||
integer :: nveg = 1 ! 1: run vegetation module
|
||||
integer :: ncoeff = 0 ! number of modes to print
|
||||
integer :: ndiag = 0 ! write diagnostics interval 0 = every 10th. day
|
||||
|
||||
+12
-1
@@ -371,8 +371,19 @@
|
||||
sp(:) = 0.0 ! spectral pressure
|
||||
spm(:) = 0.0 ! spectral pressure scattered
|
||||
endif
|
||||
|
||||
! Desert planet settings
|
||||
|
||||
if (nrestart == 0 .and. naqua == 0) then ! need to read start data
|
||||
if (nrestart == 0 .and. ndesert /= 0) then
|
||||
n_sea_points = 0 ! No gridpoints are water
|
||||
dls(:) = 1.0 ! land/sea mask ro water
|
||||
doro(:) = 0.0 ! gridpoint orography (flat)
|
||||
so(:) = 0.0 ! spectral orography
|
||||
sp(:) = 0.0 ! spectral pressure
|
||||
spm(:) = 0.0 ! spectral pressure scattered
|
||||
endif
|
||||
|
||||
if (nrestart == 0 .and. naqua == 0 .and. ndesert == 0) then ! need to read start data
|
||||
call mpsurfgp('doro',doro,NHOR,1)
|
||||
call mpsurfgp('dls' ,dls ,NHOR,1)
|
||||
if (npro == 1) then ! print only in single core runs
|
||||
|
||||
Reference in new issue
Block a user