SURFEX v7.3
General documentation of Surfex
 All Classes Files Functions Variables Typedefs
/home/dasprezs/EXPORT_v7_3/src/SURFEX/write_diag_seafluxn.F90
Go to the documentation of this file.
00001 !     #########
00002 SUBROUTINE WRITE_DIAG_SEAFLUX_n(HPROGRAM,HWRITE)
00003 !     ###############################################################################
00004 !
00005 !!****  *WRITE_DIAG_SEAFLUX_n * - diagnostics for SEAFLUX
00006 !!
00007 !!    PURPOSE
00008 !!    -------
00009 !
00010 !!**  METHOD
00011 !!    ------
00012 !!
00013 !!    REFERENCE
00014 !!    ---------
00015 !!      
00016 !!
00017 !!    AUTHOR
00018 !!    ------
00019 !!     V. Masson 
00020 !!
00021 !!    MODIFICATIONS
00022 !!    -------------
00023 !!      Original    01/2004
00024 !!------------------------------------------------------------------
00025 !
00026 
00027 !
00028 USE MODD_SURF_PAR,       ONLY : XUNDEF
00029 USE MODD_SEAFLUX_n,      ONLY : TTIME
00030 USE MODD_DIAG_OCEAN_n,   ONLY : LDIAG_OCEAN
00031 USE MODD_DIAG_SEAFLUX_n, ONLY : XDIAG_TSTEP
00032 !
00033 USE MODI_WRITE_DIAG_SEB_SEAFLUX_n
00034 USE MODI_WRITE_DIAG_SEB_OCEAN_n
00035 ! 
00036 !
00037 USE YOMHOOK   ,ONLY : LHOOK,   DR_HOOK
00038 USE PARKIND1  ,ONLY : JPRB
00039 !
00040 IMPLICIT NONE
00041 !
00042 !*      0.1    declarations of arguments
00043 !
00044  CHARACTER(LEN=6),   INTENT(IN)  :: HPROGRAM ! program calling surf. schemes
00045  CHARACTER(LEN=3),   INTENT(IN)  :: HWRITE   ! 'PGD' : only physiographic fields are written
00046 REAL(KIND=JPRB) :: ZHOOK_HANDLE
00047 !                                           ! 'ALL' : all fields are written
00048 !
00049 !*      0.2    declarations of local variables
00050 !
00051 !-------------------------------------------------------------------------------------
00052 !
00053 IF (LHOOK) CALL DR_HOOK('WRITE_DIAG_SEAFLUX_N',0,ZHOOK_HANDLE)
00054 IF (HWRITE/='PGD') THEN
00055 !        
00056    IF (XDIAG_TSTEP==XUNDEF .OR. ABS(NINT(TTIME%TIME/XDIAG_TSTEP)*XDIAG_TSTEP-TTIME%TIME)<1.E-3 ) THEN
00057       CALL WRITE_DIAG_SEB_SEAFLUX_n(HPROGRAM)
00058       IF (LDIAG_OCEAN) CALL WRITE_DIAG_SEB_OCEAN_n(HPROGRAM)
00059    END IF
00060 !        
00061 ENDIF
00062 IF (LHOOK) CALL DR_HOOK('WRITE_DIAG_SEAFLUX_N',1,ZHOOK_HANDLE)
00063 !-------------------------------------------------------------------------------------
00064 !
00065 END SUBROUTINE WRITE_DIAG_SEAFLUX_n