- Timestamp:
- 2010-10-29T08:15:27+02:00 (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/nemo_v3_3_beta/NEMOGCM/NEMO/OPA_SRC/DIA/diahsb.F90
r2287 r2334 2 2 !!====================================================================== 3 3 !! *** MODULE diahsb *** 4 !! Ocean diagnostics: Heat salt and volume budgets4 !! Ocean diagnostics: Heat, salt and volume budgets 5 5 !!====================================================================== 6 !! History : NEMO 3.3 ! 2010-09 (M. Leclair) Original code 7 !!---------------------------------------------------------------------- 8 !! * Modules used 6 !! History : 3.3 ! 2010-09 (M. Leclair) Original code 7 !!---------------------------------------------------------------------- 8 9 !!---------------------------------------------------------------------- 9 10 USE oce ! ocean dynamics and tracers 10 11 USE dom_oce ! ocean space and time domain … … 22 23 PRIVATE 23 24 24 !! * Routine accessibility 25 PUBLIC dia_hsb ! routine called by step.F90 26 PUBLIC dia_hsb_init ! routine called by opa.F90 27 28 LOGICAL , PUBLIC :: ln_diahsb = .FALSE. !: check the heat and salt budgets 29 30 !! * Module variables 25 PUBLIC dia_hsb ! routine called by step.F90 26 PUBLIC dia_hsb_init ! routine called by opa.F90 27 28 LOGICAL, PUBLIC :: ln_diahsb = .FALSE. !: check the heat and salt budgets 29 31 30 INTEGER :: numhsb ! 32 31 REAL(dp) :: surf_tot , vol_tot ! … … 45 44 !! NEMO/OPA 3.3 , NEMO Consortium (2010) 46 45 !! $Id$ 47 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt)46 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) 48 47 !!---------------------------------------------------------------------- 49 48 … … 54 53 !! *** ROUTINE dia_hsb *** 55 54 !! 56 !! ** Purpose: Compute the ocean global heat content, salt content and volume 57 !! non conservation 55 !! ** Purpose: Compute the ocean global heat content, salt content and volume conservation 58 56 !! 59 57 !! ** Method : - Compute the deviation of heat content, salt content and volume 60 !! at the current time step from their values at nit00061 !! - Compute the contribution of forcing and remove it from these62 !! deviations58 !! at the current time step from their values at nit000 59 !! - Compute the contribution of forcing and remove it from these deviations 60 !! 63 61 !! ** Action : Write the results in the 'heat_salt_volume_budgets.txt' ASCII file 64 62 !!--------------------------------------------------------------------------- … … 82 80 z_frc_trd_s = SUM( sbc_tsc(:,:,jp_sal) * surf(:,:) ) ! salt fluxes 83 81 ! Add penetrative solar radiation 84 IF( ln_traqsr ) z_frc_trd_t = z_frc_trd_t + ro0cpr * SUM( qsr (:,:) * surf(:,:) ) 85 #if defined key_trabbc 82 IF( ln_traqsr ) z_frc_trd_t = z_frc_trd_t + ro0cpr * SUM( qsr (:,:) * surf(:,:) ) 86 83 ! Add geothermal heat flux 87 IF( lk_trabbc ) z_frc_trd_t = z_frc_trd_t + ro0cpr * SUM( qgh_trd0(:,:) * surf(:,:) ) 88 #endif 84 IF( ln_trabbc ) z_frc_trd_t = z_frc_trd_t + ro0cpr * SUM( qgh_trd0(:,:) * surf(:,:) ) 89 85 IF( lk_mpp ) THEN 90 86 CALL mpp_sum( z_frc_trd_v ) … … 143 139 144 140 9020 FORMAT(I5,11D15.7) 145 141 ! 146 142 END SUBROUTINE dia_hsb 143 147 144 148 145 SUBROUTINE dia_hsb_init … … 161 158 INTEGER :: jk ! dummy loop indice 162 159 INTEGER :: ierror ! local integer 163 160 !! 164 161 NAMELIST/namhsb/ ln_diahsb 165 162 !!---------------------------------------------------------------------- 166 163 ! 167 164 REWIND ( numnam ) ! Read Namelist namhsb 168 165 READ ( numnam, namhsb ) 169 166 ! 170 167 IF(lwp) THEN ! Control print 171 168 WRITE(numout,*) … … 175 172 WRITE(numout,*) ' Switch for hsb diagnostic (T) or not (F) ln_diahsb = ', ln_diahsb 176 173 ENDIF 177 !!---------------------------------------------------------------------------178 174 179 175 IF( .NOT. ln_diahsb ) RETURN … … 218 214 vol_tot = vol_tot + SUM( surf(:,:) * tmask(:,:,jk) & 219 215 & * fse3t_n(:,:,jk) ) 220 END DO216 END DO 221 217 IF( lk_mpp ) THEN 222 218 CALL mpp_sum( vol_tot )
Note: See TracChangeset
for help on using the changeset viewer.