5 & (lfi, krep, knumer, cdnoma, ktab, klong )
24 CHARACTER CDNOMA*(*), CLNOMA*(lfi%jpncpn)
26 INTEGER (KIND=JPLIKB) KREP, KNUMER, KLONG
27 INTEGER (KIND=JPLIKB) KTAB (klong)
28 INTEGER (KIND=JPLIKB) IRANG, IREP, ILCLNO, IDECBL
29 INTEGER (KIND=JPLIKB) IPOSBL, INBALO, INBPIR
30 INTEGER (KIND=JPLIKB) IFACTM, ILARPH, INALPP, IRPIEX
31 INTEGER (KIND=JPLIKB) IARTEX, ILONEX, IRPIEC
32 INTEGER (KIND=JPLIKB) IARTEC, IPOSEC, IDTROU, ILONUT
33 INTEGER (KIND=JPLIKB) INPPIM, IRETIN, IRGPI, J
34 INTEGER (KIND=JPLIKB) IRGPIM, ILFORC, INPILE, INAPHY
35 INTEGER (KIND=JPLIKB) IRANGM, INAPXX, INDMAX
36 INTEGER (KIND=JPLIKB) IMDESC, INIMES, ILCDNO
38 LOGICAL LLLECT, LLECR, LLVERF
40 CHARACTER(LEN=LFI%JPLSPX) CLNSPR
41 CHARACTER(LEN=LFI%JPLMES) CLMESS
42 CHARACTER(LEN=LFI%JPLFTX) CLACTI
52 REAL(KIND=JPRB) :: ZHOOK_HANDLE
58 ilcdno=int(len(cdnoma),
jplikb)
62 clnoma=lfi%CHINCO(:lfi%JPNCPN)
65 ELSEIF (cdnoma.EQ.
' ')
THEN 78 iposbl=idecbl+int(
index(cdnoma(idecbl+1:),
' '),
jplikb)
80 IF (iposbl.LE.idecbl)
THEN 82 ELSEIF (cdnoma(iposbl:).EQ.
' ')
THEN 89 IF (ilclno.LE.lfi%JPNCPN)
THEN 90 clnoma=cdnoma(:ilclno)
92 clnoma=cdnoma(:lfi%JPNCPN)
101 ELSEIF (irang.EQ.0)
THEN 107 & (lfi, lfi%VERRUE(irang),
'ON')
110 IF (lfi%NEXPOR(irang).GT.0)
THEN 120 inbalo=lfi%MDES1D(ixm(lfi%JPNALO,irang))
121 inbpir=lfi%MDES1D(ixm(lfi%JPNPIR,irang))
122 ifactm=lfi%MFACTM(irang)
123 ilarph=lfi%JPLARD*ifactm
124 inalpp=lfi%JPNAPP*ifactm
133 & (lfi, irep,irang,clnoma(:ilclno),klong,irpiex, &
134 & iartex, ilonex,irpiec,iartec,iposec, &
135 & idtrou,ilonut,iretin)
137 IF (iretin.EQ.1)
THEN 139 ELSEIF (iretin.EQ.2)
THEN 141 ELSEIF (iretin.NE.0)
THEN 145 inppim=lfi%NPPIMM(irang)
147 IF (iartex.NE.0.AND.lfi%NEXPOR(irang).GT.0)
THEN 160 & (lfi, irep,irang,ktab,klong,iposec,iretin)
162 IF (iretin.EQ.1)
THEN 164 ELSEIF (iretin.EQ.2)
THEN 166 ELSEIF (iretin.NE.0)
THEN 173 IF (iartex.NE.0.AND.iartec.NE.iartex)
THEN 183 irgpi=lfi%MRGPIM(j,irang)
185 IF (lfi%MRGPIF(irgpi).EQ.irpiex)
THEN 196 & (lfi, irep,irang,irangm,irgpim,irpiex, &
197 & ilforc,inpile, iretin)
199 IF (iretin.EQ.1)
THEN 201 ELSEIF (iretin.EQ.2)
THEN 203 ELSEIF (iretin.NE.0)
THEN 207 inppim=max(inppim,irangm)
210 lfi%CNOMAR(ixc(iartex,irgpim))=
' ' 211 lfi%LECRPI(irgpim,1)=.true.
213 IF (ilonex.NE.ilonut)
THEN 219 lfi%MLGPOS(ixm(2*iartex-1,irgpim))=ilonut
220 lfi%LECRPI(irgpim,2)=.true.
225 IF (inalpp*(irpiec-1)+iartec.GT.inbalo)
THEN 230 lfi%MDES1D(ixm(lfi%JPNALO,irang))=inbalo+1
232 IF (inbalo.NE.0.AND.iartec.EQ.1)
THEN 236 IF (irpiec.GT.inbpir)
THEN 244 inapxx=lfi%MDES1D(ixm(lfi%JPAXPD,irang))
249 IF (lfi%NUMAPD(j,irang).GT.inapxx)
THEN 250 inapxx=lfi%NUMAPD(j,irang)
256 IF (irpiec.GT.(inbpir+1))
THEN 257 imdesc=lfi%MDES1D(ixm(ilarph+2-irpiec+inbpir,irang))
258 inapxx=max(inapxx,imdesc+1)
261 lfi%MDES1D(ixm(ilarph+1-irpiec+inbpir,irang))=inapxx+1
269 IF (indmax.NE.lfi%JPNIL)
THEN 271 DO j=lfi%NLONPD(indmax,irang)+1,ilarph
272 lfi%MTAMPD(ixt(j,indmax,irang))=0
275 lfi%NLONPD(indmax,irang)=ilarph
284 & (lfi, irep,irang,irangm,irgpim,irpiec, &
285 & ilforc,inpile, iretin)
287 IF (iretin.EQ.1)
THEN 289 ELSEIF (iretin.EQ.2)
THEN 291 ELSEIF (iretin.NE.0)
THEN 295 lfi%NPODPI(irang)=irangm
299 lfi%LPHASP(irgpim)=.true.
301 irgpim=lfi%MRGPIM(lfi%NPODPI(irang),irang)
304 lfi%NALDPI(irang)=iartec
305 lfi%CNOMAR(ixc(iartec,irgpim))=clnoma(:ilclno)
306 lfi%MLGPOS(ixm(2*iartec-1,irgpim))=klong
307 lfi%MLGPOS(ixm(2*iartec ,irgpim))=iposec
308 lfi%LECRPI(irgpim,1)=.true.
309 lfi%LECRPI(irgpim,2)=.true.
311 ELSEIF (iartex.EQ.0.OR.klong.NE.ilonex)
THEN 319 irgpi=lfi%MRGPIM(j,irang)
321 IF (lfi%MRGPIF(irgpi).EQ.irpiec)
THEN 330 IF (.NOT.lfi%LPHASP(irgpim))
THEN 333 & (lfi, irep,irang,irgpim,iretin)
335 IF (iretin.EQ.1)
THEN 337 ELSEIF (iretin.EQ.2)
THEN 339 ELSEIF (iretin.NE.0)
THEN 357 & (lfi, irep,irang,irangm,irgpim,irpiec, &
358 & ilforc,inpile, iretin)
360 IF (iretin.EQ.1)
THEN 362 ELSEIF (iretin.EQ.2)
THEN 364 ELSEIF (iretin.NE.0)
THEN 370 IF (iartec.NE.iartex.OR.irpiec.NE.irpiex)
THEN 371 lfi%CNOMAR(ixc(iartec,irgpim))=clnoma(:ilclno)
372 lfi%LECRPI(irgpim,1)=.true.
375 lfi%MLGPOS(ixm(2*iartec-1,irgpim))=klong
376 lfi%LECRPI(irgpim,2)=.true.
383 IF (iartex.EQ.0)
THEN 384 lfi%NBNECR(irang)=lfi%NBNECR(irang)+1
385 ELSEIF (klong.EQ.ilonex)
THEN 386 lfi%NREESP(irang)=lfi%NREESP(irang)+1
387 ELSEIF (klong.LT.ilonex)
THEN 388 lfi%NREECO(irang)=lfi%NREECO(irang)+1
389 lfi%LMIMAL(irang)=lfi%LMIMAL(irang).OR. &
390 & ilonex.EQ.lfi%MDES1D(ixm(lfi%JPLXAL,irang))
392 lfi%NREELO(irang)=lfi%NREELO(irang)+1
393 lfi%LMIMAL(irang)=lfi%LMIMAL(irang).OR. &
394 & ilonex.EQ.lfi%MDES1D(ixm(lfi%JPLNAL,irang))
397 lfi%NBTROU(irang)=lfi%NBTROU(irang)+idtrou
398 IF (lfi%LMISOP)
WRITE (unit=lfi%NULOUT,fmt=*) &
399 &
'IDTROU = ',idtrou,
', ILONEX = ',ilonex,
', KLONG = ',klong
403 lfi%NDERGF(irang)=inalpp*(irpiec-1)+iartec
404 lfi%CNDERA(irang)=clnoma(:ilclno)
405 lfi%NSUIVF(irang)=lfi%JPNIL
406 lfi%NPRECF(irang)=lfi%JPNIL
408 imdesc=lfi%MDES1D(ixm(lfi%JPLNAL,irang))
409 lfi%MDES1D(ixm(lfi%JPLNAL,irang))=min(imdesc,klong)
410 imdesc=lfi%MDES1D(ixm(lfi%JPLXAL,irang))
411 lfi%MDES1D(ixm(lfi%JPLXAL,irang))=max(imdesc,klong)
412 lfi%MDES1D(ixm(lfi%JPLTAL,irang))= &
413 & lfi%MDES1D(ixm(lfi%JPLTAL,irang))+klong-ilonex
414 IF (inbalo.EQ.0) lfi%MDES1D(ixm(lfi%JPLNAL,irang))=klong
416 IF (.NOT.lfi%LMODIF(irang))
THEN 420 lfi%LMODIF(irang)=.true.
423 & (lfi, irep,irang,iretin)
425 IF (iretin.EQ.1)
THEN 427 ELSEIF (iretin.EQ.2)
THEN 429 ELSEIF (iretin.NE.0)
THEN 436 lfi%NBMOEC(irang)=lfi%NBMOEC(irang)+klong
454 IF (inaphy.NE.0) lfi%NUMAPH(irang)=inaphy
462 llfata=llmoer(irep,irang)
466 lfi%NDERCO(irang)=irep
468 & (lfi, lfi%VERRUE(irang),
'OFF')
471 IF (llfata.OR.ixnims(irang).EQ.2)
THEN 479 WRITE (unit=clmess,fmt=
'(''KREP='',I4,'', KNUMER='',I3, & 480 & '', CDNOMA='''''',A,'''''', KLONG='',I7)') &
481 & krep,knumer,clnoma(:ilclno),klong
483 & (lfi, knumer,inimes,irep,llfata, &
484 & clmess,clnspr,clacti)
490 #include "lficom2.ixc.h" 491 #include "lficom2.ixm.h" 492 #include "lficom2.ixnims.h" 493 #include "lficom2.ixt.h" 494 #include "lficom2.llmoer.h" 502 & (krep, knumer, cdnoma, ktab, klong)
509 INTEGER (KIND=JPLIKB) KREP
510 INTEGER (KIND=JPLIKB) KNUMER
511 CHARACTER (LEN=*) CDNOMA
512 INTEGER (KIND=JPLIKB) KLONG
513 INTEGER (KIND=JPLIKB) KTAB (klong)
518 & (lfi, krep, knumer, cdnoma, ktab, klong)
523 & (krep, knumer, cdnoma, ktab, klong)
530 INTEGER (KIND=JPLIKM) KREP
531 INTEGER (KIND=JPLIKM) KNUMER
532 CHARACTER (LEN=*) CDNOMA
533 INTEGER (KIND=JPLIKM) KLONG
534 INTEGER (KIND=JPLIKB) KTAB (klong)
539 & (lfi, krep, knumer, cdnoma, ktab, klong)
544 & (lfi, krep, knumer, cdnoma, ktab, klong)
550 INTEGER (KIND=JPLIKM) KREP
551 INTEGER (KIND=JPLIKM) KNUMER
552 CHARACTER (LEN=*) CDNOMA
553 INTEGER (KIND=JPLIKM) KLONG
554 INTEGER (KIND=JPLIKB) KTAB (klong)
556 INTEGER (KIND=JPLIKB) IREP
557 INTEGER (KIND=JPLIKB) INUMER
558 INTEGER (KIND=JPLIKB) ILONG
561 inumer = int( knumer,
jplikb)
562 ilong = int( klong,
jplikb)
565 & (lfi, irep, inumer, cdnoma, ktab, ilong)
subroutine lfimoe_fort(LFI, KREP, KRANG, KRETIN)
subroutine lfiree_fort(LFI, KREP, KRANG, CDNOMA, KLONG, KRPIEX, KARTEX, KLONEX, KRPIEC, KARTEC, KPOSEC, KDTROU, KLONUT, KRETIN)
subroutine lfiecr_mt(LFI, KREP, KNUMER, CDNOMA, KTAB, KLONG)
subroutine lfiecr_fort(LFI, KREP, KNUMER, CDNOMA, KTAB, KLONG)
integer, parameter jplikb
subroutine lfiecr(KREP, KNUMER, CDNOMA, KTAB, KLONG)
subroutine new_lfi_default()
subroutine lfiecr64(KREP, KNUMER, CDNOMA, KTAB, KLONG)
logical, save lficom_default_init
subroutine lfinum_fort(LFI, KNUMER, KRANG)
subroutine lfiver_fort(LFI, PVEROU, CDSENS)
type(lficom), target, save lficom_default
subroutine lfipha_fort(LFI, KREP, KRANG, KRGPIM, KRETIN)
integer, parameter jplikm
subroutine lfiems_fort(LFI, KNUMER, KNIMES, KCODE, LDFATA, CDMESS, CDNSPR, CDACTI)
subroutine lfiecd_fort(LFI, KREP, KRANG, KTAB, KLONG, KPOSEC, KRETIN)
subroutine lfipim_fort(LFI, KREP, KRANG, KRANGM, KRGPIM, KRGPIF, KRGFOR, KNPILE, KRETIN)