SURFEX v7.3
General documentation of Surfex
 All Classes Files Functions Variables Typedefs
/home/dasprezs/EXPORT_v7_3/src/SURFEX/write_cover_tex_cover.F90
Go to the documentation of this file.
00001 !     ##########################
00002       SUBROUTINE WRITE_COVER_TEX_COVER
00003 !     ##########################
00004 !
00005 !!**** *WRITE_COVER_TEX* writes the cover data arrays into a tex file
00006 !!
00007 !!    PURPOSE
00008 !!    -------
00009 !!
00010 !!    METHOD
00011 !!    ------
00012 !!
00013 !!
00014 !!    EXTERNAL
00015 !!    --------
00016 !!
00017 !!    IMPLICIT ARGUMENTS
00018 !!    ------------------
00019 !!
00020 !!    REFERENCE
00021 !!    ---------
00022 !!
00023 !!    AUTHOR
00024 !!    ------
00025 !!
00026 !!    V. Masson        Meteo-France
00027 !!
00028 !!    MODIFICATION
00029 !!    ------------
00030 !!
00031 !!    Original    08/01/98
00032 !!
00033 !----------------------------------------------------------------------------
00034 !
00035 !*    0.     DECLARATION
00036 !            -----------
00037 !
00038 !
00039 !
00040 USE MODE_WRITE_COVER_TEX
00041 
00042 USE MODD_WRITE_COVER_TEX,ONLY : NTEX, CNAME, CLANG, NLINES
00043 USE MODD_SURF_PAR,       ONLY : XUNDEF
00044 USE MODD_DATA_COVER,     ONLY : XDATA_SEA, XDATA_WATER, XDATA_NATURE, XDATA_TOWN
00045 
00046 USE MODD_DATA_COVER_PAR, ONLY : JPCOVER
00047 !
00048 !
00049 USE YOMHOOK   ,ONLY : LHOOK,   DR_HOOK
00050 USE PARKIND1  ,ONLY : JPRB
00051 !
00052 IMPLICIT NONE
00053 !
00054 !*    0.1    Declaration of arguments
00055 !            ------------------------
00056 !
00057 !
00058 !*    0.2    Declaration of local variables
00059 !            ------------------------------
00060 !
00061 !
00062 !
00063 INTEGER :: I,IP
00064 !
00065  CHARACTER(LEN=5), DIMENSION(4       ) :: YDATA_SURFTYPE! main surface type
00066  CHARACTER(LEN=6)                      :: YSTRING6
00067 !
00068  CHARACTER(LEN=200):: YFMT  ! fortran format
00069 !
00070 LOGICAL           :: GLINE ! flag to write an additional horizontal line
00071 REAL(KIND=JPRB) :: ZHOOK_HANDLE
00072 !
00073 !-------------------------------------------------------------------------------
00074 !
00075 IF (LHOOK) CALL DR_HOOK('WRITE_COVER_TEX_COVER',0,ZHOOK_HANDLE)
00076 IF (NTEX==0 .AND. LHOOK) CALL DR_HOOK('WRITE_COVER_TEX_COVER',1,ZHOOK_HANDLE)
00077 IF (NTEX==0) RETURN
00078 GLINE = .FALSE.
00079 !
00080 !
00081 I=0
00082 DO 
00083 
00084   IF (I==JPCOVER) EXIT
00085 
00086   WRITE(NTEX,*) 
00087 '\medskip\'  WRITE(NTEX,*) '\begin{tabular}{||r|l||c|c|c|c|c||}
00088 '  WRITE(NTEX,*) '\hline
00089 '  WRITE(NTEX,*) '\hline
00090 '  IF (CLANG=='EN
00091 ') THEN    WRITE(NTEX,*) '&& urban and & cultivated and &inland waters&seas and
00092 '    WRITE(NTEX,*) '&Cover Type& artificial areas & natural areas&&oceans
00093 
00094 
00095 
00096 
00097 '  ELSE    WRITE(NTEX,*) "&& zones urbanis\'ees & zones cultiv\'ees &eaux int\'erieures& mers et\\"    WRITE(NTEX,*) "&Type de Surface& ou artificielles & ou naturelles &&oc\'eans\\"  END IF  WRITE(NTEX,*) '\hline
00098 '  WRITE(NTEX,*) '\hline
00099 
00100 
00101 
00102 
00103 
00104 
00105 
00106 '  IP=0  DO     IF (I==JPCOVER) EXIT    I=I+1    IF (XDATA_TOWN(I)+XDATA_NATURE(I)+XDATA_WATER(I)+XDATA_SEA(I)>0.) THEN     IP=IP+1     IF (XDATA_TOWN  (I)==0.) THEN        YDATA_SURFTYPE(1) = '    
00107 
00108 '      ELSE        WRITE(YFMT,'(A2,I1,A1,I1,A1)') '(F',NB(XDATA_TOWN(I)),'.',DEC(XDATA_TOWN(I)),')
00109 
00110 
00111 
00112 
00113 '        WRITE(YSTRING6, FMT=YFMT) XDATA_TOWN(I)        YDATA_SURFTYPE(1) = YSTRING6      END IF      IF (XDATA_NATURE(I)==0.) THEN        YDATA_SURFTYPE(2) = '    
00114 
00115 '      ELSE        WRITE(YFMT,'(A2,I1,A1,I1,A1)') '(F',NB(XDATA_NATURE(I)),'.',DEC(XDATA_NATURE(I)),')
00116 
00117 
00118 
00119 
00120 '        WRITE(YSTRING6, FMT=YFMT) XDATA_NATURE(I)        YDATA_SURFTYPE(2) = YSTRING6      END IF      IF (XDATA_WATER (I)==0.) THEN        YDATA_SURFTYPE(3) = '    
00121 
00122 '      ELSE        WRITE(YFMT,'(A2,I1,A1,I1,A1)') '(F',NB(XDATA_WATER(I)),'.',DEC(XDATA_WATER(I)),')
00123 
00124 
00125 
00126 
00127 '        WRITE(YSTRING6, FMT=YFMT) XDATA_WATER(I)        YDATA_SURFTYPE(3) = YSTRING6      END IF      IF (XDATA_SEA (I)==0.) THEN        YDATA_SURFTYPE(4) = '    
00128 
00129 '      ELSE        WRITE(YFMT,'(A2,I1,A1,I1,A1)') '(F',NB(XDATA_SEA(I)),'.',DEC(XDATA_SEA(I)),')
00130 
00131 
00132 
00133 
00134 
00135 '        WRITE(YSTRING6, FMT=YFMT) XDATA_SEA(I)        YDATA_SURFTYPE(4) = YSTRING6      END IF      WRITE(NTEX, FMT=*) &          I,' & ',CNAME(I),' & ',YDATA_SURFTYPE(1),' & ',YDATA_SURFTYPE(2),' & 
00136 ',&                  YDATA_SURFTYPE(3),' & ', YDATA_SURFTYPE(4), ' 
00137 
00138 '        GLINE=.TRUE.      WRITE(NTEX,*) '\hline
00139 
00140 
00141 
00142 
00143 
00144 '      CALL HLINE(NTEX,GLINE,I)      IF (IP==NLINES) EXIT    END IF  END DO  WRITE(NTEX,*) '\end{tabular}
00145 
00146 
00147 
00148 '!!-------------------------------------------------------------------------------!  WRITE(NTEX,*) '\clearpage
00149 
00150 
00151 
00152 '!!ENDDOIF (LHOOK) CALL DR_HOOK('WRITE_COVER_TEX_COVER
00153 
00154 
00155 
00156