SURFEX  V8_0
Surfex V8_0 release
 All Classes Files Functions Variables
diag_inline_surf_atmn.F90
Go to the documentation of this file.
1 !SFX_LIC Copyright 1994-2014 CNRS, Meteo-France and Universite Paul Sabatier
2 !SFX_LIC This is part of the SURFEX software governed by the CeCILL-C licence
3 !SFX_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
4 !SFX_LIC for details. version 1.
5 ! #########
6  SUBROUTINE diag_inline_surf_atm_n (DGU, &
7  phw, pht, pps, prhoa, ptrad, pemis, psfu, psfv, psfco2)
8 ! ###############################################################################!
9 !!**** *DIAG_INLINE_SURF_ATM_n * - Computes diagnostics during SURF_ATM time-step
10 !!
11 !! PURPOSE
12 !! -------
13 !
14 !!** METHOD
15 !! ------
16 !!
17 !! REFERENCE
18 !! ---------
19 !!
20 !!
21 !! AUTHOR
22 !! ------
23 !! P. LeMoigne
24 !!
25 !! MODIFICATIONS
26 !! -------------
27 !! Original 02/2006
28 !!------------------------------------------------------------------
29 !
30 
31 !
32 !
33 !
34 !
36 !
37 USE yomhook ,ONLY : lhook, dr_hook
38 USE parkind1 ,ONLY : jprb
39 !
40 IMPLICIT NONE
41 !
42 !* 0.1 declarations of arguments
43 !
44 !
45 TYPE(diag_surf_atm_t), INTENT(INOUT) :: dgu
46 !
47 REAL, DIMENSION(:), INTENT(IN) :: phw ! atmospheric level height for wind
48 REAL, DIMENSION(:), INTENT(IN) :: pht ! atmospheric level height
49 REAL, DIMENSION(:), INTENT(IN) :: pps ! surface pressure
50 REAL, DIMENSION(:), INTENT(IN) :: prhoa ! air density
51 REAL, DIMENSION(:), INTENT(IN) :: ptrad ! radiative temperature at t (K)
52 REAL, DIMENSION(:), INTENT(IN) :: pemis ! emissivity at t (-)
53 REAL, DIMENSION(:), INTENT(IN) :: psfu ! zonal momentum flux (Pa)
54 REAL, DIMENSION(:), INTENT(IN) :: psfv ! meridian momentum flux (Pa)
55 REAL, DIMENSION(:), INTENT(IN) :: psfco2 ! CO2 flux (kg/m2/s)
56 REAL(KIND=JPRB) :: zhook_handle
57 !
58 !* 0.2 declarations of local variables
59 !
60 !-------------------------------------------------------------------------------------
61 !
62 IF (lhook) CALL dr_hook('DIAG_INLINE_SURF_ATM_N',0,zhook_handle)
63 IF (dgu%LCOEF) THEN
64  dgu%XDIAG_UREF = phw
65  dgu%XDIAG_ZREF = pht
66 END IF
67 !
68 dgu%XRHOA = prhoa
69 dgu%XPS = pps
70 dgu%XDIAG_TRAD = ptrad
71 dgu%XDIAG_EMIS = pemis
72 !
73 dgu%XSSO_FMU = psfu
74 dgu%XSSO_FMV = psfv
75 !
76 dgu%XAVG_SFCO2 = psfco2
77 !
78 IF (lhook) CALL dr_hook('DIAG_INLINE_SURF_ATM_N',1,zhook_handle)
79 !-------------------------------------------------------------------------------------
80 !
81 END SUBROUTINE diag_inline_surf_atm_n
subroutine diag_inline_surf_atm_n(DGU, PHW, PHT, PPS, PRHOA, PTRAD, PEMIS, PSFU, PSFV, PSFCO2)