New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 6004 for branches/2015/dev_r5836_NOC3_vvl_by_default/NEMOGCM/NEMO/LIM_SRC_2 – NEMO

Ignore:
Timestamp:
2015-12-04T17:05:58+01:00 (9 years ago)
Author:
gm
Message:

#1613: vvl by default, step III: Merge with the trunk (free surface simplification) (see wiki)

Location:
branches/2015/dev_r5836_NOC3_vvl_by_default/NEMOGCM/NEMO/LIM_SRC_2
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/2015/dev_r5836_NOC3_vvl_by_default/NEMOGCM/NEMO/LIM_SRC_2/limsbc_2.F90

    r5866 r6004  
    2929   USE sbc_ice          ! surface boundary condition: ice 
    3030   USE sbc_oce          ! surface boundary condition: ocean 
    31    USE sbccpl 
     31   USE sbccpl           ! surface boundary condition: coupled interface 
    3232   USE oce       , ONLY : sshn, sshb, snwice_mass, snwice_mass_b, snwice_fmass  
    3333   USE albedo           ! albedo parameters 
     34   ! 
    3435   USE lbclnk           ! ocean lateral boundary condition - MPP exchanges 
    3536   USE lib_mpp          ! MPP library 
     
    4344   PRIVATE 
    4445 
    45    PUBLIC   lim_sbc_init_2     ! called by ice_init_2 
    46    PUBLIC   lim_sbc_flx_2      ! called by sbc_ice_lim_2 
    47    PUBLIC   lim_sbc_tau_2      ! called by sbc_ice_lim_2 
     46   PUBLIC   lim_sbc_init_2   ! called by ice_init_2 
     47   PUBLIC   lim_sbc_flx_2    ! called by sbc_ice_lim_2 
     48   PUBLIC   lim_sbc_tau_2    ! called by sbc_ice_lim_2 
    4849 
    4950   REAL(wp)  ::   r1_rdtice            ! = 1. / rdt_ice  
     
    5253   REAL(wp)  ::   rone   = 1._wp       !     -      - 
    5354   ! 
    54    REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:) ::   soce_0, sice_0   ! constant SSS and ice salinity used in levitating sea-ice case 
     55   REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:) ::   soce_0, sice_0       ! fix SSS and ice salinity used in levitating case 0 
    5556   REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:) ::   utau_oce, vtau_oce   ! air-ocean surface i- & j-stress              [N/m2] 
    5657   REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:) ::   tmod_io              ! modulus of the ice-ocean relative velocity   [m/s] 
     
    101102      !!--------------------------------------------------------------------- 
    102103      INTEGER, INTENT(in) ::   kt    ! number of iteration 
    103       !! 
     104      ! 
    104105      INTEGER  ::   ji, jj   ! dummy loop indices 
    105106      INTEGER  ::   ii0, ii1, ij0, ij1         ! local integers 
     
    113114      REAL(wp), POINTER, DIMENSION(:,:,:) ::   zalb, zalbp   ! 2D/3D workspace 
    114115      !!--------------------------------------------------------------------- 
    115       
     116      ! 
    116117      CALL wrk_alloc( jpi, jpj, zqnsoce ) 
    117118      CALL wrk_alloc( jpi, jpj, 1, zalb, zalbp ) 
    118  
    119       SELECT CASE( nn_ice_embd )                 ! levitating or embedded sea-ice option 
    120         CASE( 0    )   ;   zswitch = 1           ! (0) standard levitating sea-ice : salt exchange only 
    121         CASE( 1, 2 )   ;   zswitch = 0           ! (1) levitating sea-ice: salt and volume exchange but no pressure effect 
    122                                                  ! (2) embedded sea-ice : salt and volume fluxes and pressure 
    123       END SELECT                                 !     
     119      ! 
     120      SELECT CASE( nn_ice_embd )             ! levitating or embedded sea-ice option 
     121         CASE( 0    )   ;   zswitch = 1         ! (0) old levitating sea-ice : salt exchange only 
     122         CASE( 1, 2 )   ;   zswitch = 0         ! (1) levitating sea-ice: salt and volume exchange but no pressure effect 
     123         !                                      ! (2) embedded sea-ice : salt and volume fluxes and pressure 
     124      END SELECT 
    124125 
    125126      !------------------------------------------! 
     
    302303      INTEGER ,                     INTENT(in) ::   kt               ! ocean time-step index 
    303304      REAL(wp), DIMENSION(jpi,jpj), INTENT(in) ::   pu_oce, pv_oce   ! surface ocean currents 
    304       !! 
     305      ! 
    305306      INTEGER  ::   ji, jj   ! dummy loop indices 
    306307      REAL(wp) ::   zfrldu, zat_u, zu_i, zutau_ice, zu_t, zmodt   ! local scalar 
     
    434435      !! ** input   : Namelist namicedia 
    435436      !!------------------------------------------------------------------- 
    436       ! 
    437       INTEGER :: jk           ! local integer 
     437      INTEGER ::   jk   ! local integer 
     438      !!------------------------------------------------------------------- 
    438439      ! 
    439440      IF(lwp) WRITE(numout,*) 
     
    471472!!gm I really don't like this staff here...  Find a way to put that elsewhere or differently 
    472473!!gm 
    473          IF( .NOT. ln_linssh ) THEN 
     474         IF( .NOT.ln_linssh ) THEN 
    474475 
    475476            do jk = 1,jpkm1                     ! adjust initial vertical scale factors 
  • branches/2015/dev_r5836_NOC3_vvl_by_default/NEMOGCM/NEMO/LIM_SRC_2/limthd_2.F90

    r5845 r6004  
    1818   USE phycst           ! physical constants 
    1919   USE dom_oce          ! ocean space and time domain variables 
    20    USE domvvl 
    21    USE lbclnk 
     20   USE domvvl           ! ocean domain 
     21   USE ice_2            ! LIM sea-ice variables 
     22   USE sbc_oce          ! surface boundary condition: ocean 
     23   USE sbc_ice          ! surface boundary condition: sea-ice 
     24   USE thd_ice_2        ! LIM thermodynamic sea-ice variables 
     25   USE dom_ice_2        ! LIM sea-ice domain 
     26   USE limthd_zdf_2     ! 
     27   USE limthd_lac_2     ! 
     28   USE limtab_2         ! 
     29   ! 
    2230   USE in_out_manager   ! I/O manager 
    23    USE lib_mpp 
     31   USE lbclnk           ! 
     32   USE lib_mpp          ! 
    2433   USE wrk_nemo         ! work arrays 
    2534   USE iom              ! IOM library 
    26    USE ice_2            ! LIM sea-ice variables 
    27    USE sbc_oce          !  
    28    USE sbc_ice          !  
    29    USE thd_ice_2        ! LIM thermodynamic sea-ice variables 
    30    USE dom_ice_2        ! LIM sea-ice domain 
    31    USE limthd_zdf_2 
    32    USE limthd_lac_2 
    33    USE limtab_2 
    3435   USE prtctl           ! Print control 
    3536   USE lib_fortran      ! Fortran utilities (allows no signed zero when 'key_nosignedzero' defined)   
     
    4344   REAL(wp) ::   epsi16 = 1.e-16   ! 
    4445   REAL(wp) ::   epsi04 = 1.e-04   ! 
    45    REAL(wp) ::   rzero  = 0.e0     ! 
    46    REAL(wp) ::   rone   = 1.e0     ! 
     46   REAL(wp) ::   rzero  = 0._wp    ! 
     47   REAL(wp) ::   rone   = 1._wp    ! 
    4748 
    4849   !! * Substitutions 
     
    7475      !!--------------------------------------------------------------------- 
    7576      INTEGER, INTENT(in) ::   kt     ! number of iteration 
    76       !! 
     77      ! 
    7778      INTEGER  ::   ji, jj               ! dummy loop indices 
    7879      INTEGER  ::   nbpb                 ! nb of icy pts for thermo. cal. 
Note: See TracChangeset for help on using the changeset viewer.