85 ( tpind,tpnam,tpdom,pfield,pcumdia,pwgt )
90 USE modi_gltools_strlower
91 USE modi_gltools_wriios
93 USE modi_gltools_avevai
98 TYPE(t_ind),
INTENT(inout) :: &
100 TYPE(t_def),
INTENT(in) :: &
102 TYPE(t_dom),
DIMENSION(nx,ny),
INTENT(in) :: &
104 REAL,
DIMENSION(:,:),
INTENT(inout) :: &
106 REAL,
DIMENSION(:,:,:),
INTENT(inout) :: &
108 REAL,
DIMENSION(:,:),
OPTIONAL,
INTENT(inout) :: &
115 CHARACTER(80),
PARAMETER :: &
118 ix,iy,ixc,iyc,ixw,iyw
119 INTEGER,
DIMENSION(nx,ny) :: &
126 yis0d = ( ix==1 .AND. iy==1 )
127 yis2d = ( ix==nx .AND. iy==ny )
129 IF ( trim(cdiafmt)==
'GELATO' .OR. trim(cdiafmt)==
'VMAR5' .OR. &
130 trim(cdiafmt)==
'XIOS' )
THEN
132 IF ( tpind%cur==tpind%beg )
THEN
133 IF ( trim(cdiafmt)==
'GELATO' .OR. trim(cdiafmt)==
'VMAR5' )
THEN
136 IF(lp1)
WRITE(noutlu,1000) tpnam%sna,trim(tpnam%lna), &
140 ixc =
SIZE( pcumdia,2 )
141 iyc =
SIZE( pcumdia,3 )
142 IF ( ix/=ixc .OR. iy/=iyc )
THEN
144 WRITE(noutlu,*)
'==> Writing field '//trim(tpnam%sna)//
':'
145 WRITE(noutlu,*)
'==> Input field size=',ix,iy
147 '==> not conformable with ndiamax space size=',ixc,iyc
148 WRITE(noutlu,*)
'==> We stop.'
156 IF ( present(pwgt) )
THEN
159 IF ( ix/=ixw .OR. iy/=iyw )
THEN
161 WRITE(noutlu,*)
'==> Writing field '//trim(tpnam%sna)//
':'
162 WRITE(noutlu,*)
'==> Input field size=',ix,iy
164 '==> not conformable with weights size=',ixw,iyw
165 WRITE(noutlu,*)
'==> We stop.'
173 SELECT CASE( trim(tpnam%loc) )
174 CASE(
'T') ; imsk(:,:) = tpdom(:,:)%tmk
175 CASE(
'U') ; imsk(:,:) = tpdom(:,:)%umk
176 CASE(
'V') ; imsk(:,:) = tpdom(:,:)%vmk
178 WHERE( imsk(:,:)==0 )
184 IF ( trim(cdiafmt)==
'GELATO' .OR. trim(cdiafmt)==
'VMAR5' )
THEN
185 IF ( ninsdia==1 )
THEN
186 IF ( any( cinsfld(:)==yall ) .OR. &
187 any( cinsfld(:)==tpnam%sna ) .OR. &
198 1000
FORMAT(3x,a20,
" ; ",a,
" ; ",a1,
" ; ",a,
" ; ",a)