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 7060 for branches/2016/dev_v3_6_STABLE_r6506_AGRIF_LIM3/NEMOGCM/NEMO/OPA_SRC – NEMO

Ignore:
Timestamp:
2016-10-20T16:16:29+02:00 (8 years ago)
Author:
clem
Message:

update agrif+lim3

Location:
branches/2016/dev_v3_6_STABLE_r6506_AGRIF_LIM3/NEMOGCM/NEMO/OPA_SRC/SBC
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/2016/dev_v3_6_STABLE_r6506_AGRIF_LIM3/NEMOGCM/NEMO/OPA_SRC/SBC/sbcice_lim.F90

    r6994 r7060  
    118118      IF( nn_timing == 1 )  CALL timing_start('sbc_ice_lim') 
    119119 
     120      ! clem: it is important to initialize agrif_lim3 variables here and not in sbc_lim_init 
     121# if defined key_agrif 
     122      IF( kt == nit000 ) THEN 
     123         IF( .NOT. Agrif_Root() )   CALL Agrif_InitValues_cont_lim3 
     124      ENDIF 
     125# endif 
     126 
    120127      !-----------------------! 
    121128      ! --- Ice time step --- ! 
     
    189196            ! 
    190197         ENDIF 
     198 
    191199         ! --- 
    192200#if defined key_agrif 
     
    314322      IF( ierr /= 0 )   CALL ctl_stop('STOP', 'sbc_lim_init : unable to allocate ice arrays') 
    315323      ! 
    316       !                                ! adequation jpk versus ice/snow layers/categories 
    317       IF( jpl > jpk .OR. (nlay_i+1) > jpk .OR. nlay_s > jpk )   & 
    318          &      CALL ctl_stop( 'STOP',                          & 
    319          &     'sbc_lim_init: the 3rd dimension of workspace arrays is too small.',   & 
    320          &     'use more ocean levels or less ice/snow layers/categories.' ) 
    321       ! 
    322324      CALL lim_dyn_init                ! set ice dynamics parameters 
    323325      ! 
     
    364366      IF( nstock == 0 )   nstock = nlast + 1 
    365367      ! 
    366 # if defined key_agrif 
    367       IF( .NOT. Agrif_Root() )   CALL Agrif_InitValues_cont_lim3 
    368 # endif 
    369368      ! 
    370369   END SUBROUTINE sbc_lim_init 
  • branches/2016/dev_v3_6_STABLE_r6506_AGRIF_LIM3/NEMOGCM/NEMO/OPA_SRC/SBC/sbcmod.F90

    r6459 r7060  
    111111 
    112112      !                          ! overwrite namelist parameter using CPP key information 
    113       IF( Agrif_Root() ) THEN                ! AGRIF zoom 
    114         IF( lk_lim2 )   nn_ice      = 2 
    115         IF( lk_lim3 )   nn_ice      = 3 
    116         IF( lk_cice )   nn_ice      = 4 
    117       ENDIF 
    118       IF( cp_cfg == 'gyre' ) THEN            ! GYRE configuration 
    119           ln_ana      = .TRUE.    
    120           nn_ice      =   0 
    121       ENDIF 
    122  
     113#if defined key_agrif 
     114      IF( Agrif_Root() ) THEN                ! AGRIF zoom (cf r1242: possibility to run without ice in fine grid) 
     115         IF( lk_lim2 )   nn_ice      = 2 
     116         IF( lk_lim3 )   nn_ice      = 3 
     117         IF( lk_cice )   nn_ice      = 4 
     118      ENDIF 
     119#else 
     120      IF( lk_lim2 )   nn_ice      = 2 
     121      IF( lk_lim3 )   nn_ice      = 3 
     122      IF( lk_cice )   nn_ice      = 4      
     123#endif 
     124 
     125      IF( cp_cfg == 'gyre' )   ln_ana = .TRUE.          ! GYRE configuration 
     126              
    123127      IF(lwp) THEN               ! Control print 
    124128         WRITE(numout,*) '        Namelist namsbc (partly overwritten with CPP key setting)' 
     
    195199 
    196200      !                                            ! restartability    
    197       IF( ( nn_ice == 2 .OR. nn_ice ==3 ) .AND. .NOT.( ln_blk_clio .OR. ln_blk_core .OR. ln_cpl ) )   & 
    198          &   CALL ctl_stop( 'LIM sea-ice model requires a bulk formulation or coupled configuration' ) 
    199201      IF( nn_ice == 4 .AND. .NOT.( ln_blk_core .OR. ln_cpl ) )   & 
    200202         &   CALL ctl_stop( 'CICE sea-ice model requires ln_blk_core or ln_cpl' ) 
     
    303305      ! 
    304306      IF( nn_ice == 3      )   CALL sbc_lim_init               ! LIM3 initialisation 
    305  
     307      ! 
    306308      IF( nn_ice == 4      )   CALL cice_sbc_init( nsbc )      ! CICE initialisation 
    307309       
Note: See TracChangeset for help on using the changeset viewer.