SURFEX v7.3
General documentation of Surfex
|
00001 C Jan-2011 P. Marguinaud Thread-safe LFI 00002 SUBROUTINE LFIOSF_MT (LFI, KREP, KNUMER, LDIMST ) 00003 USE LFIMOD, ONLY : LFICOM 00004 USE PARKIND1, ONLY : JPRB 00005 USE YOMHOOK , ONLY : LHOOK, DR_HOOK 00006 C**** 00007 C Ce sous-programme permet d'obtenir l'option courante gouvernant 00008 C l'impression de STATISTIQUES a la fermeture d'un fichier 00009 C particulier, ouvert pour le logiciel LFI. 00010 C 00011 C Noter que si le niveau global d'impression des statistiques 00012 C *LFI%NISTAG* vaut 0 ou 2, l'option propre au fichier est inoperante. 00013 C *LFI%NISTAG* vaut par defaut 1, est reglable via le s/p "LFINSG", 00014 C et sa valeur peut etre obtenue par le s/p "LFIOSG". 00015 C** 00016 C ARGUMENTS : KREP (Sortie) ==> Code-REPonse du sous-programme; 00017 C KNUMER (Entree) ==> NUMERo d'unite logique concernee; 00018 C LDIMST (Sortie) ==> Option d'IMpression des STatisti- 00019 C ques a la fermeture (vrai=oui). 00020 C 00021 #ifndef f77 00022 #include "precision.h" 00023 #endif 00024 C 00025 TYPE(LFICOM) :: LFI 00026 INTEGER KREP, KNUMER, IRANG, IREP, INIMES 00027 C 00028 LOGICAL LDIMST 00029 C 00030 #include "lficom2.h" 00031 #include "lficom_mt.h" 00032 C 00033 REAL(KIND=JPRB) :: ZHOOK_HANDLE 00034 IF (LHOOK) CALL DR_HOOK('LFIOSF_MT',0,ZHOOK_HANDLE) 00035 CALL LFINUM_MT (LFI, KNUMER,IRANG) 00036 C 00037 IF (IRANG.NE.0) THEN 00038 IF (LFI%LMULTI) CALL LFIVER_MT (LFI, LFI%VERRUE(IRANG),'ON') 00039 LDIMST=LFI%LISTAT(IRANG) 00040 LFI%NDEROP(IRANG)=20 00041 IF (LFI%LMULTI) CALL LFIVER_MT (LFI, LFI%VERRUE(IRANG),'OFF') 00042 IREP=0 00043 ELSE 00044 IREP=-1 00045 ENDIF 00046 C 00047 KREP=IREP 00048 LLFATA=LLMOER (IREP,IRANG) 00049 C 00050 IF (LLFATA.OR.IXNIMS (IRANG).EQ.2) THEN 00051 INIMES=2 00052 ELSE 00053 IF (LHOOK) CALL DR_HOOK('LFIOSF_MT',1,ZHOOK_HANDLE) 00054 RETURN 00055 ENDIF 00056 C 00057 CLNSPR='LFIOSF' 00058 WRITE (UNIT=CLMESS,FMT='(''KREP='',I4,'', KNUMER=' 00059 ',I3, S '', LDIMST= '',L1)') KREP,KNUMER,LDIMST 00060 CALL LFIEMS_MT (LFI, KNUMER,INIMES,IREP,LLFATA, 00061 S CLMESS,CLNSPR,CLACTI) 00062 C 00063 IF (LHOOK) CALL DR_HOOK('LFIOSF_MT',1,ZHOOK_HANDLE) 00064 END 00065