SURFEX v7.3
General documentation of Surfex
 All Classes Files Functions Variables Typedefs
/home/dasprezs/EXPORT_v7_3/src/SURFEX/write_cover_tex_water.F90
Go to the documentation of this file.
00001 !     ##########################
00002       SUBROUTINE WRITE_COVER_TEX_WATER
00003 !     ##########################
00004 !
00005 !!**** *WRITE_COVER_TEX* writes the water 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 !!    03/2011 E. Bazile (MK10) albedo from Marat Khairoutdinov
00033 !----------------------------------------------------------------------------
00034 !
00035 !*    0.     DECLARATION
00036 !            -----------
00037 !
00038 !
00039 !
00040 USE MODE_WRITE_COVER_TEX
00041 !
00042 USE MODI_ALBEDO_TA96
00043 !
00044 USE MODD_CSTS,           ONLY : XPI
00045 USE MODD_WRITE_COVER_TEX,ONLY : NTEX, CNAME, CLANG, NLINES
00046 USE MODD_SURF_PAR,       ONLY : XUNDEF
00047 !
00048 USE MODD_DATA_COVER,     ONLY : XDATA_SEA, XDATA_WATER
00049 USE MODD_DATA_COVER_PAR, ONLY : JPCOVER
00050 USE MODD_WATER_PAR,      ONLY : XALBWAT, XALBSCA_WAT, XEMISWAT
00051 USE MODD_SEAFLUX_n,      ONLY : CSEA_ALB
00052 !
00053 !
00054 USE YOMHOOK   ,ONLY : LHOOK,   DR_HOOK
00055 USE PARKIND1  ,ONLY : JPRB
00056 !
00057 IMPLICIT NONE
00058 !
00059 !*    0.1    Declaration of arguments
00060 !            ------------------------
00061 !
00062 !
00063 !*    0.2    Declaration of local variables
00064 !            ------------------------------
00065 !
00066 !
00067 !
00068 INTEGER :: I,IP
00069 !
00070  CHARACTER(LEN=6)  :: YSTRING6
00071 !
00072  CHARACTER(LEN=200):: YFMT  ! fortran format
00073 !
00074 LOGICAL           :: GLINE ! flag to write an additional horizontal line
00075 !
00076  CHARACTER(LEN=6), DIMENSION(6) :: YDATA_WATER   ! water parameters
00077 REAL,             DIMENSION(1) :: ZZENITH       ! zenithal angle
00078 REAL,             DIMENSION(1) :: ZALBEDO       ! direct albedo
00079 REAL(KIND=JPRB) :: ZHOOK_HANDLE
00080 !-------------------------------------------------------------------------------
00081 !
00082 IF (LHOOK) CALL DR_HOOK('WRITE_COVER_TEX_WATER',0,ZHOOK_HANDLE)
00083 IF (NTEX==0 .AND. LHOOK) CALL DR_HOOK('WRITE_COVER_TEX_WATER',1,ZHOOK_HANDLE)
00084 IF (NTEX==0) RETURN
00085 !
00086 I=0
00087 DO 
00088   IF (I==JPCOVER) EXIT
00089   IF (CLANG=='EN') THEN
00090     WRITE(NTEX,*) '{\bf water parameters}\\'
00091   ELSE
00092     WRITE(NTEX,*) '{\bf param\`etres aquatiques}\\'
00093   END IF
00094   WRITE(NTEX,*) 
00095 '\medskip\'  WRITE(NTEX,*) '\begin{tabular}{||r|l||c|c|c|c||}
00096 '  WRITE(NTEX,*) '\hline
00097 '  WRITE(NTEX,*) '\hline
00098 '  WRITE(NTEX,*) '&&$\alpha$&$\alpha_{dir}$&$\alpha_{sca}$&$\epsilon$
00099 '  WRITE(NTEX,*) '\hline
00100 '  WRITE(NTEX,*) '\hline
00101 
00102 
00103 
00104 
00105 
00106 
00107 '  IP=0  DO    IF (I==JPCOVER) EXIT    I=I+1    IF (XDATA_SEA(I) + XDATA_WATER(I)>0.) THEN      IP=IP+1      WRITE(YSTRING6, FMT='(F3.2)
00108 
00109 
00110 
00111 
00112 ') XALBWAT      YDATA_WATER(1) = YSTRING6      ZZENITH(:) = 0.      ZALBEDO(:) = ALBEDO_TA96(ZZENITH)      WRITE(YFMT,'(A2,I1,A1,I1,A1)') '(F',NB(ZALBEDO(1)),'.',DEC(ZALBEDO(1)),')
00113 
00114 
00115 
00116 
00117 
00118 '      WRITE(YSTRING6, FMT=YFMT) ZALBEDO(1)      YDATA_WATER(2) = YSTRING6      ZZENITH(:) = XPI/2.      ZALBEDO(:) = ALBEDO_TA96(ZZENITH)        WRITE(YFMT,'(A2,I1,A1,I1,A1)') '(F',NB(ZALBEDO(1)),'.',DEC(ZALBEDO(1)),')
00119 
00120 
00121 
00122 '      WRITE(YSTRING6, FMT=YFMT) ZALBEDO(1)      YDATA_WATER(3) = YSTRING6      WRITE(YSTRING6, FMT='(F3.2)
00123 
00124 ') XALBSCA_WAT      YDATA_WATER(4) = YSTRING6      WRITE(YSTRING6, FMT='(F4.2)
00125 
00126 
00127 
00128 ') XEMISWAT      YDATA_WATER(5) = YSTRING6      WRITE(NTEX,FMT=*) &          I,' & ',CNAME(I),' & ',YDATA_WATER(1),' & 
00129 ', &            YDATA_WATER(2),'-',YDATA_WATER(3),' & 
00130 ', &            YDATA_WATER(4),' & 
00131 ', &            YDATA_WATER(5),' 
00132 '        WRITE(NTEX,*) '\hline
00133 
00134 
00135 
00136 
00137 
00138 '      GLINE=.TRUE.    END IF    CALL HLINE(NTEX,GLINE,I)    IF (IP==NLINES) EXIT  END DO  WRITE(NTEX,*) '\end{tabular}
00139 
00140 
00141 '!-------------------------------------------------------------------------------!  WRITE(NTEX,*) '\clearpage
00142 
00143 
00144 '!ENDDOIF (LHOOK) CALL DR_HOOK('WRITE_COVER_TEX_WATER
00145 
00146 
00147