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.
dom_ice_2.F90 in branches/2017/dev_r8126_ROBUST08_no_ghost/NEMOGCM/NEMO/LIM_SRC_2 – NEMO

source: branches/2017/dev_r8126_ROBUST08_no_ghost/NEMOGCM/NEMO/LIM_SRC_2/dom_ice_2.F90 @ 8809

Last change on this file since 8809 was 7646, checked in by timgraham, 7 years ago

Merge of dev_merge_2016 into trunk. UPDATE TO ARCHFILES NEEDED for XIOS2.
LIM_SRC_s/limrhg.F90 to follow in next commit due to change of kind (I'm unable to do it in this commit).
Merged using the following steps:

1) svn merge --reintegrate svn+ssh://forge.ipsl.jussieu.fr/ipsl/forge/projets/nemo/svn/trunk .
2) Resolve minor conflicts in sette.sh and namelist_cfg for ORCA2LIM3 (due to a change in trunk after branch was created)
3) svn commit
4) svn switch svn+ssh://forge.ipsl.jussieu.fr/ipsl/forge/projets/nemo/svn/trunk
5) svn merge svn+ssh://forge.ipsl.jussieu.fr/ipsl/forge/projets/nemo/svn/branches/2016/dev_merge_2016 .
6) At this stage I checked out a clean copy of the branch to compare against what is about to be committed to the trunk.
6) svn commit #Commit code to the trunk

In this commit I have also reverted a change to Fcheck_archfile.sh which was causing problems on the Paris machine.

  • Property svn:keywords set to Id
File size: 3.8 KB
Line 
1MODULE dom_ice_2
2   !!======================================================================
3   !!                   ***  MODULE  dom_ice  ***
4   !! LIM 2.0 Sea Ice :   Domain  variables
5   !!======================================================================
6   !! History :   2.0  !  03-08  (C. Ethe)  Free form and module
7   !!             3.3  !  2009-05 (G.Garric, C. Bricaud) addition of lim2_evp case
8   !!----------------------------------------------------------------------
9#if defined key_lim2
10   !!----------------------------------------------------------------------
11   !!   'key_lim2'                                       LIM2 sea-ice model
12   !!----------------------------------------------------------------------
13   !! NEMO/LIM2 3.3 , UCL - NEMO Consortium (2010)
14   !! $Id$
15   !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt)
16   !!----------------------------------------------------------------------
17   USE par_ice_2   ! LIM parameters
18
19   IMPLICIT NONE
20   PRIVATE
21
22   PUBLIC    dom_ice_alloc_2    ! Called from nemogcm.F90
23
24   LOGICAL, PUBLIC ::   l_jeq     = .TRUE.     !: Equator inside the domain flag
25
26   INTEGER, PUBLIC ::   njeq , njeqm1          !: j-index of the equator if it is inside the domain
27      !                                        !  (otherwise = jpj+10 (SH) or -10 (SH) )
28
29   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:)         ::   covrai            !: sine of geographic latitude
30   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:)         ::   area              !: surface of grid cell
31   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:)         ::   tms    , tmu      !: temperature and velocity points masks
32   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:,:)     ::   wght              !: weight of the 4 neighbours to compute averages
33   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:)         ::   tmv               !: y-velocity mask used for evp rheology
34
35   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:,:)     ::   akappa , bkappa   !: first and third group of metric coefficients
36   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:,:,:,:) ::   alambd            !: second group of metric coefficients
37   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:)         ::   tmf               !: F-points masks
38   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:)         ::   tmi               !: ice mask: =1 if ice thick > 0
39   !!----------------------------------------------------------------------
40   CONTAINS
41
42   INTEGER FUNCTION dom_ice_alloc_2()
43      !!----------------------------------------------------------------------
44      USE lib_mpp, ONLY:   ctl_warn   ! MPP library
45      INTEGER :: ierr(2)
46      !!----------------------------------------------------------------------
47      ierr(:) = 0
48      !
49      ALLOCATE( covrai(jpi,jpj)     , area(jpi,jpj) , tms(jpi,jpj) , tmu(jpi,jpj) ,     &
50         &      wght  (jpi,jpj,2,2)                                               , STAT=ierr(1) )
51         !
52      ALLOCATE(                                                    &
53#if defined key_lim2_vp 
54         &        akappa(jpi,jpj,2,2)     , bkappa(jpi,jpj,2,2),   &
55         &        alambd(jpi,jpj,2,2,2,2) ,                        &
56#else
57         &        tmv(jpi,jpj) , tmf(jpi,jpj) , tmi(jpi,jpj) ,     &
58#endif
59         &        STAT=ierr(2) )
60         !
61      dom_ice_alloc_2 = MAXVAL(ierr)
62      IF( dom_ice_alloc_2 /= 0 )   CALL ctl_warn('dom_ice_alloc_2: failed to allocate arrays')
63      !
64   END FUNCTION dom_ice_alloc_2
65
66#else
67   !!----------------------------------------------------------------------
68   !!   Default option          Empty module         NO LIM-2 sea-ice model
69   !!----------------------------------------------------------------------
70#endif
71   !!======================================================================
72END MODULE dom_ice_2
Note: See TracBrowser for help on using the repository browser.