<p><b>mpetersen@lanl.gov</b> 2010-05-11 10:27:17 -0600 (Tue, 11 May 2010)</p><p>Changed lines with stop and MPI_Abort to dmpar_abort(dminfo)<br>
</p><hr noshade><pre><font color="gray">Modified: branches/ocean_projects/z_level_mrp/mpas/src/core_ocean/module_test_cases.F
===================================================================
--- branches/ocean_projects/z_level_mrp/mpas/src/core_ocean/module_test_cases.F        2010-05-11 00:31:59 UTC (rev 263)
+++ branches/ocean_projects/z_level_mrp/mpas/src/core_ocean/module_test_cases.F        2010-05-11 16:27:17 UTC (rev 264)
@@ -23,6 +23,7 @@
 
       integer :: i, iCell, iEdge, iVtx, iLevel
       type (block_type), pointer :: block_ptr
+      type (dm_info) :: dminfo
 
       ! mrp 100507: for diagnostic output
       integer :: iTracer
@@ -78,9 +79,10 @@
          end do
 
       else
-         write(0,*) &amp;
-           'Only test case 1, 2, 5, and 6 are currently supported.'
-         stop
+         write(0,*) 'Abort: config_test_case=',config_test_case
+         write(0,*) 'Only test case 1, 2, 5, and 6 ', &amp;
+           'are currently supported.  '
+           call dmpar_abort(dminfo)
       end if
 
       block_ptr =&gt; domain % blocklist
@@ -134,7 +136,7 @@
          else 
            print *, ' Incorrect choice of config_vert_grid_type:',&amp;
              config_vert_grid_type
-           stop
+             call dmpar_abort(dminfo)
          endif
 
          tracers = 0.0

Modified: branches/ocean_projects/z_level_mrp/mpas/src/core_ocean/module_time_integration.F
===================================================================
--- branches/ocean_projects/z_level_mrp/mpas/src/core_ocean/module_time_integration.F        2010-05-11 00:31:59 UTC (rev 263)
+++ branches/ocean_projects/z_level_mrp/mpas/src/core_ocean/module_time_integration.F        2010-05-11 16:27:17 UTC (rev 264)
@@ -26,27 +26,28 @@
 
       type (domain_type), intent(inout) :: domain
       real (kind=RKIND), intent(in) :: dt
-      integer errorcode,ierr
 
+      type (dm_info) :: dminfo
       type (block_type), pointer :: block
 
       if (trim(config_time_integration) == 'RK4') then
          call rk4(domain, dt)
       else
-         write(0,*) 'Unknown time integration option '//trim(config_time_integration)
+         write(0,*) 'Abort: Unknown time integration option '&amp;
+           //trim(config_time_integration)
          write(0,*) 'Currently, only ''RK4'' is supported.'
-         stop
+         call dmpar_abort(dminfo)
       end if
 
       block =&gt; domain % blocklist
       do while (associated(block))
-         block % time_levs(2) % state % xtime % scalar = block % time_levs(1) % state % xtime % scalar + dt
-         ! mrp 100310  I added this to avoid running with NaNs
+         block % time_levs(2) % state % xtime % scalar &amp;
+           = block % time_levs(1) % state % xtime % scalar + dt
+
          if (isNaN(sum(block % time_levs(2) % state % u % array))) then
-            print *, 'Stopping: NaN detected'
-            call MPI_abort(MPI_COMM_WORLD,errorcode,ierr)
+            write(0,*) 'Abort: NaN detected'
+            call dmpar_abort(dminfo)
          endif
-         ! mrp 100310 end
 
          block =&gt; block % next
       end do
@@ -460,17 +461,20 @@
          w_dudz(nVertLevels) = 0.0
 
          ! Average w*du/dz from vertical edges to vertical middle of cell
-         tend_u(1,iEdge) = - 0.5 * w_dudz(1)
+!mrp 100510 remove zlevel additions
+!         tend_u(1,iEdge) = - 0.5 * w_dudz(1)
          do k=2,nVertLevels
-            tend_u(k,iEdge) = - 0.5 * (w_dudz(k-1) + w_dudz(k))
+!mrp 100510 remove zlevel additions
+!            tend_u(k,iEdge) = - 0.5 * (w_dudz(k-1) + w_dudz(k))
          enddo
          ! mrp 100422 end: add -w*dudz term to tendancy
 
          ! mrp 100426: add pressure gradient
          if (config_vert_grid_type.eq.'isopycnal') then
            do k=1,nVertLevels
-             tend_u(k,iEdge) = tend_u(k,iEdge)     &amp;
-               - (MontPot(k,cell2) - MontPot(k,cell1))/dcEdge(iEdge)
+!mrp 100510 remove zlevel additions
+!             tend_u(k,iEdge) = tend_u(k,iEdge)     &amp;
+!               - (MontPot(k,cell2) - MontPot(k,cell1))/dcEdge(iEdge)
            end do
          elseif (config_vert_grid_type.eq.'zlevel') then
            do k=1,nVertLevels
@@ -497,10 +501,19 @@
                workpv = 0.5 * (pv_edge(k,iEdge) + pv_edge(k,eoe))
                q = q + weightsOnEdge(j,iEdge) * u(k,eoe) * workpv * h_edge(k,eoe) 
             end do
-            tend_u(k,iEdge) = tend_u(k,iEdge)     &amp;
-                   + q     &amp;
+!mrp 100510 remove zlevel additions
+ !           tend_u(k,iEdge) = tend_u(k,iEdge)     &amp;
+ !                  + q     &amp;
+ !                  + u_diffusion &amp;
+ !                  - (   ke(k,cell2) - ke(k,cell1) ) / dcEdge(iEdge)
+!mrp 100510 remove zlevel additions replace with
+            tend_u(k,iEdge) =       &amp;
+                    q     &amp;
                    + u_diffusion &amp;
-                   - (   ke(k,cell2) - ke(k,cell1) ) / dcEdge(iEdge)
+                   - (   ke(k,cell2) - ke(k,cell1)  &amp;
+                       + MontPot(k,cell2) - MontPot(k,cell1) &amp;
+                         ) / dcEdge(iEdge)
+!mrp 100510 remove zlevel additions end
 
          end do
       end do
@@ -535,6 +548,7 @@
               dist = zBotEdge(k-1,iEdge) - zBotEdge(k,iEdge)
            endif
 
+!mrp 100510 remove zlevel additions
            tend_u(k,iEdge) = tend_u(k,iEdge) + (fluxVert(k-1) - fluxVert(k))/dist
 
          enddo
@@ -543,6 +557,13 @@
 
 #endif
 
+! print '(a,i5,f10.5)', &amp;
+!  'k,   min(tend_u(k,:)),max(tend_u(k,:))'
+! do k=1,nVertLevels
+!   print '(i5,10es22.12)', &amp;
+!     k,minval(tend_u(k,1:grid % nedgessolve)),maxval(tend_u(k,1:grid % nedgessolve))
+! enddo
+
 #ifdef NCAR_FORMULATION
       !
       ! Compute u (normal) velocity tendency for each edge (cell face)

Modified: branches/ocean_projects/z_level_mrp/mpas/src/core_ocean/mpas_interface.F
===================================================================
--- branches/ocean_projects/z_level_mrp/mpas/src/core_ocean/mpas_interface.F        2010-05-11 00:31:59 UTC (rev 263)
+++ branches/ocean_projects/z_level_mrp/mpas/src/core_ocean/mpas_interface.F        2010-05-11 16:27:17 UTC (rev 264)
@@ -27,7 +27,7 @@
 
    ! xsad 10-02-09:
    ! commenting this out until we incorporate the necessary lapack routines into mpas
-   ! call init_reconstruct(block_ptr % mesh)
+   ! call init_reconstruct(mesh)
    ! xsad 10-02-09 end
 
 ! mrp 100316 In order for this to work, we need to pass domain % dminfo as an 

</font>
</pre>