SURFEX v8.1
General documentation of Surfex
fadecoga.F90
Go to the documentation of this file.
1 ! Oct-2012 P. Marguinaud 64b LFI
2 SUBROUTINE fadecoga &
3 & (pfdata, klenf, kbits, knbit, kb1par, kb2par, &
4 & pvert, klenv, kgrib, kleng, kword, kjlenv, kjlenf, &
5 & kcpack, kscalp, kerr, pmin, pmax, ldarpe)
7 IMPLICIT NONE
8 ! Arguments
9 INTEGER (KIND=JPLIKB) KLENF ! IN
10 REAL (KIND=JPDBLR) PFDATA (klenf) ! OUT
11 INTEGER (KIND=JPLIKB) KBITS ! OUT
12 INTEGER (KIND=JPLIKB) KNBIT ! IN
13 INTEGER (KIND=JPLIKB) KB1PAR (19) ! OUT
14 INTEGER (KIND=JPLIKB) KB2PAR (17) ! OUT
15 INTEGER (KIND=JPLIKB) KLENV ! IN
16 REAL (KIND=JPDBLR) PVERT (klenv) ! OUT
17 INTEGER (KIND=JPLIKB) KLENG ! IN
18 INTEGER (KIND=JPLIKB) KGRIB (kleng) ! IN
19 INTEGER (KIND=JPLIKB) KWORD ! OUT
20 INTEGER (KIND=JPLIKB) KJLENV ! OUT
21 INTEGER (KIND=JPLIKB) KJLENF ! OUT
22 INTEGER (KIND=JPLIKB) KCPACK ! OUT
23 INTEGER (KIND=JPLIKB) KSCALP ! OUT
24 INTEGER (KIND=JPLIKB) KERR ! OUT
25 REAL (KIND=JPDBLD) PMIN ! IN
26 REAL (KIND=JPDBLD) PMAX ! IN
27 LOGICAL LDARPE ! IN
28 ! Local integers
29 INTEGER (KIND=JPLIKM) ILENF ! IN
30 INTEGER (KIND=JPLIKM) IBITS ! OUT
31 INTEGER (KIND=JPLIKM) INBIT ! IN
32 INTEGER (KIND=JPLIKM) IB1PAR (19) ! OUT
33 INTEGER (KIND=JPLIKM) IB2PAR (17) ! OUT
34 INTEGER (KIND=JPLIKM) ILENV ! IN
35 INTEGER (KIND=JPLIKM) ILENG ! IN
36 INTEGER (KIND=JPLIKM) IWORD ! OUT
37 INTEGER (KIND=JPLIKM) IJLENV ! OUT
38 INTEGER (KIND=JPLIKM) IJLENF ! OUT
39 INTEGER (KIND=JPLIKM) ICPACK ! OUT
40 INTEGER (KIND=JPLIKM) ISCALP ! OUT
41 INTEGER (KIND=JPLIKM) IERR ! OUT
42 ! Local reals
43 REAL (KIND=JPDBLD) ZFDATA (klenf) ! OUT
44 REAL (KIND=JPDBLD) ZVERT (klenv) ! OUT
45 ! Convert arguments
46 
47 ilenf = int( klenf, jplikm)
48 inbit = int( knbit, jplikm)
49 ilenv = int( klenv, jplikm)
50 ileng = int( kleng, jplikm)
51 
52 IF (jpdblr == jpdbld) THEN
53 
54  CALL decoga &
55  & (pfdata, ilenf, ibits, inbit, ib1par, ib2par, &
56  & pvert, ilenv, kgrib, ileng, iword, ijlenv, ijlenf, &
57  & icpack, iscalp, ierr, pmin, pmax, ldarpe)
58 
59 
60 ELSE
61 
62  CALL decoga &
63  & (zfdata, ilenf, ibits, inbit, ib1par, ib2par, &
64  & zvert, ilenv, kgrib, ileng, iword, ijlenv, ijlenf, &
65  & icpack, iscalp, ierr, pmin, pmax, ldarpe)
66 
67  pfdata = real(zfdata, jpdblr)
68  pvert = real( zvert, jpdblr)
69 
70 ENDIF
71 
72 
73 kbits = int( ibits, jplikb)
74 kb1par = int( ib1par, jplikb)
75 kb2par = int( ib2par, jplikb)
76 kword = int( iword, jplikb)
77 kjlenv = int( ijlenv, jplikb)
78 kjlenf = int( ijlenf, jplikb)
79 kcpack = int( icpack, jplikb)
80 kscalp = int( iscalp, jplikb)
81 kerr = int( ierr, jplikb)
82 
83 END SUBROUTINE fadecoga
integer, parameter jplikb
integer, parameter jpdbld
integer, parameter jpdblr
integer, parameter jplikm
subroutine fadecoga(PFDATA, KLENF, KBITS, KNBIT, KB1PAR, KB2PAR, PVERT, KLENV, KGRIB, KLENG, KWORD, KJLENV, KJLENF, KCPACK, KSCALP, KERR, PMIN, PMAX, LDARPE)
Definition: fadecoga.F90:6
subroutine decoga(PFDATA, KLENF, KBITS, KNBIT, KB1PAR,
Definition: decoga.F:2
real8 real
Definition: privpub.h:396