<p><b>mhoffman@lanl.gov</b> 2012-08-02 09:23:58 -0600 (Thu, 02 Aug 2012)</p><p>BRANCH COMMIT -- land ice<br>
More fixes to restarts for the ice2sea elevation feedback experiment<br>
The elevation feedback parameterization needed upperSurface but it was not yet calculated on a restart.  That is fixed now.<br>
</p><hr noshade><pre><font color="gray">Modified: branches/land_ice_projects/ice2sea_elev_feedback/src/core_land_ice/mpas_land_ice_mpas_core.F
===================================================================
--- branches/land_ice_projects/ice2sea_elev_feedback/src/core_land_ice/mpas_land_ice_mpas_core.F        2012-08-02 15:09:13 UTC (rev 2080)
+++ branches/land_ice_projects/ice2sea_elev_feedback/src/core_land_ice/mpas_land_ice_mpas_core.F        2012-08-02 15:23:58 UTC (rev 2081)
@@ -159,6 +159,7 @@
       use mpas_ocn_tracer_advection
       use ocn_advection
       use land_ice_annual_forcing
+      use mpas_configure
 
       implicit none
    
@@ -183,7 +184,10 @@
       ! ice2sea - init annual forcing module to do ice2sea stuff
       call land_ice_assign_annual_forcing_init()
       ! ice2sea initialize smb storage field to 0
-      !mesh % SMB_adjusted10 % array = 0.0  ! Don't want to do this - will break a restart - and should be 0 anyway
+      if (config_do_restart .eqv. .false.) then
+         mesh % SMB_adjusted10 % array = 0.0  ! Don't want to do this - will break a restart 
+      endif
+      state % upperSurface % array = state % bedTopography % array + state % thickness % array  ! annual forcing with elev fdbck needs upperSurface on a restart - but it doesn't get calculated until the diagnostic solve so calculate it here - assumes no floating ice
       call land_ice_assign_annual_forcing(currTime, mesh, state, err_tmp)
       err = ior(err, err_tmp)
 
@@ -221,7 +225,7 @@
 
 
       ! ice2sea - make a copy of the initial upper Surface field - only do this on initial start - don't do it on a restart because it will be read in from the restart file.
-      if (maxval(mesh % upperSurfaceIC % array) .eq. 0) then
+      if (config_do_restart .eqv. .false.) then
          mesh % upperSurfaceIC % array = state % upperSurface % array
       endif
 

</font>
</pre>