4 & (lfi, krep, krang, krec, kzone, &
30 INTEGER (KIND=JPLIKB) KZONE (lfi%jplarx)
31 INTEGER (KIND=JPLIKB) KREP, KRANG, KREC, KRETIN
32 INTEGER (KIND=JPLIKB) INADJA (2), IPOSAD (lfi%jpnpdf)
33 INTEGER (KIND=JPLIKB) IMDESC, INUMER, INPPIM, JREC
34 INTEGER (KIND=JPLIKB) IPODPI, IFACTM, ILARPH, INALPP
35 INTEGER (KIND=JPLIKB) INBPIR, INDIK1, INDIK2, J
36 INTEGER (KIND=JPLIKB) INDIC1, INDIC2, INUMPD, INAPHY
37 INTEGER (KIND=JPLIKB) IJ, IRGPIM, IRGPIF, IDEBSE
38 INTEGER (KIND=JPLIKB) INDIS1, INDIS2, JSENS, ISENS
39 INTEGER (KIND=JPLIKB) IREC, INUMAP, IRECX, INIMES
40 INTEGER (KIND=JPLIKB) IRETOU, IRETIN
42 LOGICAL LDADON, LLSAUT, LLFILT, LLLOIN
44 CHARACTER(LEN=LFI%JPLSPX) CLNSPR
45 CHARACTER(LEN=LFI%JPLMES) CLMESS
46 CHARACTER(LEN=LFI%JPLFTX) CLACTI
53 REAL(KIND=JPRB) :: ZHOOK_HANDLE
56 IF (krang.LE.0.OR.krang.GT.lfi%JPNXFI)
THEN 59 inumer=lfi%NUMERO(krang)
64 IF (inumer.EQ.lfi%JPNIL)
THEN 71 inppim=lfi%NPPIMM(krang)
72 ipodpi=lfi%NPODPI(krang)
73 ifactm=lfi%MFACTM(krang)
74 ilarph=lfi%JPLARD*ifactm
75 inalpp=lfi%JPNAPP*ifactm
76 inbpir=lfi%MDES1D(ixm(lfi%JPNPIR,krang))
77 llloin=krec.GT.lfi%MDES1D(ixm(lfi%JPNAPH,krang))
92 DO jrec=lfi%MDES1D(ixm(lfi%JPNAPH,krang))+1,krec-1
103 inumpd=mod(lfi%NDERPD(krang)+j,lfi%JPNPDF)
105 IF (lfi%NUMAPD(inumpd,krang).EQ.jrec)
THEN 106 IF (j.EQ.indik1) indik1=indik1+1
107 IF (j.EQ.indik2) indik2=indik2-1
108 IF (lfi%LMISOP)
WRITE (unit=lfi%NULOUT,fmt=*) &
109 &
'$$$ LFIECX - INUMPD= ',inumpd, &
110 &
', INDIK1= ', indik1,
', INDIK2= ',indik2,
' $$$' 116 IF (.NOT.lfi%LECRPD(inumpd,krang) &
117 & .OR.lfi%NLONPD(inumpd,krang).NE.ilarph)
THEN 124 & (lfi, krep,inumer,jrec, &
125 & lfi%MTAMPD(ixt(1_jplikb ,inumpd,krang)), &
126 & lfi%NBWRIT(krang),ifactm, &
127 & lfi%YLFIC (krang), iretin)
130 IF (iretin.EQ.1)
THEN 132 ELSEIF (iretin.NE.0)
THEN 136 lfi%LECRPD(inumpd,krang)=.false.
138 ELSEIF (lfi%NUMAPD(inumpd,krang).LT.jrec)
THEN 139 IF (j.EQ.indik1) indik1=indik1+1
140 IF (j.EQ.indik2) indik2=indik2-1
157 ELSEIF (j.EQ.ipodpi)
THEN 163 irgpim=lfi%MRGPIM(ij,krang)
164 irgpif=lfi%MRGPIF(irgpim)
165 IF (irgpif.LE.inbpir) cycle
167 & (lfi, irgpif,krang,irec)
169 IF (irec.EQ.jrec)
THEN 171 IF (.NOT.lfi%LECRPI(irgpim,1).OR. &
172 & .NOT.lfi%LECRPI(irgpim,2))
THEN 179 & (lfi, krep,inumer,jrec, &
180 & lfi%CNOMAR(ixc(1_jplikb ,irgpim)), &
181 & lfi%NBWRIT(krang),ifactm, &
182 & lfi%YLFIC (krang),iretin)
184 IF (iretin.EQ.1)
THEN 186 ELSEIF (iretin.NE.0)
THEN 192 & (lfi, krep,inumer,jrec+1, &
193 & lfi%MLGPOS(ixm(1_jplikb ,irgpim)), &
194 & lfi%NBWRIT(krang),ifactm, &
195 & lfi%YLFIC (krang),iretin)
197 IF (iretin.EQ.1)
THEN 199 ELSEIF (iretin.NE.0)
THEN 203 lfi%LECRPI(irgpim,1)=ij.NE.ipodpi.OR. &
204 & lfi%NALDPI(krang).EQ.inalpp
205 lfi%LECRPI(irgpim,2)=lfi%LECRPI(irgpim,1)
212 WRITE (unit=lfi%NULOUT,fmt=*) &
213 &
'$$$ LFIECX - APRES ETIQUETTE 212, JREC= ', &
214 & jrec,
' NON TROUVE $$$' 244 inadja(jsens)=(lfi%JPNPDF+1)*(jsens-1)
245 IF (.NOT.ldadon.AND.jsens.EQ.2)
GOTO 320
256 inumap=lfi%NUMAPD(j,krang)
257 llfilt=lfi%LECRPD(j,krang).AND.lfi%NLONPD(j,krang).EQ.ilarph
259 IF (llfilt.AND.inumap.EQ.irec)
THEN 260 inadja(jsens)=inadja(jsens)-isens
261 iposad(inadja(jsens))=j
262 IF (j.EQ.indik1) indik1=indik1+1
263 IF (j.EQ.indik2) indik2=indik2-1
264 IF (j.EQ.indis1) indis1=indis1+1
265 IF (j.EQ.indis2) indis2=indis2-1
267 ELSEIF(.NOT.llfilt.OR.inumap.EQ.krec &
268 & .OR.abs(inumap-krec).GT.lfi%JPNPDF)
THEN 269 IF (j.EQ.indis1) indis1=indis1+1
270 IF (j.EQ.indis2) indis2=indis2-1
271 ELSEIF(inumap*isens.LT.irec*isens)
THEN 272 IF (j.EQ.indik1) indik1=indik1+1
273 IF (j.EQ.indik2) indik2=indik2-1
286 IF (.NOT.llloin)
THEN 293 & (lfi, krep,inumer,irec, &
294 & lfi%MTAMPD(ixt(1_jplikb ,ij,krang)), &
295 & lfi%NBWRIT(krang),ifactm, &
296 & lfi%YLFIC (krang), iretin)
298 IF (iretin.EQ.1)
THEN 300 ELSEIF (iretin.NE.0)
THEN 304 lfi%LECRPD(ij,krang)=.false.
315 & (lfi, krep,inumer,krec,kzone, &
316 & lfi%NBWRIT(krang),ifactm, &
317 & lfi%YLFIC (krang),iretin)
319 IF (iretin.EQ.1)
THEN 321 ELSEIF (iretin.NE.0)
THEN 332 DO j=lfi%JPNPDF,inadja(2),-1
337 & (lfi, krep,inumer,irec, &
338 & lfi%MTAMPD(ixt(1_jplikb ,ij,krang)), &
339 & lfi%NBWRIT(krang),ifactm, &
340 & lfi%YLFIC (krang), &
343 IF (iretin.EQ.1)
THEN 345 ELSEIF (iretin.NE.0)
THEN 349 lfi%LECRPD(ij,krang)=.false.
352 irecx=krec+lfi%JPNPDF-inadja(2)+1
360 imdesc=lfi%MDES1D(ixm(lfi%JPAXPD,krang))
361 lfi%MDES1D(ixm(lfi%JPAXPD,krang))=max(imdesc,irecx)
364 imdesc=lfi%MDES1D(ixm(lfi%JPNAPH,krang))
365 lfi%MDES1D(ixm(lfi%JPNAPH,krang))=max(imdesc,irecx)
377 lfi%NUMAPH(krang)=inaphy
384 llfata=llmoer(krep,krang)
388 ELSEIF (krep.GT.0)
THEN 394 IF (lfi%LMISOP.OR.llfata)
THEN 397 WRITE (unit=clmess,fmt=
'(''KREP='',I5,'', KRANG='',I3, & 398 & '', KREC='',I6,'', LDADON='',L2,'', KRETIN='',I2)') &
399 & krep,krang,krec,ldadon,kretin
401 & (lfi, inumer,inimes,krep,.false.,clmess, &
409 #include "lficom2.ixc.h" 410 #include "lficom2.ixm.h" 411 #include "lficom2.ixt.h" 412 #include "lficom2.llmoer.h" 420 & (krep, krang, krec, kzone, ldadon, kretin)
427 INTEGER (KIND=JPLIKB) KREP
428 INTEGER (KIND=JPLIKB) KRANG
429 INTEGER (KIND=JPLIKB) KREC
430 INTEGER (KIND=JPLIKB) KZONE (*)
432 INTEGER (KIND=JPLIKB) KRETIN
437 & (lfi, krep, krang, krec, kzone, ldadon, kretin)
442 & (krep, krang, krec, kzone, ldadon, kretin)
449 INTEGER (KIND=JPLIKM) KREP
450 INTEGER (KIND=JPLIKM) KRANG
451 INTEGER (KIND=JPLIKM) KREC
452 INTEGER (KIND=JPLIKB) KZONE (*)
454 INTEGER (KIND=JPLIKM) KRETIN
459 & (lfi, krep, krang, krec, kzone, ldadon, kretin)
464 & (lfi, krep, krang, krec, kzone, ldadon, kretin)
470 INTEGER (KIND=JPLIKM) KREP
471 INTEGER (KIND=JPLIKM) KRANG
472 INTEGER (KIND=JPLIKM) KREC
473 INTEGER (KIND=JPLIKB) KZONE (lfi%jplarx)
475 INTEGER (KIND=JPLIKM) KRETIN
477 INTEGER (KIND=JPLIKB) IREP
478 INTEGER (KIND=JPLIKB) IRANG
479 INTEGER (KIND=JPLIKB) IREC
480 INTEGER (KIND=JPLIKB) IRETIN
483 irang = int( krang,
jplikb)
487 & (lfi, irep, irang, irec, kzone, ldadon, iretin)
490 kretin = int( iretin,
jplikm)
subroutine lfiecc_fort(LFI, KREP, KNUMER, KREC, CDTAB, KNBECR, KFACTM, YDFIC, KRETIN)
integer, parameter jplikb
subroutine lfiecx_fort(LFI, KREP, KRANG, KREC, KZONE, LDADON, KRETIN)
subroutine lfirec_fort(LFI, KRGPIF, KRANG, KREC)
subroutine new_lfi_default()
subroutine lfiecx(KREP, KRANG, KREC, KZONE, LDADON, KRETIN)
logical, save lficom_default_init
type(lficom), target, save lficom_default
subroutine lfiecx64(KREP, KRANG, KREC, KZONE, LDADON, KRETIN)
integer, parameter jplikm
subroutine lfiems_fort(LFI, KNUMER, KNIMES, KCODE, LDFATA, CDMESS, CDNSPR, CDACTI)
subroutine lfiecx_mt(LFI, KREP, KRANG, KREC, KZONE, LDADON, KRETIN)
subroutine lfiedo_fort(LFI, KREP, KNUMER, KREC, KTAB, KNBECR, KFACTM, YDFIC, KRETIN)