61 USE yomhook
,ONLY : lhook, dr_hook
62 USE parkind1
,ONLY : jprb
79 CHARACTER(LEN=6),
INTENT(IN) :: hprogram
80 INTEGER,
INTENT(IN) :: ksize
81 CHARACTER(LEN=1),
OPTIONAL,
INTENT(IN) :: hdir
89 REAL,
DIMENSION(:,:),
ALLOCATABLE :: zdata_sst
90 CHARACTER(LEN=12) :: yrecfm
91 CHARACTER(LEN=100):: ycomment
92 CHARACTER(LEN=1) :: ydir
96 INTEGER :: iversion, ibugfix
97 REAL(KIND=JPRB) :: zhook_handle
100 IF (lhook) CALL dr_hook(
'READ_PGD_SEAFLUX_PAR_N',0,zhook_handle)
105 IF (present(hdir)) ydir = hdir
109 hprogram,yrecfm,iversion,iresp)
113 hprogram,yrecfm,ibugfix,iresp)
115 IF (iversion<4 .OR. iversion==4 .AND. ibugfix<=4 .OR. &
116 iversion>5 .OR. iversion==5 .AND. ibugfix>=1)
THEN
119 yrecfm=
'NDATA_SEA_TIME'
122 hprogram,yrecfm,dts%NTIME,iresp,hcomment=ycomment)
124 ALLOCATE(zdata_sst(ksize,dts%NTIME))
127 IF (iversion>5 .OR. iversion==5 .AND. ibugfix>=1)
THEN
128 WRITE(yrecfm,fmt=
'(A7,I3.3)')
'D_SST_T',jtime
129 ELSEIF (iversion<4 .OR. iversion==4 .AND. ibugfix<=4)
THEN
130 WRITE(yrecfm,fmt=
'(A9,I3.3)')
'DATA_SST_',jtime
132 WRITE(yrecfm,fmt=
'(A10,I3.3)')
'DATA_SST_T',jtime
136 hprogram,yrecfm,zdata_sst(:,jtime),iresp,&
137 hcomment=ycomment,hdir=ydir)
141 ALLOCATE(dts%XDATA_SST(sg%NDIM,dts%NTIME))
142 IF (sg%NDIM/=ksize)
THEN
146 iluout,zdata_sst(:,jtime:jtime),dts%XDATA_SST(:,jtime:jtime))
148 DEALLOCATE(zdata_sst)
150 dts%XDATA_SST(:,:) = zdata_sst(:,:)
153 ALLOCATE(dts%TDATA_SST (dts%NTIME))
155 IF (iversion<4 .OR. iversion==4 .AND. ibugfix<=4)
THEN
157 WRITE(yrecfm,fmt=
'(A7,I3.3)')
'DTA_SST',jtime
160 hprogram,yrecfm,dts%TDATA_SST,iresp,hcomment=ycomment)
163 IF (iversion>7 .OR. iversion==7 .AND. ibugfix>=3)
THEN
170 hprogram,yrecfm,dts%TDATA_SST,iresp,hcomment=ycomment)
173 IF (lhook) CALL dr_hook(
'READ_PGD_SEAFLUX_PAR_N',1,zhook_handle)
subroutine hor_interpol(DTCO, U, KLUOUT, PFIELDIN, PFIELDOUT)
subroutine read_pgd_seaflux_par_n(DTCO, U, DTS, SG, HPROGRAM, KSIZE, HDIR)
subroutine get_luout(HPROGRAM, KLUOUT)