4 & (fa, cdclef, kval, kopt)
50 INTEGER (KIND=JPLIKB) KVAL, KOPT
52 CHARACTER(LEN=*) CDCLEF
54 INTEGER (KIND=JPLIKB) INUMER, INIMES, IREP, INBITSMAX
55 CHARACTER(LEN=FA%JPLMES) CLMESS
56 CHARACTER(LEN=FA%JPLSPX) CLNSPR
66 REAL(KIND=JPRB) :: ZHOOK_HANDLE
69 IF (fa%FAREGI_LLPREA)
THEN 75 fa%FAREGI_LLPREA=.false.
77 inbitsmax=max(fa%NBIPDG,fa%NBICSP)
88 IF (cdclef==
'BASIC'.OR.cdclef==
'basic')
THEN 95 ELSEIF (cdclef==
'IDCEN'.OR.cdclef==
'idcen')
THEN 101 ELSEIF (cdclef==
'PACK1'.OR.cdclef==
'pack1')
THEN 113 ELSEIF (cdclef==
'PACK2'.OR.cdclef==
'pack2')
THEN 125 ELSEIF (cdclef==
'PACK3'.OR.cdclef==
'pack3')
THEN 138 ELSEIF (cdclef==
'APAC1'.OR.cdclef==
'apac1')
THEN 151 ELSEIF (cdclef==
'APAC2'.OR.cdclef==
'apac2')
THEN 164 ELSEIF (cdclef==
'APAC3'.OR.cdclef==
'apac3')
THEN 177 ELSEIF (cdclef==
'APAC4'.OR.cdclef==
'apac4')
THEN 190 ELSEIF (cdclef==
'WIDPA'.OR.cdclef==
'widpa')
THEN 191 IF (kval.LT.1-inbitsmax.OR.kval.GT.inbitsmax-1)
THEN 200 ELSEIF (cdclef==
'GEXTE'.OR.cdclef==
'gexte')
THEN 211 ELSEIF (cdclef==
'BOUST'.OR.cdclef==
'boust')
THEN 223 ELSEIF (cdclef==
'DIFFE'.OR.cdclef==
'diffe')
THEN 229 ELSEIF (kval.EQ.1)
THEN 234 ELSEIF (kval.EQ.2)
THEN 239 ELSEIF (kval.EQ.3)
THEN 244 ELSEIF (kval.EQ.0)
THEN 255 ELSEIF (cdclef==
'FACDEC'.OR.cdclef==
'facdec')
THEN 260 ELSEIF (cdclef==
'EXTERN'.OR.cdclef==
'extern')
THEN 267 ELSEIF (kopt==0)
THEN 271 IF (cdclef==
'CLEFS'.OR.cdclef==
'clefs')
THEN 273 WRITE (unit=fa%NULOUT,fmt=*)
274 WRITE (unit=fa%NULOUT,fmt=*)
'Mots clef disponibles pour FAREGI:' 275 WRITE (unit=fa%NULOUT,fmt=*)
276 WRITE (unit=fa%NULOUT,fmt=*)
'BASIC: pas de compression' 277 WRITE (unit=fa%NULOUT,fmt=*)
'PACK1: BASIC avec une compression' 278 WRITE (unit=fa%NULOUT,fmt=*)
' ligne a ligne pour les pts de grille' 279 WRITE (unit=fa%NULOUT,fmt=*)
'PACK2: BASIC avec une compression' 280 WRITE (unit=fa%NULOUT,fmt=*)
' ou le nb de bits est cst pour les groupes' 281 WRITE (unit=fa%NULOUT,fmt=*)
'PACK3: BASIC avec une compression' 282 WRITE (unit=fa%NULOUT,fmt=*)
' OMM general pour les points de grille' 283 WRITE (unit=fa%NULOUT,fmt=*)
'APAC1: compression agressive' 284 WRITE (unit=fa%NULOUT,fmt=*)
' BASIC et PACK1 sont testes' 285 WRITE (unit=fa%NULOUT,fmt=*)
'APAC2: compression agressive' 286 WRITE (unit=fa%NULOUT,fmt=*)
' BASIC, PACK1 et PACK2 sont testes' 287 WRITE (unit=fa%NULOUT,fmt=*)
'APAC3: compression agressive' 288 WRITE (unit=fa%NULOUT,fmt=*)
' BASIC, PACK1 et PACK3 sont testes' 289 WRITE (unit=fa%NULOUT,fmt=*)
'APAC4: compression agressive' 290 WRITE (unit=fa%NULOUT,fmt=*)
' BASIC, PACK1, PACK2 et PACK3 testes' 291 WRITE (unit=fa%NULOUT,fmt=*)
'WIDPA: lecture/ecriture du nb de bits' 292 WRITE (unit=fa%NULOUT,fmt=*)
' a utiliser pour les groupes de points' 293 WRITE (unit=fa%NULOUT,fmt=*)
' de grille dans le cas PACK2' 294 WRITE (unit=fa%NULOUT,fmt=*)
'GEXTE: les extensions generales de la compression' 295 WRITE (unit=fa%NULOUT,fmt=*)
' sont activees (KVAL=1) ou desactiv. (KVAL=0)' 296 WRITE (unit=fa%NULOUT,fmt=*)
'BOUST: le rearrangement boustrophedonique est' 297 WRITE (unit=fa%NULOUT,fmt=*)
' active (KVAL=1) ou desactive (KVAL=0)' 298 WRITE (unit=fa%NULOUT,fmt=*)
'DIFFE: la differenciation spatiale est' 299 WRITE (unit=fa%NULOUT,fmt=*)
' activee (KVAL=ordre de differ. (1 a 3)' 300 WRITE (unit=fa%NULOUT,fmt=*)
' ou -1 (calcul dyn)) ou desactivee (0)' 301 WRITE (unit=fa%NULOUT,fmt=*)
'FACDEC: calcul automatique du facteur decimal' 302 WRITE (unit=fa%NULOUT,fmt=*)
'EXTERN: ecriture dans un fichier externe' 303 WRITE (unit=fa%NULOUT,fmt=*)
304 ELSEIF (cdclef==
'IDCEN'.OR.cdclef==
'idcen')
THEN 311 ELSEIF (cdclef==
'WIDPA'.OR.cdclef==
'widpa')
THEN 317 ELSEIF (cdclef==
'GEXTE'.OR.cdclef==
'gexte')
THEN 318 kval = fa%NCODGRI(7) / 8
323 ELSEIF (cdclef==
'BOUST'.OR.cdclef==
'boust')
THEN 324 kval = fa%NCODGRI(8) / 4
328 ELSEIF (cdclef==
'DIFFE'.OR.cdclef==
'diffe')
THEN 329 kval=fa%NCODGRI( 9)+fa%NCODGRI(10)
333 ELSEIF (cdclef==
'FACDEC'.OR.cdclef==
'facdec')
THEN 338 ELSEIF (cdclef==
'EXTERN'.OR.cdclef==
'extern')
THEN 358 llfata=llmoer(irep,0_jplikb )
366 IF (inimes.EQ.0)
THEN 374 WRITE (unit=clmess,fmt=
'(''IREP='',I2, & 375 & '', CDCLEF='''''',A,'''''', KVAL='',I12, & 376 & '', KOPT='',I4)') &
377 & irep,cdclef,kval,kopt
380 & (fa, inumer,inimes,irep,llfata,clmess, &
381 & clnspr,clnspr,.false.)
387 #include "facom2.llmoer.h" 395 & (cdclef, kval, kopt)
402 CHARACTER (LEN=*) CDCLEF
403 INTEGER (KIND=JPLIKB) KVAL
404 INTEGER (KIND=JPLIKB) KOPT
409 & (fa, cdclef, kval, kopt)
414 & (cdclef, kval, kopt)
421 CHARACTER (LEN=*) CDCLEF
422 INTEGER (KIND=JPLIKM) KVAL
423 INTEGER (KIND=JPLIKM) KOPT
428 & (fa, cdclef, kval, kopt)
433 & (fa, cdclef, kval, kopt)
439 CHARACTER (LEN=*) CDCLEF
440 INTEGER (KIND=JPLIKM) KVAL
441 INTEGER (KIND=JPLIKM) KOPT
443 INTEGER (KIND=JPLIKB) IVAL
444 INTEGER (KIND=JPLIKB) IOPT
453 & (fa, cdclef, ival, iopt)
integer, parameter jplikb
logical, save fa_com_default_init
subroutine new_fa_default()
subroutine faregi_fort(FA, CDCLEF, KVAL, KOPT)
subroutine farine_fort(FA, KOPTIO)
subroutine faregi(CDCLEF, KVAL, KOPT)
subroutine faregi_mt(FA, CDCLEF, KVAL, KOPT)
integer, parameter jplikm
type(fa_com), target, save fa_com_default
subroutine faipar_fort(FA, KNUMER, KNIMES, KCODE, LDFATA, CDMESS, CDNSPR, CDACTI, LDRLFI)
subroutine faregi64(CDCLEF, KVAL, KOPT)
integer(kind=jplikb), parameter jpniil