<p><b>qchen3@fsu.edu</b> 2011-12-20 12:38:44 -0700 (Tue, 20 Dec 2011)</p><p>BRANCH COMMIT<br>
<br>
The standard GM for the thickness field has been implemented. It is compared to the old GMClocure branch. <br>
The statistics on day 5 match for at least 7-9 digits.<br>
</p><hr noshade><pre><font color="gray">Modified: branches/ocean_projects/gmvar/namelist.input
===================================================================
--- branches/ocean_projects/gmvar/namelist.input        2011-12-20 17:12:07 UTC (rev 1265)
+++ branches/ocean_projects/gmvar/namelist.input        2011-12-20 19:38:44 UTC (rev 1266)
@@ -1 +1 @@
-link namelist.input.sw
\ No newline at end of file
+link namelist.input.ocean
\ No newline at end of file

Modified: branches/ocean_projects/gmvar/namelist.input.ocean
===================================================================
--- branches/ocean_projects/gmvar/namelist.input.ocean        2011-12-20 17:12:07 UTC (rev 1265)
+++ branches/ocean_projects/gmvar/namelist.input.ocean        2011-12-20 19:38:44 UTC (rev 1266)
@@ -1,17 +1,17 @@
 &amp;sw_model
    config_test_case = 0
-   config_time_integration = 'split_explicit'
+   config_time_integration = 'RK4'
    config_rk_filter_btr_mode = .false.
-   config_dt = 10.0
+   config_dt = 180.0
    config_start_time = '0000-01-01_00:00:00'
-   config_run_duration = '2000_00:00:00'
-   config_stats_interval = 1920
+   config_run_duration = '5_00:00:00'
+   config_stats_interval = 480
 /
 &amp;io
    config_input_name = 'grid.nc'
    config_output_name = 'output.nc'
    config_restart_name = 'restart.nc'
-   config_output_interval = '20_00:00:00'
+   config_output_interval = '1_00:00:00'
    config_frames_per_outfile = 1000000
 /
 &amp;restart
@@ -19,8 +19,8 @@
    config_restart_interval = '120_00:00:00'
 /
 &amp;grid
-   config_vert_grid_type = 'zlevel'
-   config_rho0 = 1000
+   config_vert_grid_type = 'isopycnal'
+   config_rho0 = 1014.56
 /
 &amp;split_explicit_ts
    config_n_ts_iter  =  2 
@@ -43,25 +43,28 @@
    config_btr_solve_SSH2  = .false.
 /
 &amp;hmix
-   config_h_mom_eddy_visc2 = 1.0e5
+   config_h_mom_eddy_visc2 = 0.0
    config_h_mom_eddy_visc4 = 0.0
-   config_visc_vorticity_term = .true.
-   config_h_tracer_eddy_diff2 = 1.0e4
+   config_h_kappa = 700.0
+   config_h_kappa_q = 0.0
+   config_apvm_upwinding = 0.0
+   config_visc_vorticity_term = .false.
+   config_h_tracer_eddy_diff2 = 0.0
    config_h_tracer_eddy_diff4 = 0.0
    config_mom_decay      = .false.
    config_mom_decay_time = 3600.0
 /
 &amp;vmix
-   config_vert_visc_type  = 'rich'
-   config_vert_diff_type  = 'rich'
-   config_implicit_vertical_mix = .true.
+   config_vert_visc_type  = 'const'
+   config_vert_diff_type  = 'const'
+   config_implicit_vertical_mix = .false.
    config_convective_visc       = 1.0
    config_convective_diff       = 1.0
    config_bottom_drag_coeff     = 1.0e-3
 /
 &amp;vmix_const
-   config_vert_visc       = 2.5e-5
-   config_vert_diff       = 2.5e-5 
+   config_vert_visc       = 1.0e-4
+   config_vert_diff       = 1.0e-4 
 /
 &amp;vmix_rich
    config_bkrd_vert_visc  = 1.0e-4
@@ -77,7 +80,7 @@
    config_zWidth_tanh  = 100
 /
 &amp;eos
-   config_eos_type = 'jm'
+   config_eos_type = 'linear'
 /
 &amp;advection
    config_vert_tracer_adv = 'stencil'

Modified: branches/ocean_projects/gmvar/src/core_ocean/mpas_ocn_tendency.F
===================================================================
--- branches/ocean_projects/gmvar/src/core_ocean/mpas_ocn_tendency.F        2011-12-20 17:12:07 UTC (rev 1265)
+++ branches/ocean_projects/gmvar/src/core_ocean/mpas_ocn_tendency.F        2011-12-20 19:38:44 UTC (rev 1266)
@@ -116,7 +116,7 @@
       real (kind=RKIND), dimension(:,:), pointer :: &amp;
         weightsOnEdge, kiteAreasOnVertex, h_edge, h, u, v, pressure, &amp;
         tend_h, circulation, vorticity, ke, ke_edge, pv_edge, &amp;
-        MontPot, wTop, divergence, vertViscTopOfEdge
+        MontPot, wTop, divergence, vertViscTopOfEdge, uTransport
       type (dm_info) :: dminfo
 
       integer, dimension(:), pointer :: nEdgesOnCell, nEdgesOnEdge, &amp;
@@ -136,6 +136,7 @@
       h           =&gt; s % h % array
       u           =&gt; s % u % array
       v           =&gt; s % v % array
+      uTransport  =&gt; s % uTransport % array
       wTop        =&gt; s % wTop % array
       h_edge      =&gt; s % h_edge % array
       circulation =&gt; s % circulation % array
@@ -194,7 +195,7 @@
 
       call mpas_timer_start(&quot;ocn_tend_h-horiz adv&quot;)
 
-      call ocn_thick_hadv_tend(grid, u, h_edge, tend_h, err)
+      call ocn_thick_hadv_tend(grid, uTransport, h_edge, tend_h, err)
 
       call mpas_timer_stop(&quot;ocn_tend_h-horiz adv&quot;)
 
@@ -916,13 +917,15 @@
       !
       uBolus(:,:) = 0.0
       call ocn_get_h_kappa(s, grid)
-      do iEdge = 1,nEdges
-         cell1 = cellsOnEdge(1,iEdge)
-         cell2 = cellsOnEdge(2,iEdge)
-         do k=1,maxLevelEdgeTop(iEdge)
-            uBolus(k,iEdge) = -h_kappa(k,iEdge) * (h(k,cell2) - h(k,cell1))/dcEdge(iEdge)/h_edge(k,iEdge)
+      if (maxval(h_kappa(:,:)) &gt; epsilon(1d0)) then
+         do iEdge = 1,nEdges
+            cell1 = cellsOnEdge(1,iEdge)
+            cell2 = cellsOnEdge(2,iEdge)
+            do k=1,maxLevelEdgeTop(iEdge)
+               uBolus(k,iEdge) = -h_kappa(k,iEdge) * (h(k,cell2) - h(k,cell1))/dcEdge(iEdge)/h_edge(k,iEdge)
+            end do
          end do
-      end do
+      end if
 
       !
       ! Compute the transport velocity (this velocity transports thickness and PV)

</font>
</pre>