38 USE modi_init_io_surf_n
40 USE modi_end_io_surf_n
42 USE modi_write_diag_nature_n
43 USE modi_write_diag_sea_n
44 USE modi_write_diag_inland_water_n
45 USE modi_write_diag_town_n
47 USE modi_write_diag_seb_surf_atm_n
49 USE modi_write_diag_ch_aggr_n
50 USE modi_write_diag_ch_snap_n
61 CHARACTER(LEN=6),
INTENT(IN) :: HPROGRAM
62 CHARACTER(LEN=3),
INTENT(IN) :: HWRITE
68 CHARACTER(LEN=100) :: YCOMMENT
70 REAL(KIND=JPRB) :: ZHOOK_HANDLE
73 IF (
lhook)
CALL dr_hook(
'WRITE_DIAG_SURF_ATM_N',0,zhook_handle)
77 IF (ysc%U%NDIM_SEA >0)
CALL write_diag_sea_n(ysc%DTCO, ysc%DUO, ysc%U, ysc%SM, &
80 ysc%WM, ysc%FM, hprogram,hwrite)
82 ysc%NDST, hprogram,hwrite)
83 IF (ysc%U%NDIM_TOWN >0)
CALL write_diag_town_n(ysc%DTCO, ysc%DUO%CSELECT, ysc%U, ysc%TM, &
84 ysc%GDM, ysc%GRM, hprogram,hwrite)
90 IF (ysc%DUO%XDIAG_TSTEP==
xundef .OR. &
91 abs(nint(ysc%U%TTIME%TIME/ysc%DUO%XDIAG_TSTEP)*ysc%DUO%XDIAG_TSTEP-ysc%U%TTIME%TIME)<1.e-3 )
THEN 93 IF (ysc%DUO%LFRAC)
THEN 94 CALL init_io_surf_n(ysc%DTCO, ysc%U, hprogram,
'FULL ',
'SURF ',
'WRITE',
'SURF_ATM.OUT.nc')
95 ycomment =
'(fraction)' 96 CALL write_surf(ysc%DUO%CSELECT,hprogram,
'FRAC_SEA ',ysc%U%XSEA, iresp,hcomment=ycomment)
97 CALL write_surf(ysc%DUO%CSELECT,hprogram,
'FRAC_NATURE',ysc%U%XNATURE,iresp,hcomment=ycomment)
98 CALL write_surf(ysc%DUO%CSELECT,hprogram,
'FRAC_WATER ',ysc%U%XWATER, iresp,hcomment=ycomment)
99 CALL write_surf(ysc%DUO%CSELECT,hprogram,
'FRAC_TOWN ',ysc%U%XTOWN, iresp,hcomment=ycomment)
103 IF (hwrite/=
'PGD'.AND.ysc%DUO%LDIAG_GRID) &
105 ysc%UG%G%CGRID, hprogram)
107 IF (ysc%CHU%LCH_EMIS .AND. ysc%SV%NBEQ>0 .AND. ysc%CHU%LCH_SURF_EMIS)
THEN 108 IF (ysc%CHU%CCH_EMIS==
'AGGR')
THEN 110 ELSE IF (ysc%CHU%CCH_EMIS==
'SNAP')
THEN 117 IF (
lhook)
CALL dr_hook(
'WRITE_DIAG_SURF_ATM_N',1,zhook_handle)
subroutine write_diag_nature_n(DTCO, DUO, U, IM, NDST, HPROGRAM, HWRITE)
subroutine write_diag_seb_surf_atm_n(DTCO, DGO, D, DC, U, HGRID,
subroutine write_diag_ch_snap_n(DTCO, HSELECT, U, CHN, HPROGRAM)
subroutine write_diag_inland_water_n(DTCO, DUO, U, WM, FM, HPROGRAM, HWRITE)
subroutine write_diag_ch_aggr_n(DTCO, HSELECT, U, CHE, HPROGRAM)
subroutine write_diag_surf_atm_n(YSC, HPROGRAM, HWRITE)
character(len=6) cprogname
subroutine write_diag_sea_n(DTCO, DUO, U, SM, HPROGRAM, HWRITE)
subroutine end_io_surf_n(HPROGRAM)
subroutine init_io_surf_n(DTCO, U, HPROGRAM, HMASK, HSCHEME, HACTION
subroutine write_diag_town_n(DTCO, HSELECT, U, TM, GDM, GRM, HPROGRAM, HWRITE)