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.
limwri.F90 in branches/2015/dev_r5044_CNRS_LIM3CLEAN/NEMOGCM/NEMO/LIM_SRC_3 – NEMO

source: branches/2015/dev_r5044_CNRS_LIM3CLEAN/NEMOGCM/NEMO/LIM_SRC_3/limwri.F90 @ 5055

Last change on this file since 5055 was 5055, checked in by clem, 9 years ago

LIM3: removing par_ice and put jpl, nlay_i and nlay_s as namelist parameters

  • Property svn:keywords set to Id
File size: 19.6 KB
RevLine 
[825]1MODULE limwri
2   !!======================================================================
3   !!                     ***  MODULE  limwri  ***
4   !!         Ice diagnostics :  write ice output files
5   !!======================================================================
[888]6#if defined key_lim3
[825]7   !!----------------------------------------------------------------------
[2528]8   !!   'key_lim3'                                      LIM3 sea-ice model
[825]9   !!----------------------------------------------------------------------
10   !!   lim_wri      : write of the diagnostics variables in ouput file
[4161]11   !!   lim_wri_state : write for initial state or/and abandon
[825]12   !!----------------------------------------------------------------------
13   USE ioipsl
[888]14   USE dianam          ! build name of file (routine)
[825]15   USE phycst
16   USE dom_oce
[888]17   USE sbc_oce         ! Surface boundary condition: ocean fields
18   USE sbc_ice         ! Surface boundary condition: ice fields
[825]19   USE dom_ice
20   USE ice
[2715]21   USE limvar
22   USE in_out_manager
[825]23   USE lbclnk
[2715]24   USE lib_mpp         ! MPP library
[3294]25   USE wrk_nemo        ! work arrays
[4161]26   USE iom
27   USE timing          ! Timing
28   USE lib_fortran     ! Fortran utilities
[825]29
30   IMPLICIT NONE
31   PRIVATE
32
33   PUBLIC lim_wri        ! routine called by lim_step.F90
[4161]34   PUBLIC lim_wri_state  ! called by dia_wri_state
[825]35
[2528]36   !!----------------------------------------------------------------------
[4161]37   !! NEMO/LIM3 4.0 , UCL - NEMO Consortium (2011)
[2528]38   !! $Id$
[2715]39   !! Software governed by the CeCILL licence     (NEMOGCM/NEMO_CeCILL.txt)
[2528]40   !!----------------------------------------------------------------------
41CONTAINS
[825]42
43#if defined key_dimgout
44# include "limwri_dimg.h90"
45#else
46
47   SUBROUTINE lim_wri( kindic )
48      !!-------------------------------------------------------------------
49      !!  This routine computes the average of some variables and write it
50      !!  on the ouput files.
51      !!  ATTENTION cette routine n'est valable que si le pas de temps est
52      !!  egale a une fraction entiere de 1 jours.
53      !!  Diff 1-D 3-D : suppress common also included in etat
54      !!                 suppress cmoymo 11-18
55      !!  modif : 03/06/98
56      !!-------------------------------------------------------------------
[2715]57      INTEGER, INTENT(in) ::   kindic   ! if kindic < 0 there has been an error somewhere
58      !
[4990]59      INTEGER  ::  ji, jj, jk, jl  ! dummy loop indices
60      REAL(wp) ::  z1_365
61      REAL(wp) ::  ztmp
62      REAL(wp), POINTER, DIMENSION(:,:,:) ::  zoi, zei
63      REAL(wp), POINTER, DIMENSION(:,:)   ::  z2d, z2da, z2db, zswi    ! 2D workspace
[2715]64      !!-------------------------------------------------------------------
[825]65
[4161]66      IF( nn_timing == 1 )  CALL timing_start('limwri')
67
[4688]68      CALL wrk_alloc( jpi, jpj, jpl, zoi, zei )
[4990]69      CALL wrk_alloc( jpi, jpj     , z2d, z2da, z2db, zswi )
[2777]70
[4688]71      !-----------------------------
72      ! Mean category values
73      !-----------------------------
[825]74
[4688]75      CALL lim_var_icetm      ! mean sea ice temperature
[921]76
[4688]77      CALL lim_var_bv         ! brine volume
[825]78
[4688]79      DO jj = 1, jpj          ! presence indicator of ice
80         DO ji = 1, jpi
[4990]81            zswi(ji,jj)  = MAX( 0._wp , SIGN( 1._wp , at_i(ji,jj) - epsi06 ) )
[4688]82         END DO
83      END DO
84      !
85      !
86      !                                             
87      IF ( iom_use( "icethic_cea" ) ) THEN                       ! mean ice thickness
88         DO jj = 1, jpj 
89            DO ji = 1, jpi
[4990]90               z2d(ji,jj)  = vt_i(ji,jj) / MAX( at_i(ji,jj), epsi06 ) * zswi(ji,jj)
[4688]91            END DO
92         END DO
93         CALL iom_put( "icethic_cea"  , z2d              )
94      ENDIF
[921]95
[4688]96      IF ( iom_use( "snowthic_cea" ) ) THEN                      ! snow thickness = mean snow thickness over the cell
97         DO jj = 1, jpj                                           
98            DO ji = 1, jpi
[4990]99               z2d(ji,jj)  = vt_s(ji,jj) / MAX( at_i(ji,jj), epsi06 ) * zswi(ji,jj)
[4688]100            END DO
101         END DO
102         CALL iom_put( "snowthic_cea" , z2d              )       
103      ENDIF
104      !
105      IF ( iom_use( "uice_ipa" ) .OR. iom_use( "vice_ipa" ) .OR. iom_use( "icevel" ) ) THEN
106         DO jj = 2 , jpjm1
107            DO ji = 2 , jpim1
108               z2da(ji,jj)  = (  u_ice(ji,jj) * tmu(ji,jj) + u_ice(ji-1,jj) * tmu(ji-1,jj) ) * 0.5_wp
109               z2db(ji,jj)  = (  v_ice(ji,jj) * tmv(ji,jj) + v_ice(ji,jj-1) * tmv(ji,jj-1) ) * 0.5_wp
110           END DO
111         END DO
112         CALL lbc_lnk( z2da, 'T', -1. )
113         CALL lbc_lnk( z2db, 'T', -1. )
114         CALL iom_put( "uice_ipa"     , z2da                )       ! ice velocity u component
115         CALL iom_put( "vice_ipa"     , z2db                )       ! ice velocity v component
116         DO jj = 1, jpj                                 
117            DO ji = 1, jpi
118               z2d(ji,jj)  = SQRT( z2da(ji,jj) * z2da(ji,jj) + z2db(ji,jj) * z2db(ji,jj) ) 
119            END DO
120         END DO
121         CALL iom_put( "icevel"       , z2d                 )       ! ice velocity module
122      ENDIF
123      !
124      IF ( iom_use( "miceage" ) ) THEN
125         z2d(:,:) = 0.e0
126         DO jl = 1, jpl
127            DO jj = 1, jpj
128               DO ji = 1, jpi
[4990]129                  z2d(ji,jj) = z2d(ji,jj) + zswi(ji,jj) * oa_i(ji,jj,jl)
[4688]130               END DO
131            END DO
132         END DO
133         z1_365 = 1._wp / 365._wp
134         CALL iom_put( "miceage"     , z2d * z1_365         )        ! mean ice age
135      ENDIF
[825]136
[4688]137      IF ( iom_use( "micet" ) ) THEN
138         DO jj = 1, jpj
139            DO ji = 1, jpi
[4990]140               z2d(ji,jj) = ( tm_i(ji,jj) - rtt ) * zswi(ji,jj)
[4688]141            END DO
142         END DO
143         CALL iom_put( "micet"       , z2d                  )        ! mean ice temperature
144      ENDIF
145      !
146      IF ( iom_use( "icest" ) ) THEN
147         z2d(:,:) = 0.e0
[825]148         DO jl = 1, jpl
[4688]149            DO jj = 1, jpj
150               DO ji = 1, jpi
[4990]151                  z2d(ji,jj) = z2d(ji,jj) + zswi(ji,jj) * ( t_su(ji,jj,jl) - rtt ) * a_i(ji,jj,jl) / MAX( at_i(ji,jj) , epsi06 )
[4688]152               END DO
153            END DO
[825]154         END DO
[4688]155         CALL iom_put( "icest"       , z2d                 )        ! ice surface temperature
[825]156      ENDIF
157
[4688]158      IF ( iom_use( "icecolf" ) ) THEN
[825]159         DO jj = 1, jpj
160            DO ji = 1, jpi
[4990]161               rswitch  = MAX( 0._wp , SIGN( 1._wp , at_i(ji,jj) ) )
162               z2d(ji,jj) = hicol(ji,jj) * rswitch
[825]163            END DO
164         END DO
[4688]165         CALL iom_put( "icecolf"     , z2d                 )        ! frazil ice collection thickness
166      ENDIF
[825]167
[4688]168      CALL iom_put( "isst"        , sst_m               )        ! sea surface temperature
169      CALL iom_put( "isss"        , sss_m               )        ! sea surface salinity
170      CALL iom_put( "iceconc"     , at_i                )        ! ice concentration
171      CALL iom_put( "icevolu"     , vt_i                )        ! ice volume = mean ice thickness over the cell
172      CALL iom_put( "icehc"       , et_i                )        ! ice total heat content
173      CALL iom_put( "isnowhc"     , et_s                )        ! snow total heat content
174      CALL iom_put( "ibrinv"      , bv_i * 100._wp      )        ! brine volume
175      CALL iom_put( "utau_ice"    , utau_ice            )        ! wind stress over ice along i-axis at I-point
176      CALL iom_put( "vtau_ice"    , vtau_ice            )        ! wind stress over ice along j-axis at I-point
177      CALL iom_put( "snowpre"     , sprecip             )        ! snow precipitation
178      CALL iom_put( "micesalt"    , smt_i               )        ! mean ice salinity
[4161]179
[4688]180      CALL iom_put( "icestr"      , strength * 0.001    )        ! ice strength
181      CALL iom_put( "idive"       , divu_i * 1.0e8      )        ! divergence
182      CALL iom_put( "ishear"      , shear_i * 1.0e8     )        ! shear
183      CALL iom_put( "snowvol"     , vt_s                )        ! snow volume
184     
185      CALL iom_put( "icetrp"      , diag_trp_vi * rday  )        ! ice volume transport
186      CALL iom_put( "snwtrp"      , diag_trp_vs * rday  )        ! snw volume transport
187      CALL iom_put( "deitrp"      , diag_trp_ei         )        ! advected ice enthalpy (W/m2)
188      CALL iom_put( "destrp"      , diag_trp_es         )        ! advected snw enthalpy (W/m2)
[921]189
[4688]190      CALL iom_put( "sfxbog"      , sfx_bog * rday      )        ! salt flux from brines
191      CALL iom_put( "sfxbom"      , sfx_bom * rday      )        ! salt flux from brines
192      CALL iom_put( "sfxsum"      , sfx_sum * rday      )        ! salt flux from brines
193      CALL iom_put( "sfxsni"      , sfx_sni * rday      )        ! salt flux from brines
194      CALL iom_put( "sfxopw"      , sfx_opw * rday      )        ! salt flux from brines
195      CALL iom_put( "sfxdyn"      , sfx_dyn * rday      )        ! salt flux from ridging rafting
196      CALL iom_put( "sfxres"      , sfx_res * rday      )        ! salt flux from limupdate (resultant)
197      CALL iom_put( "sfxbri"      , sfx_bri * rday      )        ! salt flux from brines
198      CALL iom_put( "sfx"         , sfx     * rday      )        ! total salt flux
[825]199
[4990]200      ztmp = rday / rhoic
[5048]201      CALL iom_put( "vfxres"     , wfx_res * ztmp       )        ! daily prod./melting due to limupdate
202      CALL iom_put( "vfxopw"     , wfx_opw * ztmp       )        ! daily lateral thermodynamic ice production
203      CALL iom_put( "vfxsni"     , wfx_sni * ztmp       )        ! daily snowice ice production
204      CALL iom_put( "vfxbog"     , wfx_bog * ztmp       )        ! daily bottom thermodynamic ice production
205      CALL iom_put( "vfxdyn"     , wfx_dyn * ztmp       )        ! daily dynamic ice production (rid/raft)
206      CALL iom_put( "vfxsum"     , wfx_sum * ztmp       )        ! surface melt
207      CALL iom_put( "vfxbom"     , wfx_bom * ztmp       )        ! bottom melt
208      CALL iom_put( "vfxice"     , wfx_ice * ztmp       )        ! total ice growth/melt
209      CALL iom_put( "vfxsnw"     , wfx_snw * ztmp       )        ! total snw growth/melt
210      CALL iom_put( "vfxsub"     , wfx_sub * ztmp       )        ! sublimation (snow)
211      CALL iom_put( "vfxspr"     , wfx_spr * ztmp       )        ! precip (snow)
212     
[5051]213      CALL iom_put( "afxtot"     , afx_tot * rday       )        ! concentration tendency (total)
214      CALL iom_put( "afxdyn"     , afx_dyn * rday       )        ! concentration tendency (dynamics)
215      CALL iom_put( "afxthd"     , afx_thd * rday       )        ! concentration tendency (thermo)
[825]216
[5051]217      CALL iom_put ('hfxthd'     , hfx_thd(:,:)         )   
218      CALL iom_put ('hfxdyn'     , hfx_dyn(:,:)         )   
219      CALL iom_put ('hfxres'     , hfx_res(:,:)         )   
220      CALL iom_put ('hfxout'     , hfx_out(:,:)         )   
221      CALL iom_put ('hfxin'      , hfx_in(:,:)          )   
222      CALL iom_put ('hfxsnw'     , hfx_snw(:,:)         )   
223      CALL iom_put ('hfxsub'     , hfx_sub(:,:)         )   
224      CALL iom_put ('hfxerr'     , hfx_err(:,:)         )   
225      CALL iom_put ('hfxerr_rem' , hfx_err_rem(:,:)     )   
[4688]226     
[5051]227      CALL iom_put ('hfxsum'     , hfx_sum(:,:)         )   
228      CALL iom_put ('hfxbom'     , hfx_bom(:,:)         )   
229      CALL iom_put ('hfxbog'     , hfx_bog(:,:)         )   
230      CALL iom_put ('hfxdif'     , hfx_dif(:,:)         )   
231      CALL iom_put ('hfxopw'     , hfx_opw(:,:)         )   
232      CALL iom_put ('hfxtur'     , fhtur(:,:) * at_i(:,:) ) ! turbulent heat flux at ice base
233      CALL iom_put ('hfxdhc'     , diag_heat_dhc(:,:)   )   ! Heat content variation in snow and ice
234      CALL iom_put ('hfxspr'     , hfx_spr(:,:)         )   ! Heat content of snow precip
[4688]235     
236      !--------------------------------
237      ! Output values for each category
238      !--------------------------------
239      CALL iom_put( "iceconc_cat"      , a_i         )        ! area for categories
240      CALL iom_put( "icethic_cat"      , ht_i        )        ! thickness for categories
241      CALL iom_put( "snowthic_cat"     , ht_s        )        ! snow depth for categories
242      CALL iom_put( "salinity_cat"     , sm_i        )        ! salinity for categories
[825]243
[4688]244      ! Compute ice age
245      IF ( iom_use( "iceage_cat" ) ) THEN
[921]246         DO jl = 1, jpl 
[825]247            DO jj = 1, jpj
248               DO ji = 1, jpi
[4990]249                  rswitch = MAX( 0._wp , SIGN( 1._wp , a_i(ji,jj,jl) - epsi06 ) )
250                  zoi(ji,jj,jl) = oa_i(ji,jj,jl)  / MAX( a_i(ji,jj,jl) , epsi06 ) * rswitch
[825]251               END DO
252            END DO
253         END DO
[4688]254         CALL iom_put( "iceage_cat"     , zoi         )        ! ice age for categories
255      ENDIF
[825]256
[4688]257      ! Compute brine volume
258      IF ( iom_use( "brinevol_cat" ) ) THEN
[2715]259         zei(:,:,:) = 0._wp
[921]260         DO jl = 1, jpl 
261            DO jk = 1, nlay_i
262               DO jj = 1, jpj
263                  DO ji = 1, jpi
[4990]264                     rswitch = MAX( 0._wp , SIGN( 1._wp , a_i(ji,jj,jl) - epsi06 ) )
[921]265                     zei(ji,jj,jl) = zei(ji,jj,jl) + 100.0* &
[4161]266                        ( - tmut * s_i(ji,jj,jk,jl) / MIN( ( t_i(ji,jj,jk,jl) - rtt ), - epsi06 ) ) * &
[4990]267                        rswitch / nlay_i
[921]268                  END DO
269               END DO
270            END DO
271         END DO
[4688]272         CALL iom_put( "brinevol_cat"     , zei         )        ! brine volume for categories
[825]273      ENDIF
274
[4688]275      !     !  Create an output files (output.lim.abort.nc) if S < 0 or u > 20 m/s
276      !     IF( kindic < 0 )   CALL lim_wri_state( 'output.abort' )
277      !     not yet implemented
278     
279      CALL wrk_dealloc( jpi, jpj, jpl, zoi, zei )
[4990]280      CALL wrk_dealloc( jpi, jpj     , z2d, zswi, z2da, z2db )
[4161]281
282      IF( nn_timing == 1 )  CALL timing_stop('limwri')
[2777]283     
[825]284   END SUBROUTINE lim_wri
285#endif
286
[4161]287 
288   SUBROUTINE lim_wri_state( kt, kid, kh_i )
289      !!---------------------------------------------------------------------
290      !!                 ***  ROUTINE lim_wri_state  ***
291      !!       
292      !! ** Purpose :   create a NetCDF file named cdfile_name which contains
293      !!      the instantaneous ice state and forcing fields for ice model
294      !!        Used to find errors in the initial state or save the last
295      !!      ocean state in case of abnormal end of a simulation
296      !!
297      !! History :
298      !!   4.1  !  2013-06  (C. Rousset)
299      !!----------------------------------------------------------------------
300      INTEGER, INTENT( in ) ::   kt               ! ocean time-step index)
301      INTEGER, INTENT( in ) ::   kid , kh_i       
302      !!----------------------------------------------------------------------
[825]303
[4765]304      CALL histdef( kid, "iicethic", "Ice thickness"           , "m"      ,   &
305      &      jpi, jpj, kh_i, 1, 1, 1, -99, 32, "inst(x)", rdt, rdt )
306      CALL histdef( kid, "iiceconc", "Ice concentration"       , "%"      ,   &
307      &      jpi, jpj, kh_i, 1, 1, 1, -99, 32, "inst(x)", rdt, rdt )
308      CALL histdef( kid, "iicetemp", "Ice temperature"         , "C"      ,   &
309      &      jpi, jpj, kh_i, 1, 1, 1, -99, 32, "inst(x)", rdt, rdt )
310      CALL histdef( kid, "iicevelu", "i-Ice speed (I-point)"   , "m/s"    ,   &
311      &      jpi, jpj, kh_i, 1, 1, 1, -99, 32, "inst(x)", rdt, rdt )
312      CALL histdef( kid, "iicevelv", "j-Ice speed (I-point)"   , "m/s"    ,   &
313      &      jpi, jpj, kh_i, 1, 1, 1, -99, 32, "inst(x)", rdt, rdt ) 
314      CALL histdef( kid, "iicestru", "i-Wind stress over ice (I-pt)", "Pa",   &
315      &      jpi, jpj, kh_i, 1, 1, 1, -99, 32, "inst(x)", rdt, rdt )
316      CALL histdef( kid, "iicestrv", "j-Wind stress over ice (I-pt)", "Pa",   &
317      &      jpi, jpj, kh_i, 1, 1, 1, -99, 32, "inst(x)", rdt, rdt ) 
318      CALL histdef( kid, "iicesflx", "Solar flux over ocean"     , "w/m2" ,   &
319      &      jpi, jpj, kh_i, 1, 1, 1, -99, 32, "inst(x)", rdt, rdt ) 
320      CALL histdef( kid, "iicenflx", "Non-solar flux over ocean" , "w/m2" ,   &
321      &      jpi, jpj, kh_i, 1, 1, 1, -99, 32, "inst(x)", rdt, rdt )
322      CALL histdef( kid, "isnowpre", "Snow precipitation"      , "kg/m2/s",   &
323      &      jpi, jpj, kh_i, 1, 1, 1, -99, 32, "inst(x)", rdt, rdt ) 
324      CALL histdef( kid, "iicesali", "Ice salinity"            , "PSU"    ,   &
325      &      jpi, jpj, kh_i, 1, 1, 1, -99, 32, "inst(x)", rdt, rdt ) 
326      CALL histdef( kid, "iicevolu", "Ice volume"              , "m"      ,   &
327      &      jpi, jpj, kh_i, 1, 1, 1, -99, 32, "inst(x)", rdt, rdt ) 
328      CALL histdef( kid, "iicedive", "Ice divergence"          , "10-8s-1",   &
329      &      jpi, jpj, kh_i, 1, 1, 1, -99, 32, "inst(x)", rdt, rdt ) 
330      CALL histdef( kid, "iicebopr", "Ice bottom production"   , "m/s"    ,   &
331      &      jpi, jpj, kh_i, 1, 1, 1, -99, 32, "inst(x)", rdt, rdt )
332      CALL histdef( kid, "iicedypr", "Ice dynamic production"  , "m/s"    ,   &
333      &      jpi, jpj, kh_i, 1, 1, 1, -99, 32, "inst(x)", rdt, rdt )
334      CALL histdef( kid, "iicelapr", "Ice open water prod"     , "m/s"    ,   &
335      &       jpi, jpj, kh_i, 1, 1, 1, -99, 32, "inst(x)", rdt, rdt )
336      CALL histdef( kid, "iicesipr", "Snow ice production "    , "m/s"    ,   &
337      &      jpi, jpj, kh_i, 1, 1, 1, -99, 32, "inst(x)", rdt, rdt )
338      CALL histdef( kid, "iicerepr", "Ice prod from limupdate" , "m/s"    ,   &
339      &      jpi, jpj, kh_i, 1, 1, 1, -99, 32, "inst(x)", rdt, rdt )
340      CALL histdef( kid, "iicebome", "Ice bottom melt"         , "m/s"    ,   &
341      &      jpi, jpj, kh_i, 1, 1, 1, -99, 32, "inst(x)", rdt, rdt )
342      CALL histdef( kid, "iicesume", "Ice surface melt"        , "m/s"    ,   &
343      &      jpi, jpj, kh_i, 1, 1, 1, -99, 32, "inst(x)", rdt, rdt )
344      CALL histdef( kid, "iisfxdyn", "Salt flux from dynmics"  , ""       ,   &
345      &      jpi, jpj, kh_i, 1, 1, 1, -99, 32, "inst(x)", rdt, rdt )
346      CALL histdef( kid, "iisfxres", "Salt flux from limupdate", ""       ,   &
347      &      jpi, jpj, kh_i, 1, 1, 1, -99, 32, "inst(x)", rdt, rdt )
[4161]348
349      CALL histend( kid, snc4set )   ! end of the file definition
350
351      CALL histwrite( kid, "iicethic", kt, icethi        , jpi*jpj, (/1/) )   
352      CALL histwrite( kid, "iiceconc", kt, at_i          , jpi*jpj, (/1/) )
353      CALL histwrite( kid, "iicetemp", kt, tm_i - rtt    , jpi*jpj, (/1/) )
354      CALL histwrite( kid, "iicevelu", kt, u_ice          , jpi*jpj, (/1/) )
355      CALL histwrite( kid, "iicevelv", kt, v_ice          , jpi*jpj, (/1/) )
356      CALL histwrite( kid, "iicestru", kt, utau_ice       , jpi*jpj, (/1/) )
357      CALL histwrite( kid, "iicestrv", kt, vtau_ice       , jpi*jpj, (/1/) )
358      CALL histwrite( kid, "iicesflx", kt, qsr , jpi*jpj, (/1/) )
359      CALL histwrite( kid, "iicenflx", kt, qns , jpi*jpj, (/1/) )
360      CALL histwrite( kid, "isnowpre", kt, sprecip        , jpi*jpj, (/1/) )
361      CALL histwrite( kid, "iicesali", kt, smt_i          , jpi*jpj, (/1/) )
362      CALL histwrite( kid, "iicevolu", kt, vt_i           , jpi*jpj, (/1/) )
363      CALL histwrite( kid, "iicedive", kt, divu_i*1.0e8   , jpi*jpj, (/1/) )
364
[4688]365      CALL histwrite( kid, "iicebopr", kt, wfx_bog        , jpi*jpj, (/1/) )
366      CALL histwrite( kid, "iicedypr", kt, wfx_dyn        , jpi*jpj, (/1/) )
367      CALL histwrite( kid, "iicelapr", kt, wfx_opw        , jpi*jpj, (/1/) )
368      CALL histwrite( kid, "iicesipr", kt, wfx_sni        , jpi*jpj, (/1/) )
369      CALL histwrite( kid, "iicerepr", kt, wfx_res        , jpi*jpj, (/1/) )
370      CALL histwrite( kid, "iicebome", kt, wfx_bom        , jpi*jpj, (/1/) )
371      CALL histwrite( kid, "iicesume", kt, wfx_sum        , jpi*jpj, (/1/) )
372      CALL histwrite( kid, "iisfxdyn", kt, sfx_dyn        , jpi*jpj, (/1/) )
[4333]373      CALL histwrite( kid, "iisfxres", kt, sfx_res        , jpi*jpj, (/1/) )
374
[4688]375      ! Close the file
376      ! -----------------
377      !CALL histclo( kid )
[4161]378
379    END SUBROUTINE lim_wri_state
380
[825]381#else
382   !!----------------------------------------------------------------------
383   !!   Default option :         Empty module          NO LIM sea-ice model
384   !!----------------------------------------------------------------------
385CONTAINS
386   SUBROUTINE lim_wri          ! Empty routine
387   END SUBROUTINE lim_wri
388#endif
389
390   !!======================================================================
391END MODULE limwri
Note: See TracBrowser for help on using the repository browser.