SURFEX v8.1
General documentation of Surfex
lfiintecr.F90
Go to the documentation of this file.
1 ! Oct-2012 P. Marguinaud 64b LFI
2 ! Jan-2011 P. Marguinaud Thread-safe LFI
3 
4 SUBROUTINE lfiintecr_fort &
5 & (lfi, krep, knumer, cdnoma, ktab, klong)
6 USE lfimod, ONLY : lficom
8 IMPLICIT NONE
9 !
10 !****
11 ! SOUS-PROGRAMME D'ECRITURE D'UN TABLEAU D'ENTIERS A PARTIR
12 ! D'UN ARTICLE (DE DONNEES) PAR *NOM*
13 ! SUR UNE UNITE LOGIQUE OUVERTE POUR LE LOGICIEL DE FICHIERS INDEXES
14 ! *LFI*; L'ARTICLE EN SORTIE EST UN "BLOC" DE DONNEES ADJACENTES.
15 !**
16 ! ARGUMENTS : KREP (SORTIE) ==> CODE-REPONSE DU SOUS-PROGRAMME;
17 ! KNUMER (ENTREE) ==> LFI%NUMERO DE L'UNITE LOGIQUE;
18 ! CDNOMA (ENTREE) ==> NOM DE L'ARTICLE A RECHERCHER;
19 ! KTAB (ENTREE) ==> PREMIER MOT A ECRIRE
20 ! KLONG (ENTREE) ==> LONGUEUR DE L'ARTICLE A LIRE.
21 !
22 !
23 ! Arguments
24 type(lficom) lfi ! INOUT
25 INTEGER (KIND=JPLIKB) KREP ! OUT
26 INTEGER (KIND=JPLIKB) KNUMER ! IN
27 CHARACTER (LEN=*) CDNOMA ! IN
28 INTEGER (KIND=JPLIKB) KLONG ! IN
29 INTEGER (KIND=JPLIKM) KTAB (klong) ! IN
30 ! Local integers
31 INTEGER (KIND=JPLIKB) ITAB (klong) ! IN
32 ! Convert arguments
33 
34 itab = int( ktab, jplikb)
35 
36 CALL lfiecr_fort &
37 & (lfi, krep, knumer, cdnoma, itab, klong)
38 
39 END SUBROUTINE lfiintecr_fort
40 
41 ! Oct-2012 P. Marguinaud 64b LFI
42 SUBROUTINE lfiintecr64 &
43 & (krep, knumer, cdnoma, ktab, klong)
44 USE lfimod, ONLY : lfi => lficom_default, &
47 USE lfi_precision
48 IMPLICIT NONE
49 ! Arguments
50 INTEGER (KIND=JPLIKB) KREP ! OUT
51 INTEGER (KIND=JPLIKB) KNUMER ! IN
52 CHARACTER (LEN=*) CDNOMA ! IN
53 INTEGER (KIND=JPLIKB) KLONG ! IN
54 INTEGER (KIND=JPLIKM) KTAB (klong) ! IN
55 
56 IF (.NOT. lficom_default_init) CALL new_lfi_default ()
57 
58 CALL lfiintecr_fort &
59 & (lfi, krep, knumer, cdnoma, ktab, klong)
60 
61 END SUBROUTINE lfiintecr64
62 
63 SUBROUTINE lfiintecr &
64 & (krep, knumer, cdnoma, ktab, klong)
65 USE lfimod, ONLY : lfi => lficom_default, &
68 USE lfi_precision
69 IMPLICIT NONE
70 ! Arguments
71 INTEGER (KIND=JPLIKM) KREP ! OUT
72 INTEGER (KIND=JPLIKM) KNUMER ! IN
73 CHARACTER (LEN=*) CDNOMA ! IN
74 INTEGER (KIND=JPLIKM) KLONG ! IN
75 INTEGER (KIND=JPLIKM) KTAB (klong) ! IN
76 
77 IF (.NOT. lficom_default_init) CALL new_lfi_default ()
78 
79 CALL lfiintecr_mt &
80 & (lfi, krep, knumer, cdnoma, ktab, klong)
81 
82 END SUBROUTINE lfiintecr
83 
84 SUBROUTINE lfiintecr_mt &
85 & (lfi, krep, knumer, cdnoma, ktab, klong)
86 USE lfimod, ONLY : lficom
87 USE lfi_precision
88 IMPLICIT NONE
89 ! Arguments
90 type(lficom) lfi ! INOUT
91 INTEGER (KIND=JPLIKM) KREP ! OUT
92 INTEGER (KIND=JPLIKM) KNUMER ! IN
93 CHARACTER (LEN=*) CDNOMA ! IN
94 INTEGER (KIND=JPLIKM) KLONG ! IN
95 INTEGER (KIND=JPLIKM) KTAB (klong) ! IN
96 ! Local integers
97 INTEGER (KIND=JPLIKB) IREP ! OUT
98 INTEGER (KIND=JPLIKB) INUMER ! IN
99 INTEGER (KIND=JPLIKB) ILONG ! IN
100 ! Convert arguments
101 
102 inumer = int( knumer, jplikb)
103 ilong = int( klong, jplikb)
104 
105 CALL lfiecr_fort &
106 & (lfi, irep, inumer, cdnoma, ktab, ilong)
107 
108 krep = int( irep, jplikm)
109 
110 END SUBROUTINE lfiintecr_mt
111 
112 !INTF KREP OUT
113 !INTF KNUMER IN
114 !INTF CDNOMA IN
115 !INTF KTAB IN DIMS=KLONG
116 !INTF KLONG IN
subroutine lfiecr_fort(LFI, KREP, KNUMER, CDNOMA, KTAB, KLONG)
Definition: lfiecr.F90:6
integer, parameter jplikb
subroutine lfiintecr64(KREP, KNUMER, CDNOMA, KTAB, KLONG)
Definition: lfiintecr.F90:44
subroutine new_lfi_default()
Definition: lfimod.F90:376
logical, save lficom_default_init
Definition: lfimod.F90:371
subroutine lfiintecr(KREP, KNUMER, CDNOMA, KTAB, KLONG)
Definition: lfiintecr.F90:65
subroutine lfiintecr_mt(LFI, KREP, KNUMER, CDNOMA, KTAB, KLONG)
Definition: lfiintecr.F90:86
type(lficom), target, save lficom_default
Definition: lfimod.F90:370
subroutine lfiintecr_fort(LFI, KREP, KNUMER, CDNOMA, KTAB, KLONG)
Definition: lfiintecr.F90:6
integer, parameter jplikm
Definition: lfimod.F90:1