subroutine sfccycle | ( | integer | lugb, |
integer | len, | ||
integer | lsoil, | ||
real (kind=kind_io8), dimension(len) | sig1t, | ||
real (kind=kind_io8) | deltsfc, | ||
integer | iy, | ||
integer | im, | ||
integer | id, | ||
integer | ih, | ||
real (kind=kind_io8) | fh, | ||
real (kind=kind_io8), dimension(len) | rla, | ||
real (kind=kind_io8), dimension(len) | rlo, | ||
real (kind=kind_io8), dimension(len) | slmask, | ||
real (kind=kind_io8), dimension(len) | orog, | ||
real (kind=kind_io8), dimension(len) | orog_uf, | ||
logical, intent(in) | use_ufo, | ||
logical, intent(in) | nst_anl, | ||
real (kind=kind_io8), dimension(len) | sihfcs, | ||
real (kind=kind_io8), dimension(len) | sicfcs, | ||
real (kind=kind_io8), dimension(len) | sitfcs, | ||
real (kind=kind_io8), dimension(len) | swdfcs, | ||
real (kind=kind_io8), dimension(len,lsoil) | slcfcs, | ||
real (kind=kind_io8), dimension(len) | vmnfcs, | ||
real (kind=kind_io8), dimension(len) | vmxfcs, | ||
real (kind=kind_io8), dimension(len) | slpfcs, | ||
real (kind=kind_io8), dimension(len) | absfcs, | ||
real (kind=kind_io8), dimension(len) | tsffcs, | ||
real (kind=kind_io8), dimension(len) | snofcs, | ||
real (kind=kind_io8), dimension(len) | zorfcs, | ||
real (kind=kind_io8), dimension(len,4) | albfcs, | ||
real (kind=kind_io8), dimension(len) | tg3fcs, | ||
real (kind=kind_io8), dimension(len) | cnpfcs, | ||
real (kind=kind_io8), dimension(len,lsoil) | smcfcs, | ||
real (kind=kind_io8), dimension(len,lsoil) | stcfcs, | ||
real (kind=kind_io8), dimension(len) | slifcs, | ||
real (kind=kind_io8), dimension(len) | aisfcs, | ||
real (kind=kind_io8), dimension(len) | vegfcs, | ||
real (kind=kind_io8), dimension(len) | vetfcs, | ||
real (kind=kind_io8), dimension(len) | sotfcs, | ||
real (kind=kind_io8), dimension(len,2) | alffcs, | ||
real (kind=kind_io8), dimension (len) | cvfcs, | ||
real (kind=kind_io8), dimension(len) | cvbfcs, | ||
real (kind=kind_io8), dimension(len) | cvtfcs, | ||
integer | me, | ||
integer | nlunit, | ||
integer | sz_nml, | ||
character(len=*), dimension(sz_nml), intent(in) | input_nml_file, | ||
logical, dimension(len), intent(in) | lake, | ||
real (kind=kind_io8), intent(in) | min_lakeice, | ||
real (kind=kind_io8), intent(in) | min_seaice, | ||
integer | ialb, | ||
integer | isot, | ||
integer | ivegsrc, | ||
character(len=*), intent(in) | tile_num_ch, | ||
integer, dimension(len), intent(in) | i_index, | ||
integer, dimension(len), intent(in) | j_index | ||
) |
This is a limited point version of surface program.
this program runs in two different modes:
analysis mode (fh=0.)
this program merges climatology, analysis and forecast guess to create new surface fields. if analysis file is given, the program uses it if date of the analysis matches with iy,im,id,ih (see note below).
forecast mode (fh.gt.0.)
this program interpolates climatology to the date corresponding to the forecast hour. if surface analysis file is given, for the corresponding dates, the program will use it.
use of a combined earlier surface analyses and current analysis is not allowed (as was done in the old version for snow analysis in which old snow analysis is used in combination with initial guess), except for sea surface temperature. for sst anolmaly interpolation, you need to set lanom=.true. and must provide sst analysis at initial time.
if you want to do complex merging of past and present surface field analysis, you need to create a separate file that contains daily surface field.
for a dead start, do not supply fnbgsi or set fnbgsi=' '
References albocn(), analy(), anomint(), clima(), filanl(), filfcs(), fixrdc(), getscv(), getsmc(), getstc(), hmskrd(), sfccyc_module::kpdais, sfccyc_module::kpdalb_0, sfccyc_module::kpdalb_1, sfccyc_module::kpdalf, sfccyc_module::kpdgla, sfccyc_module::kpdsno, sfccyc_module::kpdtg3, sfccyc_module::kpdtsf, sfccyc_module::kpdwet, sfccyc_module::kpdzor, landtyp(), merge(), monitr(), newice(), qcbyfc(), qcmxice(), qcmxmn(), qcsice(), qcsli(), qcsnow(), rof01(), rof01_len(), scale(), setlsi(), setzro(), snodpth(), snodpth2(), snosfc(), sfccyc_module::soil_type_landice, tsfcor(), usesgt(), and sfccyc_module::veg_type_landice.
Referenced by gcycle().