55 USE modi_get_type_dim_n
57 USE yomhook
,ONLY : lhook, dr_hook
58 USE parkind1
,ONLY : jprb
67 TYPE(flake_t),
INTENT(INOUT) :: f
71 CHARACTER(LEN=6),
INTENT(IN) :: hprogram
77 CHARACTER(LEN=12) :: yrecfm
78 CHARACTER(LEN=3) :: yread
82 INTEGER :: iversion, ibugfix
83 REAL(KIND=JPRB) :: zhook_handle
89 IF (lhook) CALL dr_hook(
'READ_FLAKE_SBL_N',0,zhook_handle)
95 hprogram,yrecfm,iversion,iresp)
99 hprogram,yrecfm,ibugfix,iresp)
105 hprogram,yrecfm,f%LSBL,iresp)
107 IF (.NOT.f%LSBL)
THEN
108 ALLOCATE(fsb%XZ (0,0))
109 ALLOCATE(fsb%XU (0,0))
110 ALLOCATE(fsb%XT (0,0))
111 ALLOCATE(fsb%XQ (0,0))
112 ALLOCATE(fsb%XTKE(0,0))
113 ALLOCATE(fsb%XLMO(0) )
114 ALLOCATE(fsb%XP (0,0))
115 ALLOCATE(fsb%XDZ (0,0))
116 ALLOCATE(fsb%XZF (0,0))
117 ALLOCATE(fsb%XDZF(0,0))
118 IF (lhook) CALL dr_hook(
'READ_SEAFLUX_SBL_N',1,zhook_handle)
126 hprogram,yrecfm,fsb%NLVL,iresp)
133 ALLOCATE(fsb%XZ(ilu,fsb%NLVL))
136 WRITE(yrecfm,
'(A9,I2.2,A1)')
'WAT_SBL_Z',jlayer,
' '
138 hprogram,yrecfm,fsb%XZ(:,jlayer),iresp)
141 ALLOCATE(fsb%XU (ilu,fsb%NLVL))
142 ALLOCATE(fsb%XT (ilu,fsb%NLVL))
143 ALLOCATE(fsb%XQ (ilu,fsb%NLVL))
144 ALLOCATE(fsb%XTKE(ilu,fsb%NLVL))
145 ALLOCATE(fsb%XLMO(ilu) )
146 ALLOCATE(fsb%XP (ilu,fsb%NLVL))
148 IF (iversion>7 .OR. iversion==7 .AND.ibugfix>=2)
THEN
151 hprogram,yrecfm,yread,iresp)
156 IF(yread==
'ALL')
THEN
160 WRITE(yrecfm,
'(A9,I2.2,A1)')
'WAT_SBL_U',jlayer,
' '
162 hprogram,yrecfm,fsb%XU(:,jlayer),iresp)
167 WRITE(yrecfm,
'(A9,I2.2,A1)')
'WAT_SBL_T',jlayer,
' '
169 hprogram,yrecfm,fsb%XT(:,jlayer),iresp)
174 WRITE(yrecfm,
'(A9,I2.2,A1)')
'WAT_SBL_Q',jlayer,
' '
176 hprogram,yrecfm,fsb%XQ(:,jlayer),iresp)
181 WRITE(yrecfm,
'(A9,I2.2,A1)')
'WAT_SBL_E',jlayer,
' '
183 hprogram,yrecfm,fsb%XTKE(:,jlayer),iresp)
187 yrecfm=
'WAT_SBL_LMO '
189 hprogram,yrecfm,fsb%XLMO(:),iresp)
193 WRITE(yrecfm,
'(A9,I2.2,A1)')
'WAT_SBL_P',jlayer,
' '
195 hprogram,yrecfm,fsb%XP(:,jlayer),iresp)
199 fsb%XU (:,:) = xundef
200 fsb%XT (:,:) = xundef
201 fsb%XQ (:,:) = xundef
202 fsb%XTKE(:,:) = xundef
204 fsb%XP (:,:) = xundef
224 ALLOCATE(fsb%XDZ (ilu,fsb%NLVL))
225 ALLOCATE(fsb%XZF (ilu,fsb%NLVL))
226 ALLOCATE(fsb%XDZF(ilu,fsb%NLVL))
227 CALL
canopy_grid(ilu,fsb%NLVL,fsb%XZ,fsb%XZF,fsb%XDZ,fsb%XDZF)
229 IF (lhook) CALL dr_hook(
'READ_FLAKE_SBL_N',1,zhook_handle)
subroutine get_type_dim_n(DTCO, U, HTYPE, KDIM)
subroutine read_flake_sbl_n(DTCO, U, F, FSB, HPROGRAM)
subroutine canopy_grid(KI, KLVL, PZ, PZF, PDZ, PDZF)