Index: /branches/2017/dev_CNRS_2017/NEMOGCM/CONFIG/ORCA2_LIM3_PISCES/EXP00/file_def_nemo-opa.xml
===================================================================
--- /branches/2017/dev_CNRS_2017/NEMOGCM/CONFIG/ORCA2_LIM3_PISCES/EXP00/file_def_nemo-opa.xml	(revision 8883)
+++ /branches/2017/dev_CNRS_2017/NEMOGCM/CONFIG/ORCA2_LIM3_PISCES/EXP00/file_def_nemo-opa.xml	(revision 8884)
@@ -35,5 +35,4 @@
 	  <field field_ref="qsr_ice"      name="qsr_ice"  />
 	  <field field_ref="qns_ice"      name="qns_ice"  />
-	  <field field_ref="qtr_ice"      name="qtr_ice"  />
 	  <field field_ref="qt_ice"       name="qt_ice"   />
 	  <field field_ref="saltflx"      name="sfx"      />
@@ -43,6 +42,6 @@
 	  <!-- ice and snow -->
 	  <field field_ref="snowpre" />
-	  <field field_ref="utau_ice"     name="utau_ice" />
-	  <field field_ref="vtau_ice"     name="vtau_ice" />
+	  <field field_ref="utau_ai"     name="utau_ai" />
+	  <field field_ref="vtau_ai"     name="vtau_ai" />
 	</file>
 
Index: /branches/2017/dev_CNRS_2017/NEMOGCM/CONFIG/SHARED/field_def_nemo-lim.xml
===================================================================
--- /branches/2017/dev_CNRS_2017/NEMOGCM/CONFIG/SHARED/field_def_nemo-lim.xml	(revision 8883)
+++ /branches/2017/dev_CNRS_2017/NEMOGCM/CONFIG/SHARED/field_def_nemo-lim.xml	(revision 8884)
@@ -4,5 +4,5 @@
     <!-- 
 ============================================================================================================
-=                                  definition of all existing ESIM variables                               =
+=                                  definition of all existing ice variables                                =
 =                                            DO NOT CHANGE                                                 =
 ============================================================================================================
@@ -12,196 +12,140 @@
       <field_group id="SBC" grid_ref="grid_T_2D" > <!-- time step automaticaly defined based on nn_fsbc -->
 
-	 <!-- ================ -->
-         <!-- SIMIP ice fields -->
-         <!-- ================ -->
-	 <field id="icepres"      long_name="Fraction of time steps with sea ice"                     standard_name="sea_ice_time_fraction"                      unit=""             />
-         <field id="icethick"     long_name="Sea-ice thickness per area"                              standard_name="sea_ice_thickness"                          unit="m"   />
-         <field id="icethic"      long_name="Sea-ice thickness"                                       standard_name="sea_ice_thickness"                          unit="m"   />
-         <field id="snothic"      long_name="Snow thickness"                                          standard_name="surface_snow_thickness"                     unit="m"            />
-         <field id="icevolu"      long_name="Sea-ice volume per area"                                 standard_name="sea_ice_thickness"                          unit="m"            />
-         <field id="icefb"        long_name="Sea-ice freeboard"                                       standard_name="sea_ice_freeboard"                          unit="m"            />
-         <field id="iceconc"      long_name="Sea-ice area fraction"                                   standard_name="sea_ice_area_fraction"                      unit=""             />
-         <field id="iceconc_pct"  long_name="Sea-ice area fraction in percent"                        standard_name="sea_ice_area_fraction_in_percent"           unit="%"             > iceconc * 100. </field >
-         <field id="icemass"      long_name="Sea-ice mass per area"                                   standard_name="sea_ice_amount"                             unit="kg/m2"        />
-         <field id="snomass"      long_name="Snow mass per area"                                      standard_name="liquid_water_content_of_surface_snow"       unit="kg/m2"        />
-         <field id="iceage"       long_name="Age of sea ice"                                          standard_name="age_of_sea_ice"                             unit="s"            />
-         <field id="icealb"       long_name="Sea-ice or snow albedo"                                  standard_name="sea_ice_albedo"                             unit=""             />
-         <field id="icesmass"     long_name="Mass of salt in sea ice per area"                        standard_name="sea_ice_salt_mass"                          unit="kg/m2"        />
-         <field id="icesal"       long_name="Sea ice salinity"                                        standard_name="sea_ice_salinity"                           unit="g/kg"         />
-
-	 <!-- heat -->
-         <field id="icestK"       long_name="Surface temperature of sea ice"                          standard_name="sea_ice_surface_temperature"                unit="K"            /> 
-         <field id="icesntK"      long_name="Temperature at snow-ice interface"                       standard_name="sea_ice_snow_interface_temperature"         unit="K"            />
-         <field id="icebotK"      long_name="Temperature at ice-ocean interface"                      standard_name="sea_ice_bottom_temperature"                 unit="K"            />
-         <field id="icehcneg"     long_name="Sea-ice heat content per unit area"                      standard_name="integral_of_sea_ice_temperature_wrt_depth_expressed_as_heat_content" unit="J/m2" > (-icehc) </field>
-         <field id="isnhcneg"     long_name="Snow-heat content per unit area"                         standard_name="thermal_energy_content_of_surface_snow"                              unit="J/m2" />
-
-	 <!-- fluxes (mass, heat, salt) -->
-         <field id="wfxsum"       long_name="Freshwater flux from sea-ice surface"                    standard_name="freshwater_flux_from_ice_surface"             unit="kg/m2/s"      />
-         <field id="wfxtot"       long_name="Freshwater flux from sea ice"                            standard_name="freshwater_flux_from_ice"                     unit="kg/m2/s" /> 
-         <field id="hfxsenso"     long_name="Net sensible heat flux under sea ice"                    standard_name="ice_ocean_heat_flux"                          unit="W/m2" />
-         <field id="hfxconsu"     long_name="Net conductive heat flux in ice at the surface"          standard_name="conductive_heat_flux_at_sea_ice_surface"      unit="W/m2" /> 
-         <field id="hfxconbo"     long_name="Net conductive heat fluxes in ice at the bottom"         standard_name="conductive_heat_flux_at_sea_ice_bottom"       unit="W/m2" />
-         <field id="sfx_mv"       long_name="Salt flux from sea ice"                                  standard_name="salt_flux_from_ice"                           unit="kg/m2/s" />
-
-	 <!-- trends -->
-         <field id="afxthd"       long_name="sea-ice area fraction change from thermodynamics"        standard_name="tendency_of_sea_ice_area_fraction_due_to_dynamics"  unit="s-1"   />
-         <field id="afxdyn"       long_name="sea-ice area fraction change from dynamics"              standard_name="tendency_of_sea_ice_area_fraction_due_to_dynamics"  unit="s-1"   />
-
-         <field id="dmithd"       long_name="sea-ice mass change from thermodynamics"                 standard_name="tendency_of_sea_ice_amount_due_to_thermodynamics"   unit="kg/m2/s" />
-         <field id="dmidyn"       long_name="sea-ice mass change from dynamics"                       standard_name="tendency_of_sea_ice_amount_due_to_dynamics"         unit="kg/m2/s" />
-         <field id="dmiopw"       long_name="sea-ice mass change through growth in supercooled open water (aka frazil)"   standard_name="tendency_of_sea_ice_amount_due_to_freezing_in_open_water"   unit="kg/m2/s" />
-         <field id="dmibog"       long_name="sea-ice mass change through basal growth"                standard_name="tendency_of_sea_ice_amount_due_to_congelation_ice_accumulation"  unit="kg/m2/s" />
-         <field id="dmisni"       long_name="sea-ice mass change through snow-to-ice conversion"      standard_name="tendency_of_sea_ice_amount_due_to_snow_conversion"               unit="kg/m2/s" />
-         <field id="dmtsub"       long_name="snow and sea ice mass change through sublimation"        standard_name="tendency_of_snow_and_ice_amount_due_to_sublimation"              unit="kg/m2/s" />
-         <field id="dmssub"       long_name="sea-ice mass change through evaporation and sublimation" standard_name="water_evaporation_flux"                                     unit="kg/m2/s" />
-         <field id="dmisub"       long_name="snow mass change through evaporation or sublimation"     standard_name="surface_snow_sublimation_flux"           unit="kg/m2/s" />
-         <field id="dmisum"       long_name="sea-ice mass change through surface melting"             standard_name="tendency_of_sea_ice_amount_due_to_surface_melting"               unit="kg/m2/s" />
-         <field id="dmibom"       long_name="sea-ice mass change through bottom melting"              standard_name="tendency_of_sea_ice_amount_due_to_basal_melting"                 unit="kg/m2/s" />
-
-         <field id="dmsspr"       long_name="snow mass change through snow fall"                      standard_name="snowfall_flux"                                                   unit="kg/m2/s" />
-         <field id="dmsmel"       long_name="snow mass change through melt"                           standard_name="surface_snow_melt_flux"                                          unit="kg/m2/s" />
-         <field id="dmsdyn"       long_name="snow mass change through advection by sea-ice dynamics"  standard_name="tendency_of_snow_mass_due_to_sea_ice_dynamics"               unit="kg/m2/s" />
-         <field id="dmsssi"       long_name="snow mass change through snow-to-ice conversion"         standard_name="tendency_of_snow_mass_due_to_snow_to_ice_conversion"             unit="kg/m2/s" />
-
-	 <!-- momentum (rheology) -->
-         <field id="uice_mv"      long_name="X-component of sea ice velocity"                         standard_name="sea_ice_x_velocity"                         unit="m/s" /> 
-         <field id="vice_mv"      long_name="Y-component of sea ice velocity"                         standard_name="sea_ice_y_velocity"                         unit="m/s" />      
-         <field id="icevel_mv"    long_name="Sea-ice speed"                                           standard_name="sea_ice_speed"                              unit="m/s" />	 
-         <field id="utau_ice"     long_name="X-component of atmospheric stress on sea ice"            standard_name="surface_downward_x_stress"                    unit="N/m2"    />
-         <field id="vtau_ice"     long_name="Y-component of atmospheric stress on sea ice"            standard_name="surface_downward_y_stress"                    unit="N/m2"    />
-         <field id="utau_oi"      long_name="X-component of ocean stress on sea ice"                  standard_name="sea_ice_base_upward_x_stress"                 unit="N/m2"    />
-         <field id="vtau_oi"      long_name="Y-component of ocean stress on sea ice"                  standard_name="sea_ice_base_upward_y_stress"                 unit="N/m2"    />
-         <field id="dssh_dx"      long_name="Sea-surface tilt term in force balance (x-component)"    standard_name="sea_surface_tilt_force_on_sea_ice_x"       unit="N/m2"    />
-         <field id="dssh_dy"      long_name="Sea-surface tilt term in force balance (y-component)"    standard_name="sea_surface_tilt_force_on_sea_ice_y"       unit="N/m2"    />
-         <field id="corstrx"      long_name="Coriolis force term in force balance (x-component)"      standard_name="coriolis_force_on_sea_ice_x"               unit="N/m2"    />
-         <field id="corstry"      long_name="Coriolis force term in force balance (y-component)"      standard_name="coriolis_force_on_sea_ice_y"               unit="N/m2"    />
-         <field id="intstrx"      long_name="Internal stress term in force balance (x-component)"     standard_name="internal_stress_in_sea_ice_x"              unit="N/m2"    />
-         <field id="intstry"      long_name="Internal stress term in force balance (y-component)"     standard_name="internal_stress_in_sea_ice_y"              unit="N/m2"    />
-         <field id="icestr"       long_name="Compressive sea ice strength"                            standard_name="compressive_strength_of_sea_ice"              unit="N/m"     />
-         <field id="normstr"      long_name="Average normal stress in sea ice"                        standard_name="average_normal_stress"                        unit="N/m"     />
-         <field id="sheastr"      long_name="Maximum shear stress in sea ice"                         standard_name="maximum_shear_stress"                         unit="N/m"     />
-         <field id="idive"        long_name="Divergence of the sea-ice velocity field"                standard_name="divergence_of_sea_ice_velocity"               unit="s-1"     />
-         <field id="ishear"       long_name="Maximum shear of sea-ice velocity field"                 standard_name="maximum_shear_of_sea_ice_velocity"            unit="s-1"     />
-
-	 <!-- momentum (advection) -->
-	 <field id="xmtrpice"     long_name="X-component of ice mass transport"                       standard_name="ice_x_transport"                              unit="kg/s" />
-         <field id="ymtrpice"     long_name="Y-component of ice mass transport"                       standard_name="ice_y_transport"                              unit="kg/s" />
-         <field id="xmtrpsnw"     long_name="X-component of snw mass transport"                       standard_name="snw_x_transport"                              unit="kg/s" />
-         <field id="ymtrpsnw"     long_name="Y-component of snw mass transport"                       standard_name="snw_y_transport"                              unit="kg/s" />
-         <field id="xatrp"        long_name="X-component of ice area transport"                       standard_name="area_x_transport"                             unit="m2/s" />
-         <field id="yatrp"        long_name="Y-component of ice area transport"                       standard_name="area_y_transport"                             unit="m2/s" />
-         <field id="xmtrptot"     long_name="X-component of sea-ice mass transport"                   standard_name="sea_ice_x_transport"                          unit="kg/s" > xmtrpice + xmtrpsnw </field>
-         <field id="ymtrptot"     long_name="Y-component of sea-ice mass transport"                   standard_name="sea_ice_y_transport"                          unit="kg/s" > ymtrpice + ymtrpsnw </field>
-
-	 <!-- categories -->
-         <field id="iceconc_cat_mv"     long_name="Sea-ice area fractions in thickness categories"    standard_name="sea_ice_area_fraction_over_categories"      unit=""   grid_ref="grid_T_3D_ncatice" />
-         <field id="iceconc_cat_pct_mv" long_name="Sea-ice area fractions in thickness categories"    standard_name="sea_ice_area_fraction_over_categories"      unit="%"  grid_ref="grid_T_3D_ncatice"  > iceconc_cat_mv * 100. </field >
-         <field id="icethic_cat_mv"     long_name="Sea-ice thickness in thickness categories"         standard_name="sea_ice_thickness_over_categories"          unit="m"  grid_ref="grid_T_3D_ncatice" />
-         <field id="snowthic_cat_mv"    long_name="Snow thickness in thickness categories"            standard_name="snow_thickness_over_categories"             unit="m"  grid_ref="grid_T_3D_ncatice" />
-
          <!-- =================== -->
          <!-- standard ice fields -->  
          <!-- =================== -->
-         <field id="ice_cover"    long_name="Ice fraction"                                                 standard_name="sea_ice_area_fraction"                              unit="1"            />
-
-	 <field id="miceage"      long_name="Age of sea ice"                                               unit="s"        />
-         <field id="micesalt"     long_name="Sea ice salinity"                                             unit="g/kg"     />
-         <field id="ibrinv"       long_name="brine volume"                                                 unit="%"        />
-         <field id="icecolf"      long_name="frazil ice collection thickness"                              unit="m"        />
-         <field id="snowvol"      long_name="snow volume"                                                  unit="m"        />
-         <field id="tau_icebfr"   long_name="ice friction on ocean bottom for landfast ice"                unit="N/2"      />
+	 <!-- ice presence masks -->
+         <field id="icemask"      long_name="Fraction of time steps with sea ice"                     standard_name="sea_ice_mask"                              unit="" />
+         <field id="icemask05"    long_name="Ice mask (0 if ice conc. lower than  5%, 1 otherwise)"   standard_name="sea_ice_mask05"                            unit="" />
+         <field id="icemask15"    long_name="Ice mask (0 if ice conc. lower than 15%, 1 otherwise)"   standard_name="sea_ice_mask15"                            unit="" />
+	 <field id="icepres"      long_name="Fraction of time steps with sea ice"                     standard_name="sea_ice_time_fraction"                     unit="" />
+	 
+	 <!-- general fields -->
+         <field id="icemass"      long_name="Sea-ice mass per area"                                   standard_name="sea_ice_amount"                            unit="kg/m2"/>
+         <field id="snwmass"      long_name="Snow mass per area"                                      standard_name="liquid_water_content_of_surface_snow"      unit="kg/m2"/>
+         <field id="iceconc"      long_name="Sea-ice area fraction"                                   standard_name="sea_ice_area_fraction"                     unit=""    />
+         <field id="icevolu"      long_name="Sea-ice volume per area"                                 standard_name="sea_ice_thickness"                         unit="m"   />
+         <field id="icethic"      long_name="Sea-ice thickness per area"                              standard_name="sea_ice_thickness"                         unit="m"   />
+         <field id="snwthic"      long_name="Snow thickness per area"                                 standard_name="snow_thickness"                            unit="m"   />
+         <field id="icebrv"       long_name="brine volume"                                                                                                      unit="%"   />
+         <field id="iceage"       long_name="ice age"                                                                                                           unit="days"/>
+         <field id="icehnew"      long_name="frazil ice collection thickness"                                                                                   unit="m"   />
+         <field id="snwvolu"      long_name="snow volume"                                                                                                       unit="m"   />
+         <field id="icefrb"       long_name="Sea-ice freeboard"                                       standard_name="sea_ice_freeboard"                         unit="m"   />
+         <field id="icealb"       long_name="Sea-ice or snow albedo"                                  standard_name="sea_ice_albedo"                            unit=""    />
+         <field id="tau_icebfr"   long_name="ice friction on ocean bottom for landfast ice"                                                                     unit="N/2" />
 
 	 <!-- melt ponds -->
-	 <field id="iceamp"       long_name="melt pond fraction"                                           standard_name="sea_ice_meltpond_fraction"                          unit="%"            /> 
-         <field id="icevmp"       long_name="melt pond volume"                                             standard_name="sea_ice_meltpond_volume"                            unit="m"            /> 
+	 <field id="iceapnd"      long_name="melt pond fraction"                                      standard_name="sea_ice_meltpond_fraction"                 unit="%" /> 
+         <field id="icevpnd"      long_name="melt pond volume"                                        standard_name="sea_ice_meltpond_volume"                   unit="m" /> 
+	 
+	 <!-- heat -->
+         <field id="icetemp"      long_name="Mean ice temperature"                                                                                              unit="degC" />
+         <field id="icettop"      long_name="temperature at the ice surface"                                                                                    unit="degC" />
+         <field id="icetbot"      long_name="temperature at the ice bottom"                                                                                     unit="degC" />
+         <field id="icetsni"      long_name="temperature at the snow-ice interface"                                                                             unit="degC" />
+         <field id="icehc"        long_name="ice heat content"                                                                                                  unit="J/m2" /> 
+         <field id="snwhc"        long_name="snow heat content"                                                                                                 unit="J/m2" />
+
+	 <!-- salt -->
+         <field id="icesalt"      long_name="Sea ice salinity"                                                                                                  unit="g/kg"  />
+         <field id="icesalm"      long_name="Mass of salt in sea ice per area"                        standard_name="sea_ice_salt_mass"                         unit="kg/m2" />
 	 
 	 <!-- momentum (rheology) -->
-         <field id="uice"         long_name="X-component of sea ice velocity"                              standard_name="sea_ice_x_velocity"                                 unit="m/s"          /> 
-         <field id="vice"         long_name="Y-component of sea ice velocity"                              standard_name="sea_ice_y_velocity"                                 unit="m/s"          />      
-         <field id="icevel"       long_name="Sea-ice speed"                                                standard_name="sea_ice_speed"                                      unit="m/s"          />
-         <field id="isig1"        long_name="1st principal stress component for EVP rhg"                   unit="unitless" />
-         <field id="isig2"        long_name="2nd principal stress component for EVP rhg"                   unit="unitless" />
-         <field id="isig3"        long_name="convergence measure for EVP rheology (must be =1)"            unit="unitless" />
-
-	 <!-- heat -->
-         <field id="micet"        long_name="Mean ice temperature"                                         unit="degC"     />
-         <field id="icehc"        long_name="ice total heat content"                                       unit="J/m2"     /> 
-         <field id="isnowhc"      long_name="snow total heat content"                                      unit="J/m2"     />
-         <field id="icest"        long_name="ice surface temperature"                                      unit="degC"     />
-	 
+         <field id="uice"         long_name="X-component of sea ice velocity"                         standard_name="sea_ice_x_velocity"                        unit="m/s"  /> 
+         <field id="vice"         long_name="Y-component of sea ice velocity"                         standard_name="sea_ice_y_velocity"                        unit="m/s"  />      
+         <field id="icevel"       long_name="Sea-ice speed"                                           standard_name="sea_ice_speed"                             unit="m/s"  />
+         <field id="utau_ai"      long_name="X-component of atmospheric stress on sea ice"            standard_name="surface_downward_x_stress"                 unit="N/m2" />
+         <field id="vtau_ai"      long_name="Y-component of atmospheric stress on sea ice"            standard_name="surface_downward_y_stress"                 unit="N/m2" />
+         <field id="utau_oi"      long_name="X-component of ocean stress on sea ice"                  standard_name="sea_ice_base_upward_x_stress"              unit="N/m2" />
+         <field id="vtau_oi"      long_name="Y-component of ocean stress on sea ice"                  standard_name="sea_ice_base_upward_y_stress"              unit="N/m2" />
+         <field id="isig1"        long_name="1st principal stress component for EVP rhg"                                                                        unit=""     />
+         <field id="isig2"        long_name="2nd principal stress component for EVP rhg"                                                                        unit=""     />
+         <field id="isig3"        long_name="convergence measure for EVP rheology (must be around 1)"                                                           unit=""     />
+         <field id="normstr"      long_name="Average normal stress in sea ice"                        standard_name="average_normal_stress"                     unit="N/m"  />
+         <field id="sheastr"      long_name="Maximum shear stress in sea ice"                         standard_name="maximum_shear_stress"                      unit="N/m"  />
+         <field id="icestr"       long_name="Compressive sea ice strength"                            standard_name="compressive_strength_of_sea_ice"           unit="N/m"  />
+         <field id="icediv"       long_name="Divergence of the sea-ice velocity field"                standard_name="divergence_of_sea_ice_velocity"            unit="s-1"  />
+         <field id="iceshe"       long_name="Maximum shear of sea-ice velocity field"                 standard_name="maximum_shear_of_sea_ice_velocity"         unit="s-1"  />
+
 	 <!-- surface heat fluxes -->
-         <field id="qt_oce"       long_name="total flux at ocean surface"                                  standard_name="surface_downward_heat_flux_in_sea_water"            unit="W/m2"         />
-         <field id="qsr_oce"      long_name="solar heat flux at ocean surface"                             standard_name="net_downward_shortwave_flux_at_sea_water_surface"   unit="W/m2"         />
-         <field id="qns_oce"      long_name="non-solar heat flux at ocean surface"                                                                                            unit="W/m2"         />
-         <field id="qt_ice"       long_name="total heat flux at ice surface: sum over categories"          standard_name="surface_downward_heat_flux_in_air"                  unit="W/m2"         />
-         <field id="qsr_ice"      long_name="solar heat flux at ice surface: sum over categories"          standard_name="surface_downwelling_shortwave_flux_in_air"          unit="W/m2"         />
-         <field id="qns_ice"      long_name="non-solar heat flux at ice surface: sum over categories"                                                                         unit="W/m2"         />
-         <field id="qtr_ice"      long_name="solar heat flux transmitted through ice: sum over categories"                                                                    unit="W/m2"         />
-         <field id="qemp_ice"     long_name="Downward Heat Flux from E-P over ice"                                                                                            unit="W/m2"         />
-         <field id="albedo"       long_name="Mean albedo over sea ice and ocean"                                                                                              unit=""             />
+         <field id="qt_ice"       long_name="total heat flux at ice surface"                          standard_name="surface_downward_heat_flux_in_air"         unit="W/m2" />
+         <field id="qsr_ice"      long_name="solar heat flux at ice surface"                          standard_name="surface_downwelling_shortwave_flux_in_air" unit="W/m2" />
+         <field id="qns_ice"      long_name="non-solar heat flux at ice surface (including E-P)"                                                                unit="W/m2" />
+         <field id="qtr_ice_bot"  long_name="solar heat flux transmitted through the ice (to the ocean)"                                                        unit="W/m2" />
+         <field id="qtr_ice_top"  long_name="solar heat flux transmitted through the ice surface"                                                               unit="W/m2" />
+         <field id="qt_oce_ai"    long_name="total heat flux at the ocean   surface: interface oce-(ice+atm)"                                                   unit="W/m2" />
+         <field id="qt_atm_oi"    long_name="total heat flux at the oce-ice surface: interface atm-(ice+oce)"                                                   unit="W/m2" />
+         <field id="qemp_ice"     long_name="Downward Heat Flux from E-P over ice"                                                                              unit="W/m2" />
+         <field id="albedo"       long_name="Mean albedo over sea ice and ocean"                                                                                unit=""     />
 
 	 <!-- trends -->
-	 <field id="afxtot"       long_name="area tendency (total)"                                        unit="s-1"   />
+         <field id="afxthd"       long_name="sea-ice area fraction change from thermodynamics"  standard_name="tendency_of_sea_ice_area_fraction_due_to_dynamics" unit="s-1" />
+         <field id="afxdyn"       long_name="sea-ice area fraction change from dynamics"        standard_name="tendency_of_sea_ice_area_fraction_due_to_dynamics" unit="s-1" />
+	 <field id="afxtot"       long_name="area tendency (total)"                                                                                               unit="s-1" />
 
 	 <!-- momentum (advection) -->
-         <field id="icetrp"       long_name="ice mass transport"                                           unit="kg/m2/s"          />
-         <field id="snwtrp"       long_name="snw mass transport"                                           unit="kg/m2/s"          />
-         <field id="saltrp"       long_name="salt     transport"                                           unit="1e-3*kg/m2/s" />
-         <field id="deitrp"       long_name="advected ice enthalpy"                                        unit="W/m2"           />
-         <field id="destrp"       long_name="advected snw enthalpy"                                        unit="W/m2"           />
+         <field id="icemtrp"      long_name="ice  mass transport"                                          unit="kg/m2/s" />
+         <field id="snwmtrp"      long_name="snw  mass transport"                                          unit="kg/m2/s" />
+         <field id="salmtrp"      long_name="salt mass transport"                                          unit="kg/m2/s" />
+         <field id="dihctrp"      long_name="ice heat content transport"                                   unit="W/m2"    />
+         <field id="dshctrp"      long_name="snw heat content transport"                                   unit="W/m2"    />
 
 	 <!-- salt fluxes -->
-         <field id="sfxbri"       long_name="salt flux from brines"                                        unit="1e-3*kg/m2/s" />
-         <field id="sfxdyn"       long_name="salt flux from ridging rafting"                               unit="1e-3*kg/m2/s" />
-         <field id="sfxres"       long_name="salt flux from lipupdate (resultant)"                         unit="1e-3*kg/m2/s" />
-         <field id="sfxbog"       long_name="salt flux from bot growth"                                    unit="1e-3*kg/m2/s" />
-         <field id="sfxbom"       long_name="salt flux from bot melt"                                      unit="1e-3*kg/m2/s" />
-         <field id="sfxsum"       long_name="salt flux from surf melt"                                     unit="1e-3*kg/m2/s" />
-         <field id="sfxlam"       long_name="salt flux from lateral melt"                                  unit="1e-3*kg/m2/s" />
-         <field id="sfxsni"       long_name="salt flux from snow-ice formation"                            unit="1e-3*kg/m2/s" />
-         <field id="sfxopw"       long_name="salt flux from open water ice formation"                      unit="1e-3*kg/m2/s" />
-         <field id="sfxsub"       long_name="salt flux from sublimation"                                   unit="1e-3*kg/m2/s" />
-         <field id="sfx"          long_name="Salt flux from sea ice"                                       unit="1e-3*kg/m2/s" />
+         <field id="sfxice"       long_name="ice-ocean salt flux from ice growth/melt (neg = growth)"      unit="kg/m2/s" />
+         <field id="sfxbog"       long_name="ice-ocean salt flux from ice bottom growth"                   unit="kg/m2/s" />
+         <field id="sfxbom"       long_name="ice-ocean salt flux from ice bottom melt"                     unit="kg/m2/s" />
+         <field id="sfxsum"       long_name="ice-ocean salt flux from ice surface melt"                    unit="kg/m2/s" />
+         <field id="sfxlam"       long_name="ice-ocean salt flux from ice lateral melt"                    unit="kg/m2/s" />
+         <field id="sfxsni"       long_name="ice-ocean salt flux from snow-ice formation"                  unit="kg/m2/s" />
+         <field id="sfxopw"       long_name="ice-ocean salt flux from ice formation in open water"         unit="kg/m2/s" />
+         <field id="sfxdyn"       long_name="ice-ocean salt flux from ice dynamics (ridging)"              unit="kg/m2/s" />
+         <field id="sfxbri"       long_name="ice-ocean salt flux from brines"                              unit="kg/m2/s" />
+         <field id="sfxres"       long_name="ice-ocean salt flux from undiagnosed processes"               unit="kg/m2/s" />
+         <field id="sfxsub"       long_name="ice-ocean salt flux from ice sublimation"                     unit="kg/m2/s" />
 
 	 <!-- mass fluxes -->
-         <field id="vfxbog"       long_name="bottom thermo ice prod."                                      unit="kg/m2/s"   />
-         <field id="vfxdyn"       long_name="dynamic ice prod."                                            unit="kg/m2/s"   />
-         <field id="vfxopw"       long_name="lateral thermo ice prod."                                     unit="kg/m2/s"   />
-         <field id="vfxsni"       long_name="snowice ice prod."                                            unit="kg/m2/s"   />
-         <field id="vfxsum"       long_name="surface melt"                                                 unit="kg/m2/s"   />
-         <field id="vfxlam"       long_name="lateral melt"                                                 unit="kg/m2/s"   />
-         <field id="vfxbom"       long_name="bottom melt"                                                  unit="kg/m2/s"   />
-         <field id="vfxres"       long_name="resultant ice prod./melting"                                  unit="kg/m2/s"   />
-         <field id="vfxice"       long_name="ice melt/growth"                                              unit="kg/m2/s"   />
-         <field id="vfxsnw"       long_name="snw melt/growth"                                              unit="kg/m2/s"   />
-         <field id="vfxsub"       long_name="snw sublimation"                                              unit="kg/m2/s"   />
-         <field id="vfxsub_err"   long_name="excess of snw sublimation sent to ocean"                      unit="kg/m2/s"   />
-         <field id="vfxspr"       long_name="snw precipitation on ice"                                     unit="kg/m2/s"   />
-         <field id="vfxthin"      long_name="thermo ice prod. for thin ice(20cm) + open water"             unit="kg/m2/s"   />
-         <field id="vfxpnd"       long_name="melt pond water flux to ocean"                                unit="kg/m2/s"   />
+         <field id="vfxice"       long_name="ice-ocean mass flux from ice melt/growth (neg = growth)"      unit="kg/m2/s" />
+         <field id="vfxbog"       long_name="ice-ocean mass flux from ice bottom growth"                   unit="kg/m2/s" />
+         <field id="vfxbom"       long_name="ice-ocean mass flux from ice bottom melt"                     unit="kg/m2/s" />
+         <field id="vfxsum"       long_name="ice-ocean mass flux from ice surface melt"                    unit="kg/m2/s" />
+         <field id="vfxlam"       long_name="ice-ocean mass flux from ice lateral melt"                    unit="kg/m2/s" />
+         <field id="vfxsni"       long_name="ice-ocean mass flux from snow-ice formation"                  unit="kg/m2/s" />
+         <field id="vfxopw"       long_name="ice-ocean mass flux from ice growth in open water"            unit="kg/m2/s" />
+         <field id="vfxdyn"       long_name="ice-ocean mass flux from ice dynamics (ridging)"              unit="kg/m2/s" />
+         <field id="vfxres"       long_name="ice-ocean mass flux from undiagnosed processes"               unit="kg/m2/s" />
+         <field id="vfxpnd"       long_name="ice-ocean mass flux from ice melt ponds"                      unit="kg/m2/s" />
+         <field id="vfxsub"       long_name="ice-atm.  mass flux from ice sublimation"                     unit="kg/m2/s" />
+         <field id="vfxsub_err"   long_name="ice-ocean mass flux from unbalance in sublimation (incl. in qt_oce_ai)" unit="kg/m2/s" />
+         <field id="vfxthin"      long_name="ice-ocean mass flux from ice growth in open water + thin ice(20cm)" unit="kg/m2/s" />
+
+         <field id="vfxsnw"       long_name="ice-ocean mass flux from snw melt/growth (neg = growth)"      unit="kg/m2/s" />
+         <field id="vfxsnw_sum"   long_name="ice-ocean mass flux from snw surface melt"                    unit="kg/m2/s" />
+         <field id="vfxsnw_sni"   long_name="ice-ocean mass flux from snow-ice formation"                  unit="kg/m2/s" />
+         <field id="vfxsnw_dyn"   long_name="ice-ocean mass flux from dynamics (ridging)"                  unit="kg/m2/s" />
+         <field id="vfxsnw_sub"   long_name="ice-atm.  mass flux from snw sublimation"                     unit="kg/m2/s" />
+         <field id="vfxsnw_pre"   long_name="snw precipitation on ice"                                     unit="kg/m2/s" />
 
 	 <!-- heat fluxes -->
-         <field id="hfxsum"       long_name="heat fluxes causing surface ice melt"                         unit="W/m2"  />
-         <field id="hfxbom"       long_name="heat fluxes causing bottom ice melt"                          unit="W/m2"  />
-         <field id="hfxbog"       long_name="heat fluxes causing bottom ice growth"                        unit="W/m2"  />
-         <field id="hfxdif"       long_name="heat fluxes causing ice temperature change"                   unit="W/m2"  />
-         <field id="hfxopw"       long_name="heat fluxes causing open water ice formation"                 unit="W/m2"  />
-         <field id="hfxsnw"       long_name="heat fluxes causing snow melt"                                unit="W/m2"  />
-         <field id="hfxerr"       long_name="heat fluxes error after heat diffusion"                       unit="W/m2"  />
-         <field id="hfxerr_rem"   long_name="heat fluxes error after remapping"                            unit="W/m2"  />
-         <field id="hfxout"       long_name="total heat fluxes received by the ocean"                      unit="W/m2"  />
-         <field id="hfxin"        long_name="total heat fluxes at the ice/ocean surface"                   unit="W/m2"  />
-
+         <field id="hfxbog"       long_name="heat flux used for bottom ice growth (neg.)"                  unit="W/m2" />
+         <field id="hfxbom"       long_name="heat flux used for bottom ice melt (pos.)"                    unit="W/m2" />
+         <field id="hfxsum"       long_name="heat flux used for surface ice melt"                          unit="W/m2" />
+         <field id="hfxopw"       long_name="heat flux used for open water ice formation"                  unit="W/m2" />
+         <field id="hfxdif"       long_name="heat flux used for ice temperature change"                    unit="W/m2" />
+         <field id="hfxsnw"       long_name="heat flux used for snow melt"                                 unit="W/m2" />
+         <field id="hfxerr"       long_name="heat flux error after heat diffusion"                         unit="W/m2" />
          <!-- heat fluxes associated with mass exchange -->
-         <field id="hfxthd"       long_name="heat fluxes from ice-ocean mass exchange during thermo"       unit="W/m2"  />
-         <field id="hfxdyn"       long_name="heat fluxes from ice-ocean mass exchange during dynamic"      unit="W/m2"  />
-         <field id="hfxres"       long_name="heat fluxes from ice-ocean mass exchange during resultant"    unit="W/m2"  />
-         <field id="hfxsub"       long_name="heat fluxes from ice-atm. mass exchange during sublimation"   unit="W/m2"  />
-         <field id="hfxspr"       long_name="heat fluxes from ice-atm. mass exchange during snow precip"   unit="W/m2"  />
+         <field id="hfxthd"       long_name="heat fluxes from ice-ocean mass exchange during thermo"       unit="W/m2" />
+         <field id="hfxdyn"       long_name="heat fluxes from ice-ocean mass exchange during dynamic"      unit="W/m2" />
+         <field id="hfxres"       long_name="heat fluxes from ice-ocean mass exchange during resultant"    unit="W/m2" />
+         <field id="hfxsub"       long_name="heat fluxes from ice-atm. mass exchange during sublimation"   unit="W/m2" />
+         <field id="hfxspr"       long_name="heat fluxes from ice-atm. mass exchange during snow precip"   unit="W/m2" />
+
+         <field id="hfxsensib"    long_name="Net sensible heat flux under sea ice (neg = ice cooling)"         standard_name="ice_ocean_heat_flux"                        unit="W/m2" />
+         <field id="hfxcndtop"    long_name="Net conductive heat flux at the ice surface (neg = ice cooling)"  standard_name="conductive_heat_flux_at_sea_ice_surface"    unit="W/m2" /> 
+         <field id="hfxcndbot"    long_name="Net conductive heat flux at the ice bottom (neg = ice cooling)"   standard_name="conductive_heat_flux_at_sea_ice_bottom"     unit="W/m2" />
 
          <!-- diags -->
-         <field id="hfxdhc"       long_name="Heat content variation in snow and ice"                       unit="W/m2" />
-         <field id="hfxtur"       long_name="turbulent heat flux at the ice base"                          unit="W/m2" />
+         <field id="hfxdhc"       long_name="Heat content variation in snow and ice (neg = ice cooling)"   unit="W/m2" />
 
 	 <!-- sbcssm variables -->
@@ -215,52 +159,124 @@
 
 	 <!-- categories -->
-	 <field id="iceconc_cat"  long_name="Sea-ice concentration in thickness categories"                unit=""       grid_ref="grid_T_3D_ncatice" />
-         <field id="icethic_cat"  long_name="Sea-ice thickness in thickness categories"                    unit="m"      grid_ref="grid_T_3D_ncatice" />
-         <field id="snowthic_cat" long_name="Snow thickness in thickness categories"                       unit="m"      grid_ref="grid_T_3D_ncatice" />
-         <field id="iceage_cat"   long_name="Ice age for categories"                                       unit="days"   grid_ref="grid_T_3D_ncatice" />
-         <field id="salinity_cat" long_name="Sea-Ice Bulk salinity for categories"                         unit="g/kg"   grid_ref="grid_T_3D_ncatice" />
-         <field id="brinevol_cat" long_name="Brine volume for categories"                                  unit="%"      grid_ref="grid_T_3D_ncatice" />
-         <field id="icetemp_cat"  long_name="Ice temperature for categories"                               unit="degC"   grid_ref="grid_T_3D_ncatice" />
-         <field id="snwtemp_cat"  long_name="Snow temperature for categories"                              unit="degC"   grid_ref="grid_T_3D_ncatice" />
-         <field id="iceamp_cat"   long_name="Ice melt pond concentration for categories"                   unit="%"      grid_ref="grid_T_3D_ncatice" /> 
-         <field id="icevmp_cat"   long_name="Ice melt pond volume for categories"                          unit="m"      grid_ref="grid_T_3D_ncatice" /> 
-         <field id="icehmp_cat"   long_name="Ice melt pond thickness for categories"                       unit="m"      grid_ref="grid_T_3D_ncatice" /> 
-         <field id="iceafp_cat"   long_name="Ice melt pond fraction for categories"                        unit="m"      grid_ref="grid_T_3D_ncatice" /> 
+	 <field id="iceconc_cat"  long_name="Sea-ice concentration per category"                unit=""       grid_ref="grid_T_3D_ncatice" />
+         <field id="icethic_cat"  long_name="Sea-ice thickness per category"                    unit="m"      grid_ref="grid_T_3D_ncatice" />
+         <field id="snwthic_cat"  long_name="Snow thickness per category"                       unit="m"      grid_ref="grid_T_3D_ncatice" />
+         <field id="icesalt_cat"  long_name="Sea-Ice Bulk salinity per category"                unit="g/kg"   grid_ref="grid_T_3D_ncatice" />
+         <field id="icetemp_cat"  long_name="Ice temperature per category"                      unit="degC"   grid_ref="grid_T_3D_ncatice" />
+         <field id="snwtemp_cat"  long_name="Snow temperature per category"                     unit="degC"   grid_ref="grid_T_3D_ncatice" />
+         <field id="iceapnd_cat"  long_name="Ice melt pond concentration per category"          unit="%"      grid_ref="grid_T_3D_ncatice" /> 
+         <field id="icehpnd_cat"  long_name="Ice melt pond thickness per category"              unit="m"      grid_ref="grid_T_3D_ncatice" /> 
+         <field id="iceafpnd_cat" long_name="Ice melt pond fraction per category"               unit="m"      grid_ref="grid_T_3D_ncatice" /> 
+         <field id="icemask_cat"  long_name="Ice mask (0 if no ice, 1 otherwise) per category"  unit=""       grid_ref="grid_T_3D_ncatice" />
+         <field id="iceage_cat"   long_name="Ice age per category"                              unit="days"   grid_ref="grid_T_3D_ncatice" />
+         <field id="icebrv_cat"   long_name="Brine volume per category"                         unit="%"      grid_ref="grid_T_3D_ncatice" />
+
+	 <!-- ================= -->
+         <!-- Add-ons for SIMIP -->
+         <!-- ================= -->
+         <field id="icemass_cmip" long_name="Sea-ice mass per area"                                   standard_name="sea_ice_amount"                             unit="kg/m2"  > icemass * icemask   + 1.e20 * (1.-icemask  ) </field>
+         <field id="icethic_cmip" long_name="Sea-ice thickness"                                       standard_name="sea_ice_thickness"                          unit="m"      > icethic * icemask05 + 1.e20 * (1.-icemask05) </field>
+         <field id="snwmass_cmip" long_name="Snow mass per area"                                      standard_name="liquid_water_content_of_surface_snow"       unit="kg/m2"  > snwmass * icemask   + 1.e20 * (1.-icemask  ) </field>
+         <field id="snwthic_cmip" long_name="Snow thickness"                                          standard_name="surface_snow_thickness"                     unit="m"      > snwthic * icemask05 + 1.e20 * (1.-icemask05) </field>
+         <field id="iceconc_pct"  long_name="Sea-ice area fraction in percent"                        standard_name="sea_ice_area_fraction_in_percent"           unit="%"      > iceconc * 100.                                </field>
+         <field id="iceage_cmip"  long_name="Age of sea ice"                                          standard_name="age_of_sea_ice"                             unit="days"   > iceage  * icemask15 + 1.e20 * (1.-icemask15) </field>
+         <field id="icesalt_cmip" long_name="Sea ice salinity"                                        standard_name="sea_ice_salinity"                           unit="g/kg"   > icesalt * icemask   + 1.e20 * (1.-icemask)   </field>
+         <field id="icefrb_cmip"  long_name="Sea-ice freeboard"                                       standard_name="sea_ice_freeboard"                          unit="m"      > icefrb  * icemask   + 1.e20 * (1.-icemask)   </field>
+
+	 <!-- heat -->
+         <field id="icettop_cmip" long_name="Surface temperature of sea ice"                          standard_name="sea_ice_surface_temperature"                unit="K"  > (icettop+273.15) * icemask + 1.e20 * (1.-icemask) </field>
+         <field id="icetsni_cmip" long_name="Temperature at snow-ice interface"                       standard_name="sea_ice_snow_interface_temperature"         unit="K"  > (icetsni+273.15) * icemask + 1.e20 * (1.-icemask) </field>
+         <field id="icetbot_cmip" long_name="Temperature at ice-ocean interface"                      standard_name="sea_ice_bottom_temperature"                 unit="K"  > (icetbot+273.15) * icemask + 1.e20 * (1.-icemask) </field>
+         <field id="icehc_cmip"   long_name="Sea-ice heat content per unit area"                      standard_name="integral_of_sea_ice_temperature_wrt_depth_expressed_as_heat_content" unit="J/m2" > icehc * icemask + 1.e20 * (1.-icemask) </field>
+         <field id="snwhc_cmip"   long_name="Snow-heat content per unit area"                         standard_name="thermal_energy_content_of_surface_snow"                              unit="J/m2" > snwhc * icemask + 1.e20 * (1.-icemask) </field>
+
+	 <!-- fluxes (mass, heat, salt) -->
+         <field id="vfxsum_cmip"    long_name="Freshwater flux from sea-ice surface"                  standard_name="freshwater_flux_from_ice_surface"           unit="kg/m2/s"  > vfxsum    * icemask + 1.e20 * (1.-icemask) </field>
+         <field id="vfxice_cmip"    long_name="Freshwater flux from sea ice"                          standard_name="freshwater_flux_from_ice"                   unit="kg/m2/s"  > vfxice    * icemask + 1.e20 * (1.-icemask) </field>
+         <field id="hfxsensib_cmip" long_name="Net sensible heat flux under sea ice"                  standard_name="ice_ocean_heat_flux"                        unit="W/m2"     > hfxsensib * icemask + 1.e20 * (1.-icemask) </field> 
+         <field id="hfxcndtop_cmip" long_name="Net conductive heat flux at the ice surface"           standard_name="conductive_heat_flux_at_sea_ice_surface"    unit="W/m2"     > hfxcndtop * icemask + 1.e20 * (1.-icemask) </field> 
+         <field id="hfxcndbot_cmip" long_name="Net conductive heat flux at the ice bottom"            standard_name="conductive_heat_flux_at_sea_ice_bottom"     unit="W/m2"     > hfxcndbot * icemask + 1.e20 * (1.-icemask) </field>
+         <field id="sfxice_cmip"    long_name="Salt flux from sea ice"                                standard_name="salt_flux_from_ice"                         unit="kg/m2/s"  > sfxice    * icemask + 1.e20 * (1.-icemask) </field>
+
+	 <!-- trends -->
+         <field id="dmithd"       long_name="sea-ice mass change from thermodynamics"                 standard_name="tendency_of_sea_ice_amount_due_to_thermodynamics"                        unit="kg/m2/s" />
+         <field id="dmidyn"       long_name="sea-ice mass change from dynamics"                       standard_name="tendency_of_sea_ice_amount_due_to_dynamics"                              unit="kg/m2/s" />
+         <field id="dmiopw"       long_name="sea-ice mass change through growth in supercooled open water (frazil)" standard_name="tendency_of_sea_ice_amount_due_to_freezing_in_open_water"  unit="kg/m2/s" />
+         <field id="dmibog"       long_name="sea-ice mass change through basal growth"                standard_name="tendency_of_sea_ice_amount_due_to_congelation_ice_accumulation"          unit="kg/m2/s" />
+         <field id="dmisni"       long_name="sea-ice mass change through snow-to-ice conversion"      standard_name="tendency_of_sea_ice_amount_due_to_snow_conversion"                       unit="kg/m2/s" />
+         <field id="dmtsub"       long_name="snow and sea ice mass change through sublimation"        standard_name="tendency_of_snow_and_ice_amount_due_to_sublimation"                      unit="kg/m2/s" />
+         <field id="dmssub"       long_name="sea-ice mass change through evaporation and sublimation" standard_name="water_evaporation_flux"                                                  unit="kg/m2/s" />
+         <field id="dmisub"       long_name="snow mass change through evaporation or sublimation"     standard_name="surface_snow_sublimation_flux"                                           unit="kg/m2/s" />
+         <field id="dmisum"       long_name="sea-ice mass change through surface melting"             standard_name="tendency_of_sea_ice_amount_due_to_surface_melting"                       unit="kg/m2/s" />
+         <field id="dmibom"       long_name="sea-ice mass change through bottom melting"              standard_name="tendency_of_sea_ice_amount_due_to_basal_melting"                         unit="kg/m2/s" />
+         <field id="dmsspr"       long_name="snow mass change through snow fall"                      standard_name="snowfall_flux"                                                           unit="kg/m2/s" />
+         <field id="dmsmel"       long_name="snow mass change through melt"                           standard_name="surface_snow_melt_flux"                                                  unit="kg/m2/s" />
+         <field id="dmsdyn"       long_name="snow mass change through advection by sea-ice dynamics"  standard_name="tendency_of_snow_mass_due_to_sea_ice_dynamics"                           unit="kg/m2/s" />
+         <field id="dmsssi"       long_name="snow mass change through snow-to-ice conversion"         standard_name="tendency_of_snow_mass_due_to_snow_to_ice_conversion"                     unit="kg/m2/s" />
+
+	 <!-- momentum (rheology) -->
+         <field id="uice_cmip"    long_name="X-component of sea ice velocity"                         standard_name="sea_ice_x_velocity"                    unit="m/s"   > uice    * icemask + 1.e20 * (1.-icemask) </field>
+         <field id="vice_cmip"    long_name="Y-component of sea ice velocity"                         standard_name="sea_ice_y_velocity"                    unit="m/s"   > vice    * icemask + 1.e20 * (1.-icemask) </field>     
+         <field id="icevel_cmip"  long_name="Sea-ice speed"                                           standard_name="sea_ice_speed"                         unit="m/s"   > icevel  * icemask + 1.e20 * (1.-icemask) </field> 
+         <field id="utau_ai_cmip" long_name="X-component of atmospheric stress on sea ice"            standard_name="surface_downward_x_stress"             unit="N/m2"  > utau_ai * icemask + 1.e20 * (1.-icemask) </field>
+         <field id="vtau_ai_cmip" long_name="Y-component of atmospheric stress on sea ice"            standard_name="surface_downward_y_stress"             unit="N/m2"  > vtau_ai * icemask + 1.e20 * (1.-icemask) </field>
+         <field id="dssh_dx"      long_name="Sea-surface tilt term in force balance (x-component)"    standard_name="sea_surface_tilt_force_on_sea_ice_x"   unit="N/m2" />
+         <field id="dssh_dy"      long_name="Sea-surface tilt term in force balance (y-component)"    standard_name="sea_surface_tilt_force_on_sea_ice_y"   unit="N/m2" />
+         <field id="corstrx"      long_name="Coriolis force term in force balance (x-component)"      standard_name="coriolis_force_on_sea_ice_x"           unit="N/m2" />
+         <field id="corstry"      long_name="Coriolis force term in force balance (y-component)"      standard_name="coriolis_force_on_sea_ice_y"           unit="N/m2" />
+         <field id="intstrx"      long_name="Internal stress term in force balance (x-component)"     standard_name="internal_stress_in_sea_ice_x"          unit="N/m2" />
+         <field id="intstry"      long_name="Internal stress term in force balance (y-component)"     standard_name="internal_stress_in_sea_ice_y"          unit="N/m2" />
+
+	 <!-- momentum (advection) -->
+	 <field id="xmtrpice"     long_name="X-component of ice mass transport"                       standard_name="ice_x_transport"                       unit="kg/s" />
+         <field id="ymtrpice"     long_name="Y-component of ice mass transport"                       standard_name="ice_y_transport"                       unit="kg/s" />
+         <field id="xmtrpsnw"     long_name="X-component of snw mass transport"                       standard_name="snw_x_transport"                       unit="kg/s" />
+         <field id="ymtrpsnw"     long_name="Y-component of snw mass transport"                       standard_name="snw_y_transport"                       unit="kg/s" />
+         <field id="xatrp"        long_name="X-component of ice area transport"                       standard_name="area_x_transport"                      unit="m2/s" />
+         <field id="yatrp"        long_name="Y-component of ice area transport"                       standard_name="area_y_transport"                      unit="m2/s" />
+         <field id="xmtrptot"     long_name="X-component of sea-ice mass transport"                   standard_name="sea_ice_x_transport"                   unit="kg/s" > xmtrpice + xmtrpsnw </field>
+         <field id="ymtrptot"     long_name="Y-component of sea-ice mass transport"                   standard_name="sea_ice_y_transport"                   unit="kg/s" > ymtrpice + ymtrpsnw </field>
+
+	 <!-- categories -->
+         <field id="iceconc_cat_cmip"     long_name="Sea-ice area fractions in thickness categories"  standard_name="sea_ice_area_fraction_over_categories" unit=""   grid_ref="grid_T_3D_ncatice" > iceconc_cat * icemask_cat + 1.e20 * (1.-icemask_cat) </field>
+         <field id="icethic_cat_cmip"     long_name="Sea-ice thickness in thickness categories"       standard_name="sea_ice_thickness_over_categories"     unit="m"  grid_ref="grid_T_3D_ncatice" > icethic_cat * icemask_cat + 1.e20 * (1.-icemask_cat) </field>
+         <field id="snwthic_cat_cmip"     long_name="Snow thickness in thickness categories"          standard_name="snow_thickness_over_categories"        unit="m"  grid_ref="grid_T_3D_ncatice" > snwthic_cat * icemask_cat + 1.e20 * (1.-icemask_cat) </field>
+         <field id="iceconc_cat_pct_cmip" long_name="Sea-ice area fractions in thickness categories"  standard_name="sea_ice_area_fraction_over_categories" unit="%"  grid_ref="grid_T_3D_ncatice" > iceconc_cat*100. * icemask_cat + 1.e20 * (1.-icemask_cat) </field>
 	 
       </field_group>
 
-      <!-- LIM3 scalar variables -->
+      <!-- scalar variables -->
       <field_group id="SBC_scalar"  grid_ref="grid_T_2D" >
-         <!-- available with ln_limdiaout -->
-         <field id="ibgfrcvoltop"    long_name="global mean ice/snow forcing at interface ice/snow-atm (volume equivalent ocean volume)"   unit="km3"        />
-         <field id="ibgfrcvolbot"    long_name="global mean ice/snow forcing at interface ice/snow-ocean (volume equivalent ocean volume)" unit="km3"        />
-         <field id="ibgfrctemtop"    long_name="global mean heat on top of ice/snw/ocean-atm "                                             unit="1e20J"      />
-         <field id="ibgfrctembot"    long_name="global mean heat below ice (on top of ocean) "                                             unit="1e20J"      />
-         <field id="ibgfrcsal"       long_name="global mean ice/snow forcing (salt equivalent ocean volume)"                               unit="pss*km3"    />
-         <field id="ibgfrchfxtop"    long_name="global mean heat flux on top of ice/snw/ocean-atm "                                        unit="W/m2"       />
-         <field id="ibgfrchfxbot"    long_name="global mean heat flux below ice (on top of ocean) "                                        unit="W/m2"       />
+         <!-- available with ln_icediaout -->
+         <field id="ibgfrcvoltop"    long_name="global mean ice/snow forcing at interface ice/snow-atm (volume equivalent ocean volume)"   unit="km3"      />
+         <field id="ibgfrcvolbot"    long_name="global mean ice/snow forcing at interface ice/snow-ocean (volume equivalent ocean volume)" unit="km3"      />
+         <field id="ibgfrctemtop"    long_name="global mean heat on top of ice/snw/ocean-atm "                                             unit="1e20J"    />
+         <field id="ibgfrctembot"    long_name="global mean heat below ice (on top of ocean) "                                             unit="1e20J"    />
+         <field id="ibgfrcsal"       long_name="global mean ice/snow forcing (salt equivalent ocean volume)"                               unit="pss*km3"  />
+         <field id="ibgfrchfxtop"    long_name="global mean heat flux on top of ice/snw/ocean-atm "                                        unit="W/m2"     />
+         <field id="ibgfrchfxbot"    long_name="global mean heat flux below ice (on top of ocean) "                                        unit="W/m2"     />
  
-         <field id="ibgvolume"       long_name="drift in ice/snow volume (equivalent ocean volume)"                                        unit="km3"        />
-         <field id="ibgsaltco"       long_name="drift in ice salt content (equivalent ocean volume)"                                       unit="pss*km3"    />
-         <field id="ibgheatco"       long_name="drift in ice/snow heat content"                                                            unit="1e20J"      />
-         <field id="ibgheatfx"       long_name="drift in ice/snow heat flux"                                                               unit="W/m2"       />
-
-         <field id="ibgvol_tot"      long_name="global mean ice volume"                                                                    unit="km3"        />
-         <field id="sbgvol_tot"      long_name="global mean snow volume"                                                                   unit="km3"        />
-         <field id="ibgarea_tot"     long_name="global mean ice area"                                                                      unit="km2"        />
-         <field id="ibgsalt_tot"     long_name="global mean ice salt content"                                                              unit="1e-3*km3"   />
-         <field id="ibgheat_tot"     long_name="global mean ice heat content"                                                              unit="1e20J"      />
-         <field id="sbgheat_tot"     long_name="global mean snow heat content"                                                             unit="1e20J"      />
-
-         <field id="NH_iceextt"      long_name="Sea ice extent North"                            standard_name="sea_ice_extent_n"          unit="1e6_km2"    />
-         <field id="SH_iceextt"      long_name="Sea ice extent South"                            standard_name="sea_ice_extent_s"          unit="1e6_km2"    />
-         <field id="NH_icevolu"      long_name="Sea ice volume North"                            standard_name="sea_ice_volume_n"          unit="1e3_km3"    />
-         <field id="SH_icevolu"      long_name="Sea ice volume South"                            standard_name="sea_ice_volume_s"          unit="1e3_km3"    />
-         <field id="NH_icearea"      long_name="Sea ice area North"                              standard_name="sea_ice_area_n"            unit="1e6_km2"    />
-         <field id="SH_icearea"      long_name="Sea ice area South"                              standard_name="sea_ice_area_s"            unit="1e6_km2"    />
-
-         <field id="strait_mifl"     long_name="Sea ice mass flux through straits"      standard_name="sea_ice_mass_transport_across_line" unit="kg/s"  grid_ref="grid_4strait"   />
-         <field id="strait_arfl"     long_name="Sea ice area flux through straits"      standard_name="sea_ice_area_transport_across_line" unit="m2/s"  grid_ref="grid_4strait"   />  
-         <field id="strait_msfl"     long_name="Sea ice snow flux through straits"      standard_name="snow_mass_transport_across_line"    unit="kg/s"  grid_ref="grid_4strait"   />
+         <field id="ibgvolume"       long_name="drift in ice/snow volume (equivalent ocean volume)"                                        unit="km3"      />
+         <field id="ibgsaltco"       long_name="drift in ice salt content (equivalent ocean volume)"                                       unit="pss*km3"  />
+         <field id="ibgheatco"       long_name="drift in ice/snow heat content"                                                            unit="1e20J"    />
+         <field id="ibgheatfx"       long_name="drift in ice/snow heat flux"                                                               unit="W/m2"     />
+
+         <field id="ibgvol_tot"      long_name="global mean ice volume"                                                                    unit="km3"      />
+         <field id="sbgvol_tot"      long_name="global mean snow volume"                                                                   unit="km3"      />
+         <field id="ibgarea_tot"     long_name="global mean ice area"                                                                      unit="km2"      />
+         <field id="ibgsalt_tot"     long_name="global mean ice salt content"                                                              unit="1e-3*km3" />
+         <field id="ibgheat_tot"     long_name="global mean ice heat content"                                                              unit="1e20J"    />
+         <field id="sbgheat_tot"     long_name="global mean snow heat content"                                                             unit="1e20J"    />
+
+         <field id="NH_iceextt"      long_name="Sea ice extent North"                   standard_name="sea_ice_extent_n"                   unit="1e6_km2"  />
+         <field id="SH_iceextt"      long_name="Sea ice extent South"                   standard_name="sea_ice_extent_s"                   unit="1e6_km2"  />
+         <field id="NH_icevolu"      long_name="Sea ice volume North"                   standard_name="sea_ice_volume_n"                   unit="1e3_km3"  />
+         <field id="SH_icevolu"      long_name="Sea ice volume South"                   standard_name="sea_ice_volume_s"                   unit="1e3_km3"  />
+         <field id="NH_icearea"      long_name="Sea ice area North"                     standard_name="sea_ice_area_n"                     unit="1e6_km2"  />
+         <field id="SH_icearea"      long_name="Sea ice area South"                     standard_name="sea_ice_area_s"                     unit="1e6_km2"  />
+
+         <field id="strait_mifl"     long_name="Sea ice mass flux through straits"      standard_name="sea_ice_mass_transport_across_line" unit="kg/s"  grid_ref="grid_4strait" />
+         <field id="strait_arfl"     long_name="Sea ice area flux through straits"      standard_name="sea_ice_area_transport_across_line" unit="m2/s"  grid_ref="grid_4strait" />  
+         <field id="strait_msfl"     long_name="Sea ice snow flux through straits"      standard_name="snow_mass_transport_across_line"    unit="kg/s"  grid_ref="grid_4strait" />
 
       </field_group>
@@ -272,5 +288,5 @@
       
       <field_group id="myvarICE" >
-         <field field_ref="icethick"         name="sithic"  />
+         <field field_ref="icethic"          name="sithic"  />
          <field field_ref="icevolu"          name="sivolu"  />
          <field field_ref="iceconc"          name="siconc"  />
@@ -304,5 +320,5 @@
       <!--============================-->
       <!-- SIMIP sea ice field groups -->
-      <!-- Notz et al 2016            -->
+      <!--     Notz et al 2016        -->
       <!--============================-->
 
@@ -318,13 +334,14 @@
       </field_group>
 
-      <!-- SIMIP daily fields --> <field_group id="SIday_fields"> 
+      <!-- SIMIP daily fields -->
+      <field_group id="SIday_fields"> 
           <field field_ref="icepres"          name="sitimefrac"   /> 
           <field field_ref="iceconc_pct"      name="siconc"       /> 
-          <field field_ref="icethic"          name="sithick"      default_value="1.0e20" detect_missing_value="true" operation="average" /> 
-          <field field_ref="snothic"          name="sisnthick"    default_value="1.0e20" detect_missing_value="true" operation="average" />
-          <field field_ref="icestK"           name="sitemptop"    default_value="1.0e20" detect_missing_value="true" operation="average" />
-          <field field_ref="uice_mv"          name="siu"          default_value="1.0e20" detect_missing_value="true" operation="average" />
-          <field field_ref="vice_mv"          name="siv"          default_value="1.0e20" detect_missing_value="true" operation="average" />
-          <field field_ref="icevel_mv"        name="sispeed"      default_value="1.0e20" detect_missing_value="true" operation="average" />
+          <field field_ref="icethic_cmip"     name="sithick"      default_value="1.0e20" detect_missing_value="true" operation="average" /> 
+          <field field_ref="snwthic_cmip"     name="sisnthick"    default_value="1.0e20" detect_missing_value="true" operation="average" />
+          <field field_ref="icettop_cmip"     name="sitemptop"    default_value="1.0e20" detect_missing_value="true" operation="average" />
+          <field field_ref="uice_cmip"        name="siu"          default_value="1.0e20" detect_missing_value="true" operation="average" />
+          <field field_ref="vice_cmip"        name="siv"          default_value="1.0e20" detect_missing_value="true" operation="average" />
+          <field field_ref="icevel_cmip"      name="sispeed"      default_value="1.0e20" detect_missing_value="true" operation="average" />
       </field_group>
 
@@ -334,29 +351,29 @@
           <field field_ref="icepres"          name="sitimefrac"   />
           <field field_ref="iceconc_pct"      name="siconc"       />
-          <field field_ref="icemass"          name="simass"       />
-          <field field_ref="icethic"          name="sithick"      default_value="1.0e20" detect_missing_value="true" operation="average" />
+          <field field_ref="icemass_cmip"     name="simass"       default_value="1.0e20" detect_missing_value="true" operation="average" />
+          <field field_ref="icethic_cmip"     name="sithick"      default_value="1.0e20" detect_missing_value="true" operation="average" />
           <field field_ref="icevolu"          name="sivol"        />
-          <field field_ref="snomass"          name="sisnmass"     default_value="1.0e20" detect_missing_value="true" operation="average" /> 
-          <field field_ref="snothic"          name="sisnthick"    default_value="1.0e20" detect_missing_value="true" operation="average" />
+          <field field_ref="snwmass_cmip"     name="sisnmass"     default_value="1.0e20" detect_missing_value="true" operation="average" /> 
+          <field field_ref="snwthic_cmip"     name="sisnthick"    default_value="1.0e20" detect_missing_value="true" operation="average" />
    
           <!-- category-dependent fields -->
-          <field field_ref="iceconc_cat_pct_mv"  name="siitdconc"    default_value="1.0e20" detect_missing_value="true" operation="average" />
-          <field field_ref="icethic_cat_mv"      name="siitdthick"   default_value="1.0e20" detect_missing_value="true" operation="average" />
-          <field field_ref="snowthic_cat_mv"     name="siitdsnthick" default_value="1.0e20" detect_missing_value="true" operation="average" />
+          <field field_ref="iceconc_cat_pct_cmip" name="siitdconc"    default_value="1.0e20" detect_missing_value="true" operation="average" />
+          <field field_ref="icethic_cat_cmip"     name="siitdthick"   default_value="1.0e20" detect_missing_value="true" operation="average" />
+          <field field_ref="snwthic_cat_cmip"     name="siitdsnthick" default_value="1.0e20" detect_missing_value="true" operation="average" />
 
           <!-- additional state variables-->
-          <field field_ref="icestK"           name="sitemptop"    default_value="1.0e20" detect_missing_value="true" operation="average" />
-          <field field_ref="icesntK"          name="sitempsnic"   default_value="1.0e20" detect_missing_value="true" operation="average" />
-          <field field_ref="icebotK"          name="sitempbot"    default_value="1.0e20" detect_missing_value="true" operation="average" />
-          <field field_ref="iceage"           name="siage"        default_value="1.0e20" detect_missing_value="true" operation="average" />
-          <field field_ref="icesmass"         name="sisaltmass"   />
-          <field field_ref="icesal"           name="sisali"       default_value="1.0e20" detect_missing_value="true" operation="average" />
-          <field field_ref="icefb"            name="sifb"         default_value="1.0e20" detect_missing_value="true" operation="average" />
-          <field field_ref="icehcneg"         name="sihc"         />
-          <field field_ref="isnhcneg"         name="sisnhc"       default_value="1.0e20" detect_missing_value="true" operation="average" />
+          <field field_ref="icettop_cmip"     name="sitemptop"    default_value="1.0e20" detect_missing_value="true" operation="average" />
+          <field field_ref="icetsni_cmip"     name="sitempsnic"   default_value="1.0e20" detect_missing_value="true" operation="average" />
+          <field field_ref="icetbot_cmip"     name="sitempbot"    default_value="1.0e20" detect_missing_value="true" operation="average" />
+          <field field_ref="iceage_cmip"      name="siage"        default_value="1.0e20" detect_missing_value="true" operation="average" />
+          <field field_ref="icesalm"          name="sisaltmass"   />
+          <field field_ref="icesalt_cmip"     name="sisali"       default_value="1.0e20" detect_missing_value="true" operation="average" />
+          <field field_ref="icefrb_cmip"      name="sifb"         default_value="1.0e20" detect_missing_value="true" operation="average" />
+          <field field_ref="icehc_cmip"       name="sihc"         default_value="1.0e20" detect_missing_value="true" operation="average" />
+          <field field_ref="snwhc_cmip"       name="sisnhc"       default_value="1.0e20" detect_missing_value="true" operation="average" />
 
           <!-- freshwater fluxes -->
-          <field field_ref="wfxtot"           name="siflfwbot"    default_value="1.0e20" detect_missing_value="true" operation="average" />
-          <field field_ref="wfxsum"           name="siflfwdrain"  default_value="1.0e20" detect_missing_value="true" operation="average" />
+          <field field_ref="vfxice_cmip"      name="siflfwbot"    default_value="1.0e20" detect_missing_value="true" operation="average" />
+          <field field_ref="vfxsum_cmip"      name="siflfwdrain"  default_value="1.0e20" detect_missing_value="true" operation="average" />
 
           <!-- area balance -->
@@ -380,41 +397,32 @@
 
           <!-- heat balance -->
-          <field field_ref="hfxsenso"         name="siflsensupbot"    default_value="1.0e20" detect_missing_value="true" operation="average" />
-          <field field_ref="hfxconsu"         name="siflcondtop"      default_value="1.0e20" detect_missing_value="true" operation="average" />
-          <field field_ref="hfxconbo"         name="siflcondbot"      default_value="1.0e20" detect_missing_value="true" operation="average" />
+          <field field_ref="hfxsensib"        name="siflsensupbot"    default_value="1.0e20" detect_missing_value="true" operation="average" />
+          <field field_ref="hfxcndtop"        name="siflcondtop"      default_value="1.0e20" detect_missing_value="true" operation="average" />
+          <field field_ref="hfxcndbot"        name="siflcondbot"      default_value="1.0e20" detect_missing_value="true" operation="average" />
 
           <!-- salt balance -->
-          <field field_ref="sfx_mv"           name="siflsaltbot"      default_value="1.0e20" detect_missing_value="true" operation="average" />
+          <field field_ref="sfxice_cmip"      name="siflsaltbot"      default_value="1.0e20" detect_missing_value="true" operation="average" />
 
           <!-- sea-ice dynamics -->
-          <field field_ref="uice_mv"          name="siu"              default_value="1.0e20" detect_missing_value="true" operation="average" />
-          <field field_ref="vice_mv"          name="siv"              default_value="1.0e20" detect_missing_value="true" operation="average" />
-          <field field_ref="icevel_mv"        name="sispeed"          default_value="1.0e20" detect_missing_value="true" operation="average" />
-
-          <field field_ref="utau_ice"         name="sistrxdtop"       default_value="1.0e20" detect_missing_value="true" operation="average" />
-          <field field_ref="vtau_ice"         name="sistrydtop"       default_value="1.0e20" detect_missing_value="true" operation="average" />
-
+          <field field_ref="uice_cmip"        name="siu"              default_value="1.0e20" detect_missing_value="true" operation="average" />
+          <field field_ref="vice_cmip"        name="siv"              default_value="1.0e20" detect_missing_value="true" operation="average" />
+          <field field_ref="icevel_cmip"      name="sispeed"          default_value="1.0e20" detect_missing_value="true" operation="average" />
+          <field field_ref="utau_ai_cmip"     name="sistrxdtop"       default_value="1.0e20" detect_missing_value="true" operation="average" />
+          <field field_ref="vtau_ai_cmip"     name="sistrydtop"       default_value="1.0e20" detect_missing_value="true" operation="average" />
           <field field_ref="utau_oi"          name="sistrxubot"       default_value="1.0e20" detect_missing_value="true" operation="average" />
           <field field_ref="vtau_oi"          name="sistryubot"       default_value="1.0e20" detect_missing_value="true" operation="average" />
-
           <field field_ref="icestr"           name="sicompstren"      default_value="1.0e20" detect_missing_value="true" operation="average" />
-
           <field field_ref="dssh_dx"          name="siforcetiltx"     default_value="1.0e20" detect_missing_value="true" operation="average" />
           <field field_ref="dssh_dy"          name="siforcetilty"     default_value="1.0e20" detect_missing_value="true" operation="average" />
-
           <field field_ref="corstrx"          name="siforcecoriolx"   default_value="1.0e20" detect_missing_value="true" operation="average" />
           <field field_ref="corstry"          name="siforcecorioly"   default_value="1.0e20" detect_missing_value="true" operation="average" />
-
           <field field_ref="intstrx"          name="siforceintstrx"   default_value="1.0e20" detect_missing_value="true" operation="average" />
           <field field_ref="intstry"          name="siforceintstry"   default_value="1.0e20" detect_missing_value="true" operation="average" />
-
           <field field_ref="xmtrptot"         name="sidmasstranx"     />
           <field field_ref="ymtrptot"         name="sidmasstrany"     />
-
           <field field_ref="normstr"          name="sistresave"       default_value="1.0e20" detect_missing_value="true" operation="instant" />
           <field field_ref="sheastr"          name="sistremax"        default_value="1.0e20" detect_missing_value="true" operation="instant" />
-
-          <field field_ref="idive"            name="sidivvel"         default_value="1.0e20" detect_missing_value="true" operation="instant" />
-          <field field_ref="ishear"           name="sishevel"         default_value="1.0e20" detect_missing_value="true" operation="instant" />
+          <field field_ref="icediv"           name="sidivvel"         default_value="1.0e20" detect_missing_value="true" operation="instant" />
+          <field field_ref="iceshe"           name="sishevel"         default_value="1.0e20" detect_missing_value="true" operation="instant" />
 
           <!-- sea ice fluxes across straits: 2D arrays to be post-processed  -->
Index: /branches/2017/dev_CNRS_2017/NEMOGCM/CONFIG/SHARED/field_def_nemo-opa.xml
===================================================================
--- /branches/2017/dev_CNRS_2017/NEMOGCM/CONFIG/SHARED/field_def_nemo-opa.xml	(revision 8883)
+++ /branches/2017/dev_CNRS_2017/NEMOGCM/CONFIG/SHARED/field_def_nemo-opa.xml	(revision 8884)
@@ -226,9 +226,12 @@
 
          <!-- *_oce variables available with ln_blk_clio or ln_blk_core -->
-         <field id="qlw_oce"      long_name="Longwave Downward Heat Flux over open ocean"  standard_name="surface_net_downward_longwave_flux"   unit="W/m2"  />
-         <field id="qsb_oce"      long_name="Sensible Downward Heat Flux over open ocean"  standard_name="surface_downward_sensible_heat_flux"  unit="W/m2"  />
-         <field id="qla_oce"      long_name="Latent Downward Heat Flux over open ocean"    standard_name="surface_downward_latent_heat_flux"    unit="W/m2"  />
-         <field id="qemp_oce"     long_name="Downward Heat Flux from E-P over open ocean"                                                       unit="W/m2"  />
-         <field id="taum_oce"     long_name="wind stress module over open ocean"           standard_name="magnitude_of_surface_downward_stress" unit="N/m2"  />
+         <field id="qlw_oce"      long_name="Longwave Downward Heat Flux over open ocean"  standard_name="surface_net_downward_longwave_flux"                 unit="W/m2"  />
+         <field id="qsb_oce"      long_name="Sensible Downward Heat Flux over open ocean"  standard_name="surface_downward_sensible_heat_flux"                unit="W/m2"  />
+         <field id="qla_oce"      long_name="Latent Downward Heat Flux over open ocean"    standard_name="surface_downward_latent_heat_flux"                  unit="W/m2"  />
+         <field id="qt_oce"       long_name="total flux at ocean surface"                  standard_name="surface_downward_heat_flux_in_sea_water"            unit="W/m2"  />
+         <field id="qsr_oce"      long_name="solar heat flux at ocean surface"             standard_name="net_downward_shortwave_flux_at_sea_water_surface"   unit="W/m2"  />
+         <field id="qns_oce"      long_name="non-solar heat flux at ocean surface (including E-P)"                                                            unit="W/m2"  />
+         <field id="qemp_oce"     long_name="Downward Heat Flux from E-P over open ocean"                                                                     unit="W/m2"  />
+         <field id="taum_oce"     long_name="wind stress module over open ocean"           standard_name="magnitude_of_surface_downward_stress"               unit="N/m2"  />
 
          <!-- available key_oasis3 -->
Index: /branches/2017/dev_CNRS_2017/NEMOGCM/CONFIG/TEST_CASES/SAS_BIPER/EXP00/file_def_nemo-lim.xml
===================================================================
--- /branches/2017/dev_CNRS_2017/NEMOGCM/CONFIG/TEST_CASES/SAS_BIPER/EXP00/file_def_nemo-lim.xml	(revision 8883)
+++ /branches/2017/dev_CNRS_2017/NEMOGCM/CONFIG/TEST_CASES/SAS_BIPER/EXP00/file_def_nemo-lim.xml	(revision 8884)
@@ -17,19 +17,19 @@
 	<file id="file1" name_suffix="_icemod" description="ice variables" enabled=".true." >
 
-        <field field_ref="snowvol"          name="snvolu" />
+        <field field_ref="snwvolu"          name="snvolu" />
         <field field_ref="icethic"          name="sithic" />
         <field field_ref="icevolu"          name="sivolu" />
         <field field_ref="iceconc"          name="siconc" />
-        <field field_ref="micesalt"         name="sisali" />
-        <field field_ref="micet"            name="sitemp" />
-        <field field_ref="icest"            name="sistem" />
+        <field field_ref="icesalt"          name="sisali" />
+        <field field_ref="icetemp"          name="sitemp" />
+        <field field_ref="icettop"          name="sittop" />
         <field field_ref="uice"             name="sivelu" />
         <field field_ref="vice"             name="sivelv" />
         <field field_ref="icevel"           name="sivelo" />
-        <field field_ref="idive"            name="sidive" />
-        <field field_ref="ishear"           name="sishea" />
+        <field field_ref="icediv"           name="sidive" />
+        <field field_ref="iceshe"           name="sishea" />
         <field field_ref="icestr"           name="sistre" />
         <!-- categories -->
-        <field field_ref="snowthic_cat"     name="snthicat"/>
+        <field field_ref="snwthic_cat"      name="snthicat"/>
         <field field_ref="iceconc_cat"      name="siconcat"/>
         <field field_ref="icethic_cat"      name="sithicat"/>
Index: /branches/2017/dev_CNRS_2017/NEMOGCM/NEMO/LIM_SRC_3/icectl.F90
===================================================================
--- /branches/2017/dev_CNRS_2017/NEMOGCM/NEMO/LIM_SRC_3/icectl.F90	(revision 8883)
+++ /branches/2017/dev_CNRS_2017/NEMOGCM/NEMO/LIM_SRC_3/icectl.F90	(revision 8884)
@@ -126,5 +126,5 @@
 
          zt = ( glob_sum( (  SUM( SUM( e_i(:,:,1:nlay_i,:), dim=4 ), dim=3 )   &
-            &                + SUM( SUM( e_s(:,:,1:nlay_s,:), dim=4 ), dim=3 ) ) * e1e2t ) * zconv   &
+            &              + SUM( SUM( e_s(:,:,1:nlay_s,:), dim=4 ), dim=3 ) ) * e1e2t ) * zconv   &
             &   - pdiag_t ) * r1_rdtice + zft
 
Index: /branches/2017/dev_CNRS_2017/NEMOGCM/NEMO/LIM_SRC_3/icedyn_adv.F90
===================================================================
--- /branches/2017/dev_CNRS_2017/NEMOGCM/NEMO/LIM_SRC_3/icedyn_adv.F90	(revision 8883)
+++ /branches/2017/dev_CNRS_2017/NEMOGCM/NEMO/LIM_SRC_3/icedyn_adv.F90	(revision 8884)
@@ -105,9 +105,9 @@
       diag_trp_vi(:,:) = SUM(     v_i (:,:,:)          - v_i_b (:,:,:)                  , dim=3 ) * r1_rdtice
       diag_trp_vs(:,:) = SUM(     v_s (:,:,:)          - v_s_b (:,:,:)                  , dim=3 ) * r1_rdtice
-      IF( iom_use('icetrp') )   CALL iom_put( "icetrp" , diag_trp_vi )          ! ice volume transport
-      IF( iom_use('snwtrp') )   CALL iom_put( "snwtrp" , diag_trp_vs )          ! snw volume transport
-      IF( iom_use('saltrp') )   CALL iom_put( "saltrp" , diag_trp_sv * rhoic )  ! salt content transport
-      IF( iom_use('deitrp') )   CALL iom_put( "deitrp" , diag_trp_ei )          ! advected ice enthalpy (W/m2)
-      IF( iom_use('destrp') )   CALL iom_put( "destrp" , diag_trp_es )          ! advected snw enthalpy (W/m2)
+      IF( iom_use('icemtrp') )   CALL iom_put( "icemtrp" , diag_trp_vi * rhoic          )   ! ice mass transport
+      IF( iom_use('snwmtrp') )   CALL iom_put( "snwmtrp" , diag_trp_vs * rhosn          )   ! snw mass transport
+      IF( iom_use('salmtrp') )   CALL iom_put( "salmtrp" , diag_trp_sv * rhoic * 1.e-03 )   ! salt mass transport (kg/m2/s)
+      IF( iom_use('dihctrp') )   CALL iom_put( "dihctrp" , -diag_trp_ei                 )   ! advected ice heat content (W/m2)
+      IF( iom_use('dshctrp') )   CALL iom_put( "dshctrp" , -diag_trp_es                 )   ! advected snw heat content (W/m2)
 
       ! controls
Index: /branches/2017/dev_CNRS_2017/NEMOGCM/NEMO/LIM_SRC_3/icedyn_rhg_evp.F90
===================================================================
--- /branches/2017/dev_CNRS_2017/NEMOGCM/NEMO/LIM_SRC_3/icedyn_rhg_evp.F90	(revision 8883)
+++ /branches/2017/dev_CNRS_2017/NEMOGCM/NEMO/LIM_SRC_3/icedyn_rhg_evp.F90	(revision 8884)
@@ -725,6 +725,6 @@
 
       ! --- divergence, shear and strength --- !
-      IF( iom_use('idive')  )   CALL iom_put( "idive"  , pdivu_i(:,:)  * zswi(:,:) )   ! divergence
-      IF( iom_use('ishear') )   CALL iom_put( "ishear" , pshear_i(:,:) * zswi(:,:) )   ! shear
+      IF( iom_use('icediv') )   CALL iom_put( "icediv" , pdivu_i (:,:) * zswi(:,:) )   ! divergence
+      IF( iom_use('iceshe') )   CALL iom_put( "iceshe" , pshear_i(:,:) * zswi(:,:) )   ! shear
       IF( iom_use('icestr') )   CALL iom_put( "icestr" , strength(:,:) * zswi(:,:) )   ! Ice strength
 
@@ -821,20 +821,20 @@
             &                  zdiag_ymtrp_snw, 'V', -1., zdiag_yatrp    , 'V', -1.    )
          
-         IF ( iom_use( 'normstr'  ) )   CALL iom_put( 'normstr'  ,  zdiag_sig1(:,:)      )   ! Normal stress
-         IF ( iom_use( 'sheastr'  ) )   CALL iom_put( 'sheastr'  ,  zdiag_sig2(:,:)      )   ! Shear stress
-         IF ( iom_use( 'dssh_dx'  ) )   CALL iom_put( 'dssh_dx'  ,  zdiag_dssh_dx(:,:)   )   ! Sea-surface tilt term in force balance (x)
-         IF ( iom_use( 'dssh_dy'  ) )   CALL iom_put( 'dssh_dy'  ,  zdiag_dssh_dy(:,:)   )   ! Sea-surface tilt term in force balance (y)
-         IF ( iom_use( 'corstrx'  ) )   CALL iom_put( 'corstrx'  ,  zdiag_corstrx(:,:)   )   ! Coriolis force term in force balance (x)
-         IF ( iom_use( 'corstry'  ) )   CALL iom_put( 'corstry'  ,  zdiag_corstry(:,:)   )   ! Coriolis force term in force balance (y)
-         IF ( iom_use( 'intstrx'  ) )   CALL iom_put( 'intstrx'  ,  zdiag_intstrx(:,:)   )   ! Internal force term in force balance (x)
-         IF ( iom_use( 'intstry'  ) )   CALL iom_put( 'intstry'  ,  zdiag_intstry(:,:)   )   ! Internal force term in force balance (y)
-         IF ( iom_use( 'utau_oi'  ) )   CALL iom_put( 'utau_oi'  ,  zdiag_utau_oi(:,:)   )   ! Ocean stress term in force balance (x)
-         IF ( iom_use( 'vtau_oi'  ) )   CALL iom_put( 'vtau_oi'  ,  zdiag_vtau_oi(:,:)   )   ! Ocean stress term in force balance (y)
-         IF ( iom_use( 'xmtrpice' ) )   CALL iom_put( 'xmtrpice' ,  zdiag_xmtrp_ice(:,:) )   ! X-component of sea-ice mass transport (kg/s)
-         IF ( iom_use( 'ymtrpice' ) )   CALL iom_put( 'ymtrpice' ,  zdiag_ymtrp_ice(:,:) )   ! Y-component of sea-ice mass transport 
-         IF ( iom_use( 'xmtrpsnw' ) )   CALL iom_put( 'xmtrpsnw' ,  zdiag_xmtrp_snw(:,:) )   ! X-component of snow mass transport (kg/s)
-         IF ( iom_use( 'ymtrpsnw' ) )   CALL iom_put( 'ymtrpsnw' ,  zdiag_ymtrp_snw(:,:) )   ! Y-component of snow mass transport
-         IF ( iom_use( 'xatrp'    ) )   CALL iom_put( 'xatrp'    ,  zdiag_xatrp(:,:)     )   ! X-component of ice area transport
-         IF ( iom_use( 'yatrp'    ) )   CALL iom_put( 'yatrp'    ,  zdiag_yatrp(:,:)     )   ! Y-component of ice area transport
+         IF( iom_use('normstr' ) )   CALL iom_put( 'normstr'  ,  zdiag_sig1(:,:)      )   ! Normal stress
+         IF( iom_use('sheastr' ) )   CALL iom_put( 'sheastr'  ,  zdiag_sig2(:,:)      )   ! Shear stress
+         IF( iom_use('dssh_dx' ) )   CALL iom_put( 'dssh_dx'  ,  zdiag_dssh_dx(:,:)   )   ! Sea-surface tilt term in force balance (x)
+         IF( iom_use('dssh_dy' ) )   CALL iom_put( 'dssh_dy'  ,  zdiag_dssh_dy(:,:)   )   ! Sea-surface tilt term in force balance (y)
+         IF( iom_use('corstrx' ) )   CALL iom_put( 'corstrx'  ,  zdiag_corstrx(:,:)   )   ! Coriolis force term in force balance (x)
+         IF( iom_use('corstry' ) )   CALL iom_put( 'corstry'  ,  zdiag_corstry(:,:)   )   ! Coriolis force term in force balance (y)
+         IF( iom_use('intstrx' ) )   CALL iom_put( 'intstrx'  ,  zdiag_intstrx(:,:)   )   ! Internal force term in force balance (x)
+         IF( iom_use('intstry' ) )   CALL iom_put( 'intstry'  ,  zdiag_intstry(:,:)   )   ! Internal force term in force balance (y)
+         IF( iom_use('utau_oi' ) )   CALL iom_put( 'utau_oi'  ,  zdiag_utau_oi(:,:)   )   ! Ocean stress term in force balance (x)
+         IF( iom_use('vtau_oi' ) )   CALL iom_put( 'vtau_oi'  ,  zdiag_vtau_oi(:,:)   )   ! Ocean stress term in force balance (y)
+         IF( iom_use('xmtrpice') )   CALL iom_put( 'xmtrpice' ,  zdiag_xmtrp_ice(:,:) )   ! X-component of sea-ice mass transport (kg/s)
+         IF( iom_use('ymtrpice') )   CALL iom_put( 'ymtrpice' ,  zdiag_ymtrp_ice(:,:) )   ! Y-component of sea-ice mass transport 
+         IF( iom_use('xmtrpsnw') )   CALL iom_put( 'xmtrpsnw' ,  zdiag_xmtrp_snw(:,:) )   ! X-component of snow mass transport (kg/s)
+         IF( iom_use('ymtrpsnw') )   CALL iom_put( 'ymtrpsnw' ,  zdiag_ymtrp_snw(:,:) )   ! Y-component of snow mass transport
+         IF( iom_use('xatrp'   ) )   CALL iom_put( 'xatrp'    ,  zdiag_xatrp(:,:)     )   ! X-component of ice area transport
+         IF( iom_use('yatrp'   ) )   CALL iom_put( 'yatrp'    ,  zdiag_yatrp(:,:)     )   ! Y-component of ice area transport
 
          DEALLOCATE( zdiag_sig1      , zdiag_sig2      , zdiag_dssh_dx   , zdiag_dssh_dy   ,  &
Index: /branches/2017/dev_CNRS_2017/NEMOGCM/NEMO/LIM_SRC_3/iceforcing.F90
===================================================================
--- /branches/2017/dev_CNRS_2017/NEMOGCM/NEMO/LIM_SRC_3/iceforcing.F90	(revision 8883)
+++ /branches/2017/dev_CNRS_2017/NEMOGCM/NEMO/LIM_SRC_3/iceforcing.F90	(revision 8884)
@@ -18,5 +18,5 @@
    USE sbcblk         ! Surface boundary condition: bulk
    USE sbccpl         ! Surface boundary condition: coupled interface
-   USE icealb         ! sae-ice: albedo
+   USE icealb         ! sea-ice: albedo
    !
    USE in_out_manager ! I/O manager
Index: /branches/2017/dev_CNRS_2017/NEMOGCM/NEMO/LIM_SRC_3/iceupdate.F90
===================================================================
--- /branches/2017/dev_CNRS_2017/NEMOGCM/NEMO/LIM_SRC_3/iceupdate.F90	(revision 8883)
+++ /branches/2017/dev_CNRS_2017/NEMOGCM/NEMO/LIM_SRC_3/iceupdate.F90	(revision 8884)
@@ -207,73 +207,91 @@
       ! output all fluxes
       !------------------
-      IF( iom_use('qsr_oce') )   CALL iom_put( "qsr_oce" , qsr_oce(:,:) * ( 1._wp - at_i_b(:,:) ) )                      !     solar flux at ocean surface
-      IF( iom_use('qns_oce') )   CALL iom_put( "qns_oce" , qns_oce(:,:) * ( 1._wp - at_i_b(:,:) ) + qemp_oce(:,:) )      ! non-solar flux at ocean surface
-      IF( iom_use('qsr_ice') )   CALL iom_put( "qsr_ice" , SUM( qsr_ice(:,:,:) * a_i_b(:,:,:), dim=3 ) )                 !     solar flux at ice surface
-      IF( iom_use('qns_ice') )   CALL iom_put( "qns_ice" , SUM( qns_ice(:,:,:) * a_i_b(:,:,:), dim=3 ) + qemp_ice(:,:) ) ! non-solar flux at ice surface
-      IF( iom_use('qtr_ice') )   CALL iom_put( "qtr_ice" , SUM( ftr_ice(:,:,:) * a_i_b(:,:,:), dim=3 ) )                 !     solar flux transmitted thru ice
-      IF( iom_use('qt_oce' ) )   CALL iom_put( "qt_oce"  , ( qsr_oce(:,:) + qns_oce(:,:) ) * ( 1._wp - at_i_b(:,:) ) + qemp_oce(:,:) )
-      IF( iom_use('qt_ice' ) )   CALL iom_put( "qt_ice"  , SUM( ( qns_ice(:,:,:) + qsr_ice(:,:,:) )   &
-         &                                                      * a_i_b(:,:,:), dim=3 ) + qemp_ice(:,:) )
-!!gm I don't understand the variable below.... why not multiplied by a_i_b or (1-a_i_b) ??? 
-      IF( iom_use('qemp_oce') )  CALL iom_put( "qemp_oce" , qemp_oce(:,:) )  
-      IF( iom_use('qemp_ice') )  CALL iom_put( "qemp_ice" , qemp_ice(:,:) )  
-      IF( iom_use('emp_oce' ) )  CALL iom_put( "emp_oce"  , emp_oce (:,:) )   ! emp over ocean (taking into account the snow blown away from the ice)
-      IF( iom_use('emp_ice' ) )  CALL iom_put( "emp_ice"  , emp_ice (:,:) )   ! emp over ice   (taking into account the snow blown away from the ice)
-
-      CALL iom_put( "snowpre"     , sprecip * 86400.    )        ! snow precipitation [m/day]
-
-      CALL iom_put( "sfxbog"      , sfx_bog             )        ! salt flux from bottom growth
-      CALL iom_put( "sfxbom"      , sfx_bom             )        ! salt flux from bottom melting
-      CALL iom_put( "sfxsum"      , sfx_sum             )        ! salt flux from surface melting
-      CALL iom_put( "sfxlam"      , sfx_lam             )        ! salt flux from lateral melting
-      CALL iom_put( "sfxsni"      , sfx_sni             )        ! salt flux from snow ice formation
-      CALL iom_put( "sfxopw"      , sfx_opw             )        ! salt flux from open water formation
-      CALL iom_put( "sfxdyn"      , sfx_dyn             )        ! salt flux from ridging rafting
-      CALL iom_put( "sfxres"      , sfx_res             )        ! salt flux from corrections (resultant)
-      CALL iom_put( "sfxbri"      , sfx_bri             )        ! salt flux from brines
-      CALL iom_put( "sfxsub"      , sfx_sub             )        ! salt flux from sublimation
-      CALL iom_put( "sfx"         , sfx                 )        ! total salt flux
-
-      CALL iom_put( "vfxres"     , wfx_res              )        ! prod./melting due to corrections 
-      CALL iom_put( "vfxopw"     , wfx_opw              )        ! lateral thermodynamic ice production
-      CALL iom_put( "vfxsni"     , wfx_sni              )        ! snowice ice production
-      CALL iom_put( "vfxbog"     , wfx_bog              )        ! bottom thermodynamic ice production
-      CALL iom_put( "vfxdyn"     , wfx_dyn              )        ! dynamic ice production (rid/raft)
-      CALL iom_put( "vfxsum"     , wfx_sum              )        ! surface melt 
-      CALL iom_put( "vfxbom"     , wfx_bom              )        ! bottom melt 
-      CALL iom_put( "vfxlam"     , wfx_lam              )        ! lateral melt 
-      CALL iom_put( "vfxice"     , wfx_ice              )        ! total ice growth/melt 
-      IF ( ln_pnd_fwb )   CALL iom_put( "vfxpnd", wfx_pnd   )        ! melt pond water flux
-
-      IF ( iom_use( "vfxthin" ) ) THEN   ! ice production for open water + thin ice (<20cm) => comparable to observations  
+      !
+      ! --- salt fluxes [kg/m2/s] --- !
+      !                           ! sfxice =  sfxbog + sfxbom + sfxsum + sfxsni + sfxopw + sfxres + sfxdyn + sfxbri + sfxsub + sfxlam
+      IF( iom_use('sfxice'  ) )   CALL iom_put( "sfxice", sfx     * 1.e-03 )   ! salt flux from total ice growth/melt
+      IF( iom_use('sfxbog'  ) )   CALL iom_put( "sfxbog", sfx_bog * 1.e-03 )   ! salt flux from bottom growth
+      IF( iom_use('sfxbom'  ) )   CALL iom_put( "sfxbom", sfx_bom * 1.e-03 )   ! salt flux from bottom melting
+      IF( iom_use('sfxsum'  ) )   CALL iom_put( "sfxsum", sfx_sum * 1.e-03 )   ! salt flux from surface melting
+      IF( iom_use('sfxlam'  ) )   CALL iom_put( "sfxlam", sfx_lam * 1.e-03 )   ! salt flux from lateral melting
+      IF( iom_use('sfxsni'  ) )   CALL iom_put( "sfxsni", sfx_sni * 1.e-03 )   ! salt flux from snow ice formation
+      IF( iom_use('sfxopw'  ) )   CALL iom_put( "sfxopw", sfx_opw * 1.e-03 )   ! salt flux from open water formation
+      IF( iom_use('sfxdyn'  ) )   CALL iom_put( "sfxdyn", sfx_dyn * 1.e-03 )   ! salt flux from ridging rafting
+      IF( iom_use('sfxbri'  ) )   CALL iom_put( "sfxbri", sfx_bri * 1.e-03 )   ! salt flux from brines
+      IF( iom_use('sfxres'  ) )   CALL iom_put( "sfxres", sfx_res * 1.e-03 )   ! salt flux from undiagnosed processes
+      IF( iom_use('sfxsub'  ) )   CALL iom_put( "sfxsub", sfx_sub * 1.e-03 )   ! salt flux from sublimation
+
+      ! --- mass fluxes [kg/m2/s] --- !
+      IF( iom_use('emp_oce' ) )   CALL iom_put( "emp_oce", emp_oce )   ! emp over ocean (taking into account the snow blown away from the ice)
+      IF( iom_use('emp_ice' ) )   CALL iom_put( "emp_ice", emp_ice )   ! emp over ice   (taking into account the snow blown away from the ice)
+
+      !                           ! vfxice = vfxbog + vfxbom + vfxsum + vfxsni + vfxopw + vfxdyn + vfxres + vfxlam + vfxpnd
+      IF( iom_use('vfxice'  ) )   CALL iom_put( "vfxice" , wfx_ice )   ! mass flux from total ice growth/melt
+      IF( iom_use('vfxbog'  ) )   CALL iom_put( "vfxbog" , wfx_bog )   ! mass flux from bottom growth
+      IF( iom_use('vfxbom'  ) )   CALL iom_put( "vfxbom" , wfx_bom )   ! mass flux from bottom melt 
+      IF( iom_use('vfxsum'  ) )   CALL iom_put( "vfxsum" , wfx_sum )   ! mass flux from surface melt 
+      IF( iom_use('vfxlam'  ) )   CALL iom_put( "vfxlam" , wfx_lam )   ! mass flux from lateral melt 
+      IF( iom_use('vfxsni'  ) )   CALL iom_put( "vfxsni" , wfx_sni )   ! mass flux from snow-ice formation
+      IF( iom_use('vfxopw'  ) )   CALL iom_put( "vfxopw" , wfx_opw )   ! mass flux from growth in open water
+      IF( iom_use('vfxdyn'  ) )   CALL iom_put( "vfxdyn" , wfx_dyn )   ! mass flux from dynamics (ridging)
+      IF( iom_use('vfxres'  ) )   CALL iom_put( "vfxres" , wfx_res )   ! mass flux from undiagnosed processes 
+      IF( iom_use('vfxpnd'  ) )   CALL iom_put( "vfxpnd" , wfx_pnd )   ! mass flux from melt ponds
+      IF( iom_use('vfxsub'  ) )   CALL iom_put( "vfxsub" , wfx_ice_sub )   ! mass flux from ice sublimation (ice-atm.)
+      IF( iom_use('vfxsub_err') ) CALL iom_put( "vfxsub_err", wfx_err_sub )   ! "excess" of sublimation sent to ocean      
+
+      IF ( iom_use( "vfxthin" ) ) THEN   ! mass flux from ice growth in open water + thin ice (<20cm) => comparable to observations  
          WHERE( hm_i(:,:) < 0.2 .AND. hm_i(:,:) > 0. ) ; z2d = wfx_bog
          ELSEWHERE                                     ; z2d = 0._wp
          END WHERE
-         CALL iom_put( "vfxthin", ( wfx_opw + z2d )     )
-      ENDIF
-
-      CALL iom_put( "vfxspr"     , wfx_spr              )        ! precip (snow)
-      CALL iom_put( "vfxsnw"     , wfx_snw              )        ! total snw growth/melt 
-      CALL iom_put( "vfxsub"     , wfx_sub              )        ! sublimation (snow/ice) 
-      CALL iom_put( "vfxsub_err" , wfx_err_sub          )        ! "excess" of sublimation sent to ocean      
- 
-      CALL iom_put ('hfxthd'     , hfx_thd(:,:)         )   !  
-      CALL iom_put ('hfxdyn'     , hfx_dyn(:,:)         )   !  
-      CALL iom_put ('hfxres'     , hfx_res(:,:)         )   !  
-      CALL iom_put ('hfxout'     , hfx_out(:,:)         )   !  
-      CALL iom_put ('hfxin'      , hfx_in(:,:)          )   !  
-      CALL iom_put ('hfxsnw'     , hfx_snw(:,:)         )   !  
-      CALL iom_put ('hfxsub'     , hfx_sub(:,:)         )   !  
-      CALL iom_put ('hfxerr'     , hfx_err_dif(:,:)     )   !  
-      CALL iom_put ('hfxerr_rem' , hfx_err_rem(:,:)     )   !  
-      
-      CALL iom_put ('hfxsum'     , hfx_sum(:,:)         )   !  
-      CALL iom_put ('hfxbom'     , hfx_bom(:,:)         )   !  
-      CALL iom_put ('hfxbog'     , hfx_bog(:,:)         )   !  
-      CALL iom_put ('hfxdif'     , hfx_dif(:,:)         )   !  
-      CALL iom_put ('hfxopw'     , hfx_opw(:,:)         )   !  
-      CALL iom_put ('hfxtur'     , fhtur(:,:) * at_i_b(:,:) ) ! turbulent heat flux at ice base 
-      CALL iom_put ('hfxdhc'     , diag_heat(:,:)       )   ! Heat content variation in snow and ice 
-      CALL iom_put ('hfxspr'     , hfx_spr(:,:)         )   ! Heat content of snow precip 
+         CALL iom_put( "vfxthin", wfx_opw + z2d )
+      ENDIF
+
+      !                              ! vfxsnw = vfxsnw_sni + vfxsnw_dyn + vfxsnw_sum
+      IF( iom_use('vfxsnw'     ) )   CALL iom_put( "vfxsnw"     , wfx_snw     )   ! mass flux from total snow growth/melt
+      IF( iom_use('vfxsnw_sum' ) )   CALL iom_put( "vfxsnw_sum" , wfx_snw_sum )   ! mass flux from snow melt at the surface
+      IF( iom_use('vfxsnw_sni' ) )   CALL iom_put( "vfxsnw_sni" , wfx_snw_sni )   ! mass flux from snow melt during snow-ice formation 
+      IF( iom_use('vfxsnw_dyn' ) )   CALL iom_put( "vfxsnw_dyn" , wfx_snw_dyn )   ! mass flux from dynamics (ridging) 
+      IF( iom_use('vfxsnw_sub' ) )   CALL iom_put( "vfxsnw_sub" , wfx_snw_sub )   ! mass flux from snow sublimation (ice-atm.) 
+      IF( iom_use('vfxsnw_pre' ) )   CALL iom_put( "vfxsnw_pre" , wfx_spr     )   ! snow precip
+
+      ! --- heat fluxes [W/m2] --- !
+      !                              ! qt_atm_oi - qt_oce_ai = hfxdhc - ( dihctrp + dshctrp )
+      IF( iom_use('qsr_oce'    ) )   CALL iom_put( "qsr_oce"    , qsr_oce * ( 1._wp - at_i_b )                               )   !     solar flux at ocean surface
+      IF( iom_use('qns_oce'    ) )   CALL iom_put( "qns_oce"    , qns_oce * ( 1._wp - at_i_b ) + qemp_oce                    )   ! non-solar flux at ocean surface
+      IF( iom_use('qsr_ice'    ) )   CALL iom_put( "qsr_ice"    , SUM( qsr_ice * a_i_b, dim=3 )                              )   !     solar flux at ice surface
+      IF( iom_use('qns_ice'    ) )   CALL iom_put( "qns_ice"    , SUM( qns_ice * a_i_b, dim=3 ) + qemp_ice                   )   ! non-solar flux at ice surface
+      IF( iom_use('qtr_ice_bot') )   CALL iom_put( "qtr_ice_bot", SUM( ftr_ice * a_i_b, dim=3 )                              )   !     solar flux transmitted thru ice
+      IF( iom_use('qtr_ice_top') )   CALL iom_put( "qtr_ice_top", SUM( qsr_ice_tr * a_i_b, dim=3 )                           )   !     solar flux transmitted thru ice surface
+      IF( iom_use('qt_oce'     ) )   CALL iom_put( "qt_oce"     ,      ( qsr_oce + qns_oce ) * ( 1._wp - at_i_b ) + qemp_oce )
+      IF( iom_use('qt_ice'     ) )   CALL iom_put( "qt_ice"     , SUM( ( qns_ice + qsr_ice ) * a_i_b, dim=3 )     + qemp_ice )
+      IF( iom_use('qt_oce_ai'  ) )   CALL iom_put( "qt_oce_ai"  , hfx_out                                                    )   ! total heat flux at the ocean   surface: interface oce-(ice+atm) 
+      IF( iom_use('qt_atm_oi'  ) )   CALL iom_put( "qt_atm_oi"  , hfx_in                                                     )   ! total heat flux at the oce-ice surface: interface atm-(ice+oce) 
+      IF( iom_use('qemp_oce'   ) )   CALL iom_put( "qemp_oce"   , qemp_oce                                                   )   ! Downward Heat Flux from E-P over ocean
+      IF( iom_use('qemp_ice'   ) )   CALL iom_put( "qemp_ice"   , qemp_ice                                                   )   ! Downward Heat Flux from E-P over ice
+
+      ! heat fluxes from ice transformations
+      !                              ! hfxdhc = hfxbog + hfxbom + hfxsum + hfxopw + hfxdif + hfxsnw - ( hfxthd + hfxdyn + hfxres + hfxsub + hfxspr )
+      IF( iom_use('hfxbog'     ) )   CALL iom_put ("hfxbog"     , hfx_bog             )   ! heat flux used for ice bottom growth 
+      IF( iom_use('hfxbom'     ) )   CALL iom_put ("hfxbom"     , hfx_bom             )   ! heat flux used for ice bottom melt
+      IF( iom_use('hfxsum'     ) )   CALL iom_put ("hfxsum"     , hfx_sum             )   ! heat flux used for ice surface growth
+      IF( iom_use('hfxopw'     ) )   CALL iom_put ("hfxopw"     , hfx_opw             )   ! heat flux used for ice formation in open water
+      IF( iom_use('hfxdif'     ) )   CALL iom_put ("hfxdif"     , hfx_dif             )   ! heat flux used for ice temperature change
+      IF( iom_use('hfxsnw'     ) )   CALL iom_put ("hfxsnw"     , hfx_snw             )   ! heat flux used for snow melt 
+      IF( iom_use('hfxerr'     ) )   CALL iom_put ("hfxerr"     , hfx_err_dif         )   ! heat flux error after heat diffusion (included in hfx_out)
+
+      ! heat fluxes associated with mass exchange (freeze/melt/precip...)
+      IF( iom_use('hfxthd'     ) )   CALL iom_put ("hfxthd"     , hfx_thd             )   !  
+      IF( iom_use('hfxdyn'     ) )   CALL iom_put ("hfxdyn"     , hfx_dyn             )   !  
+      IF( iom_use('hfxres'     ) )   CALL iom_put ("hfxres"     , hfx_res             )   !  
+      IF( iom_use('hfxsub'     ) )   CALL iom_put ("hfxsub"     , hfx_sub             )   !  
+      IF( iom_use('hfxspr'     ) )   CALL iom_put ("hfxspr"     , hfx_spr             )   ! Heat flux from snow precip heat content 
+
+      ! other heat fluxes
+      IF( iom_use('hfxsensib'  ) )   CALL iom_put( "hfxsensib"  , -fhtur     * at_i_b )   ! Sensible oceanic heat flux
+      IF( iom_use('hfxcndbot'  ) )   CALL iom_put( "hfxcndbot"  , diag_fc_bo * at_i_b )   ! Bottom conduction flux
+      IF( iom_use('hfxcndtop'  ) )   CALL iom_put( "hfxcndtop"  , diag_fc_su * at_i_b )   ! Surface conduction flux
+
+      ! diags
+      IF( iom_use('hfxdhc'     ) )   CALL iom_put ("hfxdhc"     , diag_heat           )   ! Heat content variation in snow and ice 
       !
       ! controls
Index: /branches/2017/dev_CNRS_2017/NEMOGCM/NEMO/LIM_SRC_3/icewri.F90
===================================================================
--- /branches/2017/dev_CNRS_2017/NEMOGCM/NEMO/LIM_SRC_3/icewri.F90	(revision 8883)
+++ /branches/2017/dev_CNRS_2017/NEMOGCM/NEMO/LIM_SRC_3/icewri.F90	(revision 8884)
@@ -47,14 +47,13 @@
       INTEGER, INTENT(in) ::   kt   ! time-step
       !
-      INTEGER  ::  ji, jj, jk, jl  ! dummy loop indices
-      REAL(wp) ::  z2da, z2db, zrho1, zrho2, zmiss_val
-      REAL(wp), DIMENSION(jpi,jpj)     ::  z2d, zswi, zmiss !  2D workspace
-      REAL(wp), DIMENSION(jpi,jpj)     ::  zfb              ! ice freeboard
-      REAL(wp), DIMENSION(jpi,jpj)     ::  zmsk05, zmsk15 ! 15% concentration mask
-      REAL(wp), DIMENSION(jpi,jpj,jpl) ::  zswi2, zmiss2
+      INTEGER  ::   ji, jj, jk, jl  ! dummy loop indices
+      REAL(wp) ::   z2da, z2db, zrho1, zrho2
+      REAL(wp), DIMENSION(jpi,jpj)     ::   z2d !  2D workspace
+      REAL(wp), DIMENSION(jpi,jpj)     ::   zmsk00, zmsk05, zmsk15 ! O%, 5% and 15% concentration mask
+      REAL(wp), DIMENSION(jpi,jpj,jpl) ::   zmsk00l        ! cat masks
       !
       ! Global ice diagnostics (SIMIP)
-      REAL(wp) ::  zdiag_area_nh, zdiag_extt_nh, zdiag_volu_nh   ! area, extent, volume
-      REAL(wp) ::  zdiag_area_sh, zdiag_extt_sh, zdiag_volu_sh 
+      REAL(wp) ::   zdiag_area_nh, zdiag_extt_nh, zdiag_volu_nh   ! area, extent, volume
+      REAL(wp) ::   zdiag_area_sh, zdiag_extt_sh, zdiag_volu_sh 
       !!-------------------------------------------------------------------
 
@@ -70,7 +69,7 @@
       DO jj = 1, jpj
          DO ji = 1, jpi
-            zswi(ji,jj)      = MAX( 0._wp , SIGN( 1._wp , at_i(ji,jj) - epsi06 ) ) ! 1 if ice, 0 if no ice
-            zmsk05(ji,jj)    = MAX( 0._wp , SIGN( 1._wp , at_i(ji,jj) - 0.05   ) ) ! 1 if 5% ice, 0 if less - required to mask thickness and snow depth
-            zmsk15(ji,jj)  = MAX( 0._wp , SIGN( 1._wp , at_i(ji,jj) - 0.15   ) ) ! 1 if 15% ice, 0 if less
+            zmsk00(ji,jj) = MAX( 0._wp , SIGN( 1._wp , at_i(ji,jj) - epsi06  ) ) ! 1 if ice    , 0 if no ice
+            zmsk05(ji,jj) = MAX( 0._wp , SIGN( 1._wp , at_i(ji,jj) - 0.05_wp ) ) ! 1 if 5% ice , 0 if less
+            zmsk15(ji,jj) = MAX( 0._wp , SIGN( 1._wp , at_i(ji,jj) - 0.15_wp ) ) ! 1 if 15% ice, 0 if less
          END DO
       END DO
@@ -78,21 +77,59 @@
          DO jj = 1, jpj
             DO ji = 1, jpi
-               zswi2(ji,jj,jl)  = MAX( 0._wp , SIGN( 1._wp , a_i(ji,jj,jl) - epsi06 ) )
+               zmsk00l(ji,jj,jl)  = MAX( 0._wp , SIGN( 1._wp , a_i(ji,jj,jl) - epsi06 ) )
             END DO
          END DO
       END DO
 
-      zmiss_val     = 1.e20_wp
-      zmiss (:,:)   = zmiss_val * ( 1._wp - zswi (:,:) )
-      zmiss2(:,:,:) = zmiss_val * ( 1._wp - zswi2(:,:,:) )
-
-      !----------------------------------------
+      !-----------------
       ! Standard outputs
-      !----------------------------------------
-      ! velocity
-      IF( iom_use('uice') )  CALL iom_put( "uice" , u_ice         )   ! ice velocity u component
-      IF( iom_use('vice') )  CALL iom_put( "vice" , v_ice         )   ! ice velocity v component
-
-      IF( iom_use('icevel') .OR. iom_use('icevel_mv') ) THEN 
+      !-----------------
+      zrho1 = ( rau0 - rhoic ) * r1_rau0; zrho2 = rhosn * r1_rau0
+      ! masks
+      IF( iom_use('icemask'  ) )   CALL iom_put( "icemask"  , zmsk00              )   ! ice mask 0%
+      IF( iom_use('icemask05') )   CALL iom_put( "icemask05", zmsk05              )   ! ice mask 5%
+      IF( iom_use('icemask15') )   CALL iom_put( "icemask15", zmsk15              )   ! ice mask 15%
+      !
+      ! general fields
+      IF( iom_use('icemass'  ) )   CALL iom_put( "icemass", rhoic * vt_i * zmsk00 )   ! Ice mass per cell area 
+      IF( iom_use('snwmass'  ) )   CALL iom_put( "snwmass", rhosn * vt_s * zmsk00 )   ! Snow mass per cell area
+      IF( iom_use('icepres'  ) )   CALL iom_put( "icepres", zmsk00                )   ! Ice presence (1 or 0) 
+      IF( iom_use('iceconc'  ) )   CALL iom_put( "iceconc", at_i  * zmsk00        )   ! ice concentration
+      IF( iom_use('icevolu'  ) )   CALL iom_put( "icevolu", vt_i  * zmsk00        )   ! ice volume = mean ice thickness over the cell
+      IF( iom_use('icethic'  ) )   CALL iom_put( "icethic", hm_i  * zmsk00        )   ! ice thickness
+      IF( iom_use('snwthic'  ) )   CALL iom_put( "snwthic", hm_s  * zmsk00        )   ! snw thickness
+      IF( iom_use('icebrv'   ) )   CALL iom_put( "icebrv" , bvm_i * zmsk00 * 100. )   ! brine volume
+      IF( iom_use('iceage'   ) )   CALL iom_put( "iceage" , om_i  * zmsk00 / rday )   ! ice age
+      IF( iom_use('icehnew'  ) )   CALL iom_put( "icehnew", ht_i_new              )   ! new ice thickness formed in the leads
+      IF( iom_use('snwvolu'  ) )   CALL iom_put( "snwvolu", vt_s  * zmsk00        )   ! snow volume
+      IF( iom_use('icefrb') ) THEN
+         z2d(:,:) = ( zrho1 * hm_i(:,:) - zrho2 * hm_s(:,:) )                                         
+         WHERE( z2d < 0._wp )   z2d = 0._wp
+                                   CALL iom_put( "icefrb" , z2d * zmsk00          )   ! Ice freeboard
+      ENDIF
+      !
+      ! melt ponds
+      IF( iom_use('iceapnd'  ) )   CALL iom_put( "iceapnd", at_ip  * zmsk00       )   ! melt pond total fraction
+      IF( iom_use('icevpnd'  ) )   CALL iom_put( "icevpnd", vt_ip  * zmsk00       )   ! melt pond total volume per unit area
+      !
+      ! salt
+      IF( iom_use('icesalt'  ) )   CALL iom_put( "icesalt", sm_i  * zmsk00        )   ! mean ice salinity
+      IF( iom_use('icesalm'  ) )   CALL iom_put( "icesalm", SUM( sv_i, DIM = 3 ) * rhoic * 1.0e-3 * zmsk00 )   ! Mass of salt in sea ice per cell area
+
+      ! heat
+      IF( iom_use('icetemp'  ) )   CALL iom_put( "icetemp", ( tm_i  - rt0 ) * zmsk00 )   ! ice mean temperature
+      IF( iom_use('icettop'  ) )   CALL iom_put( "icettop", ( tm_su - rt0 ) * zmsk00 )   ! temperature at the ice surface
+      IF( iom_use('icetbot'  ) )   CALL iom_put( "icetbot", ( t_bo  - rt0 ) * zmsk00 )   ! temperature at the ice bottom
+      IF( iom_use('icetsni'  ) )   CALL iom_put( "icetsni", ( tm_si - rt0 ) * zmsk00 )   ! temperature at the snow-ice interface
+      IF( iom_use('icehc'    ) )   CALL iom_put( "icehc"  ,  -et_i          * zmsk00 )   ! ice heat content
+      IF( iom_use('snwhc'    ) )   CALL iom_put( "snwhc"  ,  -et_s          * zmsk00 )   ! snow heat content
+
+      ! momentum
+      IF( iom_use('uice'     ) )   CALL iom_put( "uice"   , u_ice                 )   ! ice velocity u component
+      IF( iom_use('vice'     ) )   CALL iom_put( "vice"   , v_ice                 )   ! ice velocity v component
+      IF( iom_use('utau_ai'  ) )   CALL iom_put( "utau_ai", utau_ice * zmsk00     )   ! Wind stress term in force balance (x)
+      IF( iom_use('vtau_ai'  ) )   CALL iom_put( "vtau_ai", vtau_ice * zmsk00     )   ! Wind stress term in force balance (y)
+
+      IF( iom_use('icevel') ) THEN 
          DO jj = 2 , jpjm1
             DO ji = 2 , jpim1
@@ -103,144 +140,76 @@
          END DO
          CALL lbc_lnk( z2d, 'T', 1. )
-         IF( iom_use('icevel'   ) )   CALL iom_put( "icevel"       , z2d        )                          ! ice velocity module
-         IF( iom_use('icevel_mv') )   CALL iom_put( "icevel_mv"    , z2d(:,:) * zswi(:,:) + zmiss(:,:) )   ! ice velocity module (missing value)
+         IF( iom_use('icevel') )   CALL iom_put( "icevel" , z2d                   )   ! ice velocity module
       ENDIF
-      !
-      IF( iom_use('miceage')  )       CALL iom_put( "miceage"     , om_i * zswi * zmsk15 )  ! mean ice age
-      IF( iom_use('micet')    )       CALL iom_put( "micet"       , ( tm_i  - rt0 ) * zswi )  ! ice mean    temperature
-      IF( iom_use('icest')    )       CALL iom_put( "icest"       , ( tm_su - rt0 ) * zswi )  ! ice surface temperature
-      IF( iom_use('icecolf')  )       CALL iom_put( "icecolf"     , ht_i_new               )  ! new ice thickness formed in the leads
-      !
-      CALL iom_put( "iceconc"     , at_i  * zswi        )        ! ice concentration
-      CALL iom_put( "icevolu"     , vt_i  * zswi        )        ! ice volume = mean ice thickness over the cell
-      CALL iom_put( "icethick"    , hm_i  * zswi        )        ! ice thickness
-      CALL iom_put( "icehc"       , et_i  * zswi        )        ! ice total heat content
-      CALL iom_put( "isnowhc"     , et_s  * zswi        )        ! snow total heat content
-      CALL iom_put( "ibrinv"      , bvm_i * zswi * 100. )        ! brine volume
-      CALL iom_put( "micesalt"    , sm_i  * zswi      )        ! mean ice salinity
-      CALL iom_put( "snowvol"     , vt_s  * zswi      )        ! snow volume
-      
-      CALL iom_put( "iceamp"  , at_ip  * zswi        )   ! melt pond total fraction
-      CALL iom_put( "icevmp"  , vt_ip  * zswi        )   ! melt pond total volume per unit area
-
-      !----------------------------------
-      ! Output category-dependent fields
-      !----------------------------------
-      IF ( iom_use('iceconc_cat' ) )  CALL iom_put( "iceconc_cat"      , a_i  * zswi2   )        ! area for categories
-      IF ( iom_use('icethic_cat' ) )  CALL iom_put( "icethic_cat"      , h_i  * zswi2   )        ! thickness for categories
-      IF ( iom_use('snowthic_cat') )  CALL iom_put( "snowthic_cat"     , h_s  * zswi2   )        ! snow depth for categories
-      IF ( iom_use('salinity_cat') )  CALL iom_put( "salinity_cat"     , s_i  * zswi2   )        ! salinity for categories
-      IF ( iom_use('icetemp_cat' ) )  CALL iom_put( "icetemp_cat", ( SUM( t_i(:,:,:,:), dim=3 ) * r1_nlay_i - rt0 ) * zswi2 )    ! ice temperature
-      IF ( iom_use('snwtemp_cat' ) )  CALL iom_put( "snwtemp_cat", ( SUM( t_s(:,:,:,:), dim=3 ) * r1_nlay_s - rt0 ) * zswi2 )    ! snow temperature
-      IF ( iom_use('iceage_cat'  ) )  CALL iom_put( "iceage_cat" , o_i * zswi2 )                   ! ice age
-      IF ( iom_use('brinevol_cat') )  CALL iom_put( "brinevol_cat", bv_i * 100. * zswi2 )          ! brine volume
-
-      IF ( iom_use('iceamp_cat') )  CALL iom_put( "iceamp_cat"     , a_ip       * zswi2   )       ! melt pond frac for categories
-      IF ( iom_use('icevmp_cat') )  CALL iom_put( "icevmp_cat"     , v_ip       * zswi2   )       ! melt pond frac for categories
-      IF ( iom_use('icehmp_cat') )  CALL iom_put( "icehmp_cat"     , h_ip       * zswi2   )       ! melt pond frac for categories
-      IF ( iom_use('iceafp_cat') )  CALL iom_put( "iceafp_cat"     , a_ip_frac  * zswi2   )       ! melt pond frac for categories
-
-      !--------------------------------
+
+      ! --- category-dependent fields --- !
+      IF( iom_use('icemask_cat' ) )   CALL iom_put( "icemask_cat" , zmsk00l                                                    )   ! ice mask 0%
+      IF( iom_use('iceconc_cat' ) )   CALL iom_put( "iceconc_cat" , a_i * zmsk00l                                              )   ! area for categories
+      IF( iom_use('icethic_cat' ) )   CALL iom_put( "icethic_cat" , h_i * zmsk00l                                              )   ! thickness for categories
+      IF( iom_use('snwthic_cat' ) )   CALL iom_put( "snwthic_cat" , h_s * zmsk00l                                              )   ! snow depth for categories
+      IF( iom_use('icesalt_cat' ) )   CALL iom_put( "icesalt_cat" , s_i * zmsk00l                                              )   ! salinity for categories
+      IF( iom_use('iceage_cat'  ) )   CALL iom_put( "iceage_cat"  , o_i * zmsk00l / rday                                       )   ! ice age
+      IF( iom_use('icetemp_cat' ) )   CALL iom_put( "icetemp_cat" , ( SUM( t_i(:,:,:,:), dim=3 ) * r1_nlay_i - rt0 ) * zmsk00l )   ! ice temperature
+      IF( iom_use('snwtemp_cat' ) )   CALL iom_put( "snwtemp_cat" , ( SUM( t_s(:,:,:,:), dim=3 ) * r1_nlay_s - rt0 ) * zmsk00l )   ! snow temperature
+      IF( iom_use('icebrv_cat'  ) )   CALL iom_put( "icebrv_cat"  , bv_i * 100. * zmsk00l                                      )   ! brine volume
+      IF( iom_use('iceapnd_cat' ) )   CALL iom_put( "iceapnd_cat" , a_ip        * zmsk00l                                      )   ! melt pond frac for categories
+      IF( iom_use('icehpnd_cat' ) )   CALL iom_put( "icehpnd_cat" , h_ip        * zmsk00l                                      )   ! melt pond frac for categories
+      IF( iom_use('iceafpnd_cat') )   CALL iom_put( "iceafpnd_cat", a_ip_frac   * zmsk00l                                      )   ! melt pond frac for categories
+
+      !------------------
       ! Add-ons for SIMIP
-      !--------------------------------
-      zrho1 = ( rau0 - rhoic ) * r1_rau0; zrho2 = rhosn * r1_rau0
-
-      IF ( iom_use( "icepres"  ) ) CALL iom_put( "icepres"     , zswi(:,:)                     )                                ! Ice presence (1 or 0) 
-      IF ( iom_use( "icemass"  ) ) CALL iom_put( "icemass"     , rhoic * vt_i(:,:) * zswi(:,:) )                                ! Ice mass per cell area 
-      IF ( iom_use( "icethic"  ) ) CALL iom_put( "icethic"     , hm_i(:,:) * zmsk05(:,:)  + ( 1. - zmsk05(:,:) ) * zmiss_val )     ! Ice thickness 
-      IF ( iom_use( "snomass"  ) ) CALL iom_put( "snomass"     , rhosn * vt_s(:,:)         * zswi(:,:) + zmiss(:,:) )           ! Snow mass per cell area
-      IF ( iom_use( "snothic"  ) ) CALL iom_put( "snothic"     , hm_s(:,:) * zmsk05(:,:)  + ( 1. - zmsk05(:,:) ) * zmiss_val )     ! Snow thickness       
-
-      IF ( iom_use( "iceconc_cat_mv"  ) )  CALL iom_put( "iceconc_cat_mv" , a_i(:,:,:)  * zswi2(:,:,:) + zmiss2(:,:,:) )        ! Area for categories
-      IF ( iom_use( "icethic_cat_mv"  ) )  CALL iom_put( "icethic_cat_mv" , h_i(:,:,:) * zswi2(:,:,:) + zmiss2(:,:,:) )        ! Thickness for categories
-      IF ( iom_use( "snowthic_cat_mv" ) )  CALL iom_put( "snowthic_cat_mv", h_s(:,:,:) * zswi2(:,:,:) + zmiss2(:,:,:) )        ! Snow depth for categories
-
-      IF ( iom_use( "icestK"   ) ) CALL iom_put( "icestK"      , tm_su(:,:)                * zswi(:,:) + zmiss(:,:) )           ! Ice surface temperature
-      IF ( iom_use( "icesntK"  ) ) CALL iom_put( "icesntK"     , tm_si(:,:)                * zswi(:,:) + zmiss(:,:) )           ! Snow-ice interface temperature
-      IF ( iom_use( "icebotK"  ) ) CALL iom_put( "icebotK"     , t_bo(:,:)                 * zswi(:,:) + zmiss(:,:) )           ! Ice bottom temperature
-      IF ( iom_use( "iceage"   ) ) CALL iom_put( "iceage"      , om_i(:,:) * zmsk15(:,:) + ( 1. - zmsk15(:,:) ) * zmiss_val )   ! Ice age
-      IF ( iom_use( "icesmass" ) ) CALL iom_put( "icesmass"    , SUM( sv_i, DIM = 3 ) * rhoic * 1.0e-3 * zswi(:,:) )           ! Mass of salt in sea ice per cell area
-      IF ( iom_use( "icesal"   ) ) CALL iom_put( "icesal"      , sm_i(:,:)                * zswi(:,:) + zmiss(:,:) )           ! Ice salinity
-
-      IF ( iom_use( "icefb"    ) ) THEN
-         zfb(:,:) = ( zrho1 * hm_i(:,:) - zrho2 * hm_s(:,:) )                                         
-         WHERE( zfb < 0._wp ) ;   zfb = 0._wp ;   END WHERE
-                                   CALL iom_put( "icefb"       , zfb(:,:)                  * zswi(:,:) + zmiss(:,:) )           ! Ice freeboard
+      !------------------
+      ! trends
+      IF( iom_use('dmithd') )   CALL iom_put( "dmithd", - wfx_bog - wfx_bom - wfx_sum - wfx_sni - wfx_opw - wfx_lam - wfx_res ) ! Sea-ice mass change from thermodynamics
+      IF( iom_use('dmidyn') )   CALL iom_put( "dmidyn", - wfx_dyn + rhoic * diag_trp_vi     )   ! Sea-ice mass change from dynamics(kg/m2/s)
+      IF( iom_use('dmiopw') )   CALL iom_put( "dmiopw", - wfx_opw                           )   ! Sea-ice mass change through growth in open water
+      IF( iom_use('dmibog') )   CALL iom_put( "dmibog", - wfx_bog                           )   ! Sea-ice mass change through basal growth
+      IF( iom_use('dmisni') )   CALL iom_put( "dmisni", - wfx_sni                           )   ! Sea-ice mass change through snow-to-ice conversion
+      IF( iom_use('dmisum') )   CALL iom_put( "dmisum", - wfx_sum                           )   ! Sea-ice mass change through surface melting
+      IF( iom_use('dmibom') )   CALL iom_put( "dmibom", - wfx_bom                           )   ! Sea-ice mass change through bottom melting
+      IF( iom_use('dmtsub') )   CALL iom_put( "dmtsub", - wfx_sub                           )   ! Sea-ice mass change through evaporation and sublimation
+      IF( iom_use('dmssub') )   CALL iom_put( "dmssub", - wfx_snw_sub                       )   ! Snow mass change through sublimation
+      IF( iom_use('dmisub') )   CALL iom_put( "dmisub", - wfx_ice_sub                       )   ! Sea-ice mass change through sublimation
+      IF( iom_use('dmsspr') )   CALL iom_put( "dmsspr", - wfx_spr                           )   ! Snow mass change through snow fall
+      IF( iom_use('dmsssi') )   CALL iom_put( "dmsssi",   wfx_sni*rhosn*r1_rhoic            )   ! Snow mass change through snow-to-ice conversion
+      IF( iom_use('dmsmel') )   CALL iom_put( "dmsmel", - wfx_snw_sum                       )   ! Snow mass change through melt
+      IF( iom_use('dmsdyn') )   CALL iom_put( "dmsdyn", - wfx_snw_dyn + rhosn * diag_trp_vs )   ! Snow mass change through dynamics(kg/m2/s)
+
+      ! Global ice diagnostics
+      IF( iom_use('NH_icearea') .OR. iom_use('NH_icevolu') .OR. iom_use('NH_iceextt') )   THEN   ! NH diagnostics
+         !
+         WHERE( ff_t > 0._wp )   ;   zmsk00(:,:) = 1.0e-12
+         ELSEWHERE               ;   zmsk00(:,:) = 0.
+         END WHERE 
+         zdiag_area_nh = glob_sum( at_i(:,:) * zmsk00(:,:) * e1e2t(:,:) )
+         zdiag_volu_nh = glob_sum( vt_i(:,:) * zmsk00(:,:) * e1e2t(:,:) )
+         !
+         WHERE( ff_t > 0._wp .AND. at_i > 0.15 )   ; zmsk00(:,:) = 1.0e-12
+         ELSEWHERE                                 ; zmsk00(:,:) = 0.
+         END WHERE 
+         zdiag_extt_nh = glob_sum( zmsk00(:,:) * e1e2t(:,:) )
+         !
+         IF( iom_use('NH_icearea') )   CALL iom_put( "NH_icearea" ,  zdiag_area_nh )
+         IF( iom_use('NH_icevolu') )   CALL iom_put( "NH_icevolu" ,  zdiag_volu_nh )
+         IF( iom_use('NH_iceextt') )   CALL iom_put( "NH_iceextt" ,  zdiag_extt_nh )
+         !
       ENDIF
-
-      IF ( iom_use( "isnhcneg" ) ) CALL iom_put( "isnhcneg"    , - et_s(:,:)               * zswi(:,:) + zmiss(:,:) )           ! Snow total heat content
-
-      IF ( iom_use( "dmithd"   ) ) CALL iom_put( "dmithd"      , - wfx_bog - wfx_bom - wfx_sum   &                       ! Sea-ice mass change from thermodynamics
-              &                                                   - wfx_sni - wfx_opw - wfx_res )
-      IF ( iom_use( "dmidyn"   ) ) CALL iom_put( "dmidyn"      , - wfx_dyn(:,:) + rhoic * diag_trp_vi(:,:) )             ! Sea-ice mass change from dynamics(kg/m2/s)
-      IF ( iom_use( "dmiopw"   ) ) CALL iom_put( "dmiopw"      , - wfx_opw                  )                            ! Sea-ice mass change through growth in open water
-      IF ( iom_use( "dmibog"   ) ) CALL iom_put( "dmibog"      , - wfx_bog                  )                            ! Sea-ice mass change through basal growth
-      IF ( iom_use( "dmisni"   ) ) CALL iom_put( "dmisni"      , - wfx_sni                  )                            ! Sea-ice mass change through snow-to-ice conversion
-      IF ( iom_use( "dmisum"   ) ) CALL iom_put( "dmisum"      , - wfx_sum                  )                            ! Sea-ice mass change through surface melting
-      IF ( iom_use( "dmibom"   ) ) CALL iom_put( "dmibom"      , - wfx_bom                  )                            ! Sea-ice mass change through bottom melting
-
-      IF ( iom_use( "dmtsub"   ) ) CALL iom_put( "dmtsub"      , - wfx_sub                  )                            ! Sea-ice mass change through evaporation and sublimation
-      IF ( iom_use( "dmssub"   ) ) CALL iom_put( "dmssub"      , - wfx_snw_sub              )                            ! Snow mass change through sublimation
-      IF ( iom_use( "dmisub"   ) ) CALL iom_put( "dmisub"      , - wfx_ice_sub              )                            ! Sea-ice mass change through sublimation
-
-      IF ( iom_use( "dmsspr"   ) ) CALL iom_put( "dmsspr"      , - wfx_spr                  )                            ! Snow mass change through snow fall
-      IF ( iom_use( "dmsssi"   ) ) CALL iom_put( "dmsssi"      ,   wfx_sni*rhosn*r1_rhoic   )                            ! Snow mass change through snow-to-ice conversion
-
-      IF ( iom_use( "dmsmel"   ) ) CALL iom_put( "dmsmel"      , - wfx_snw_sum              )                            ! Snow mass change through melt
-      IF ( iom_use( "dmsdyn"   ) ) CALL iom_put( "dmsdyn"      , - wfx_snw_dyn(:,:) + rhosn * diag_trp_vs(:,:) )         ! Snow mass change through dynamics(kg/m2/s)
-
-      IF ( iom_use( "hfxsenso" ) ) CALL iom_put( "hfxsenso"    ,   -fhtur(:,:)              * zswi(:,:) + zmiss(:,:) )   ! Sensible oceanic heat flux
-      IF ( iom_use( "hfxconbo" ) ) CALL iom_put( "hfxconbo"    ,   diag_fc_bo               * zswi(:,:) + zmiss(:,:) )   ! Bottom conduction flux
-      IF ( iom_use( "hfxconsu" ) ) CALL iom_put( "hfxconsu"    ,   diag_fc_su               * zswi(:,:) + zmiss(:,:) )   ! Surface conduction flux
-
-      IF ( iom_use( "wfxtot"   ) ) CALL iom_put( "wfxtot"      ,   wfx_ice(:,:)             * zswi(:,:) + zmiss(:,:) )   ! Total freshwater flux from sea ice
-      IF ( iom_use( "wfxsum"   ) ) CALL iom_put( "wfxsum"      ,   wfx_sum(:,:)             * zswi(:,:) + zmiss(:,:) )   ! Freshwater flux from sea-ice surface
-      IF ( iom_use( "sfx_mv"   ) ) CALL iom_put( "sfx_mv"      ,   sfx(:,:) * 0.001         * zswi(:,:) + zmiss(:,:) )   ! Total salt flux
-
-      IF ( iom_use( "uice_mv"  ) ) CALL iom_put( "uice_mv"     ,   u_ice(:,:)               * zswi(:,:) + zmiss(:,:) )   ! ice velocity u component
-      IF ( iom_use( "vice_mv"  ) ) CALL iom_put( "vice_mv"     ,   v_ice(:,:)               * zswi(:,:) + zmiss(:,:) )   ! ice velocity v component
-      
-      IF ( iom_use( "utau_ice" ) ) CALL iom_put( "utau_ice"     ,  utau_ice(:,:)            * zswi(:,:) + zmiss(:,:) )   ! Wind stress term in force balance (x)
-      IF ( iom_use( "vtau_ice" ) ) CALL iom_put( "vtau_ice"     ,  vtau_ice(:,:)            * zswi(:,:) + zmiss(:,:) )   ! Wind stress term in force balance (y)
-
-      !--------------------------------
-      ! Global ice diagnostics (SIMIP)
-      !--------------------------------
-      !
-      IF ( iom_use( "NH_icearea" ) .OR. iom_use( "NH_icevolu" ) .OR. iom_use( "NH_iceextt" ) )   THEN   ! NH diagnostics
-         !
-         WHERE( ff_t > 0._wp )   ;   zswi(:,:) = 1.0e-12
-         ELSEWHERE               ;   zswi(:,:) = 0.
+      !
+      IF( iom_use('SH_icearea') .OR. iom_use('SH_icevolu') .OR. iom_use('SH_iceextt') )   THEN   ! SH diagnostics
+         !
+         WHERE( ff_t < 0._wp ); zmsk00(:,:) = 1.0e-12; 
+         ELSEWHERE            ; zmsk00(:,:) = 0.
          END WHERE 
-         zdiag_area_nh = glob_sum( at_i(:,:) * zswi(:,:) * e1e2t(:,:) )
-         zdiag_volu_nh = glob_sum( vt_i(:,:) * zswi(:,:) * e1e2t(:,:) )
-         !
-         WHERE( ff_t > 0._wp .AND. at_i > 0.15 )   ; zswi(:,:) = 1.0e-12
-         ELSEWHERE                                 ; zswi(:,:) = 0.
+         zdiag_area_sh = glob_sum( at_i(:,:) * zmsk00(:,:) * e1e2t(:,:) ) 
+         zdiag_volu_sh = glob_sum( vt_i(:,:) * zmsk00(:,:) * e1e2t(:,:) )
+         !
+         WHERE( ff_t < 0._wp .AND. at_i > 0.15 ); zmsk00(:,:) = 1.0e-12
+         ELSEWHERE                              ; zmsk00(:,:) = 0.
          END WHERE 
-         zdiag_extt_nh = glob_sum( zswi(:,:) * e1e2t(:,:) )
-         !
-         IF ( iom_use( "NH_icearea" ) )   CALL iom_put( "NH_icearea" ,  zdiag_area_nh  )
-         IF ( iom_use( "NH_icevolu" ) )   CALL iom_put( "NH_icevolu" ,  zdiag_volu_nh  )
-         IF ( iom_use( "NH_iceextt" ) )   CALL iom_put( "NH_iceextt" ,  zdiag_extt_nh  )
-         !
-      ENDIF
-      !
-      IF ( iom_use( "SH_icearea" ) .OR. iom_use( "SH_icevolu" ) .OR. iom_use( "SH_iceextt" ) )   THEN   ! SH diagnostics
-         !
-         WHERE( ff_t < 0._wp ); zswi(:,:) = 1.0e-12; 
-         ELSEWHERE            ; zswi(:,:) = 0.
-         END WHERE 
-         zdiag_area_sh = glob_sum( at_i(:,:) * zswi(:,:) * e1e2t(:,:) ) 
-         zdiag_volu_sh = glob_sum( vt_i(:,:) * zswi(:,:) * e1e2t(:,:) )
-         !
-         WHERE( ff_t < 0._wp .AND. at_i > 0.15 ); zswi(:,:) = 1.0e-12
-         ELSEWHERE                              ; zswi(:,:) = 0.
-         END WHERE 
-         zdiag_extt_sh = glob_sum( zswi(:,:) * e1e2t(:,:) )
-         !
-         IF ( iom_use( "SH_icearea" ) ) CALL iom_put( "SH_icearea", zdiag_area_sh )
-         IF ( iom_use( "SH_icevolu" ) ) CALL iom_put( "SH_icevolu", zdiag_volu_sh )
-         IF ( iom_use( "SH_iceextt" ) ) CALL iom_put( "SH_iceextt", zdiag_extt_sh )
+         zdiag_extt_sh = glob_sum( zmsk00(:,:) * e1e2t(:,:) )
+         !
+         IF( iom_use('SH_icearea') ) CALL iom_put( "SH_icearea", zdiag_area_sh )
+         IF( iom_use('SH_icevolu') ) CALL iom_put( "SH_icevolu", zdiag_volu_sh )
+         IF( iom_use('SH_iceextt') ) CALL iom_put( "SH_iceextt", zdiag_extt_sh )
          !
       ENDIF 
@@ -267,8 +236,8 @@
       !! History :   4.0  !  2013-06  (C. Rousset)
       !!----------------------------------------------------------------------
-      INTEGER, INTENT( in )   ::   kt               ! ocean time-step index
-      INTEGER, INTENT( in )   ::   kid , kh_i
-      INTEGER                 ::   nz_i, jl
-      REAL(wp), DIMENSION(jpl) :: jcat
+      INTEGER, INTENT( in ) ::   kt               ! ocean time-step index
+      INTEGER, INTENT( in ) ::   kid , kh_i
+      INTEGER               ::   nz_i, jl
+      REAL(wp), DIMENSION(jpl) ::   jcat
       !!----------------------------------------------------------------------
       !
@@ -332,9 +301,5 @@
       CALL histdef( kid, "sisalcat", "Ice salinity"           , ""      ,   &
       &      jpi, jpj, kh_i, jpl, 1, jpl, nz_i, 32, "inst(x)", rdt, rdt )
-      CALL histdef( kid, "sitemcat", "Ice temperature"       , "C"      ,   &
-      &      jpi, jpj, kh_i, jpl, 1, jpl, nz_i, 32, "inst(x)", rdt, rdt )
       CALL histdef( kid, "snthicat", "Snw thickness"         , "m"      ,   &
-      &      jpi, jpj, kh_i, jpl, 1, jpl, nz_i, 32, "inst(x)", rdt, rdt )
-      CALL histdef( kid, "sntemcat", "Snw temperature"       , "C"      ,   &
       &      jpi, jpj, kh_i, jpl, 1, jpl, nz_i, 32, "inst(x)", rdt, rdt )
 
@@ -370,7 +335,5 @@
       CALL histwrite( kid, "siconcat", kt, a_i         , jpi*jpj*jpl, (/1/) )    
       CALL histwrite( kid, "sisalcat", kt, s_i         , jpi*jpj*jpl, (/1/) )    
-      CALL histwrite( kid, "sitemcat", kt, tm_i - rt0  , jpi*jpj*jpl, (/1/) )    
       CALL histwrite( kid, "snthicat", kt, h_s         , jpi*jpj*jpl, (/1/) )    
-      CALL histwrite( kid, "sntemcat", kt, tm_su - rt0 , jpi*jpj*jpl, (/1/) )    
 
       !! The file is closed in dia_wri_state (ocean routine)
Index: /branches/2017/dev_CNRS_2017/NEMOGCM/NEMO/OPA_SRC/SBC/sbcblk.F90
===================================================================
--- /branches/2017/dev_CNRS_2017/NEMOGCM/NEMO/OPA_SRC/SBC/sbcblk.F90	(revision 8883)
+++ /branches/2017/dev_CNRS_2017/NEMOGCM/NEMO/OPA_SRC/SBC/sbcblk.F90	(revision 8884)
@@ -556,6 +556,6 @@
          tprecip(:,:) = sf(jp_prec)%fnow(:,:,1) * rn_pfac   ! output total precipitation [kg/m2/s]
          sprecip(:,:) = sf(jp_snow)%fnow(:,:,1) * rn_pfac   ! output solid precipitation [kg/m2/s]
-         CALL iom_put( 'snowpre', sprecip * 86400. )        ! Snow
-         CALL iom_put( 'precip' , tprecip * 86400. )        ! Total precipitation
+         CALL iom_put( 'snowpre', sprecip )                 ! Snow
+         CALL iom_put( 'precip' , tprecip )                 ! Total precipitation
       ENDIF
       !
@@ -913,6 +913,6 @@
       tprecip(:,:) = sf(jp_prec)%fnow(:,:,1) * rn_pfac      ! total precipitation [kg/m2/s]
       sprecip(:,:) = sf(jp_snow)%fnow(:,:,1) * rn_pfac      ! solid precipitation [kg/m2/s]
-      CALL iom_put( 'snowpre', sprecip * 86400. )                  ! Snow precipitation
-      CALL iom_put( 'precip' , tprecip * 86400. )                  ! Total precipitation
+      CALL iom_put( 'snowpre', sprecip )                    ! Snow precipitation
+      CALL iom_put( 'precip' , tprecip )                    ! Total precipitation
 
       ! --- evaporation --- !
