source: NEMO/branches/2020/dev_r12563_ASINTER-06_ABL_improvement/src/OCE/DIU/diu_layers.F90 @ 13900

Last change on this file since 13900 was 12489, checked in by davestorkey, 16 months ago

Preparation for new timestepping scheme #2390.
Main changes:

  1. Initial euler timestep now handled in stp and not in TRA/DYN routines.
  2. Renaming of all timestep parameters. In summary, the namelist parameter is now rn_Dt and the current timestep is rDt (and rDt_ice, rDt_trc etc).
  3. Renaming of a few miscellaneous parameters, eg. atfp → rn_atfp (namelist parameter used everywhere) and rau0 → rho0.

This version gives bit-comparable results to the previous version of the trunk.

File size: 2.0 KB
Line 
1MODULE diu_layers
2   !!======================================================================
3   !!                       ***  MODULE diu_layers **
4   !! Apply coolskin and warm layer calculations
5   !!======================================================================
6   !! History :  3.7  ! 2015-11  (J. While)  Original code
7
8   USE diu_bulk     ! diurnal SST bulk routines  (diurnal_sst_takaya routine)
9   USE diu_coolskin ! diurnal cool skin correction (diurnal_sst_coolskin routine)   
10   USE oce
11   USE iom
12   USE sbc_oce
13   USE sbcmod       ! surface boundary condition       (sbc     routine)
14   
15   IMPLICIT NONE
16   PRIVATE
17
18   PUBLIC diurnal_sst_bulk_init      ! called by nemogcm.F90
19   PUBLIC diurnal_sst_coolskin_init  ! called by nemogcm.F90
20   PUBLIC diurnal_layers             ! called by step.F90 or step_diu.F90
21
22   !!----------------------------------------------------------------------
23   !! NEMO/OCE 4.0 , NEMO Consortium (2018)
24   !! $Id: step_diu.F90 10922 2019-05-02 15:10:39Z acc $
25   !! Software governed by the CeCILL license (see ./LICENSE)
26   !!----------------------------------------------------------------------
27
28   CONTAINS
29
30   SUBROUTINE diurnal_layers( kstp ) 
31      INTEGER, INTENT(in) ::   kstp   ! ocean time-step index
32      !!----------------------------------------------------------------------
33      !!                     ***  ROUTINE diurnal_layers  ***
34      !!                       
35      !! ** Purpose : - Apply coolskin and warm layer calculations
36      !!   
37      !!----------------------------------------------------------------------
38     
39      ! Cool skin
40
41      CALL diurnal_sst_coolskin_step( qns, taum, rhop(:,:,1), rn_Dt)
42
43      CALL iom_put( "sst_wl"   , x_dsst               )    ! warm layer (write out before update below).
44      CALL iom_put( "sst_cs"   , x_csdsst             )    ! cool skin
45
46      ! Diurnal warm layer model       
47      CALL diurnal_sst_takaya_step( kstp, qsr, qns, taum, rhop(:,:,1), rn_Dt) 
48
49   END SUBROUTINE diurnal_layers 
50   
51END MODULE diu_layers
Note: See TracBrowser for help on using the repository browser.