<p><b>lipscomb</b> 2012-01-10 16:42:35 -0700 (Tue, 10 Jan 2012)</p><p><br>
Cleanup to remove variables no longer in the Registry.<br>
<br>
Code builds again.<br>
</p><hr noshade><pre><font color="gray">Modified: branches/land_ice/mpas/src/core_land_ice/Makefile
===================================================================
--- branches/land_ice/mpas/src/core_land_ice/Makefile        2012-01-10 23:37:56 UTC (rev 1350)
+++ branches/land_ice/mpas/src/core_land_ice/Makefile        2012-01-10 23:42:35 UTC (rev 1351)
@@ -16,7 +16,7 @@
 
 mpas_land_ice_advection.o:
 
-mpas_land_ice_time_integration.o:
+mpas_land_ice_time_integration.o: mpas_land_ice_vel.o
 
 mpas_land_ice_vel.o:
 

Modified: branches/land_ice/mpas/src/core_land_ice/mpas_land_ice_mpas_core.F
===================================================================
--- branches/land_ice/mpas/src/core_land_ice/mpas_land_ice_mpas_core.F        2012-01-10 23:37:56 UTC (rev 1350)
+++ branches/land_ice/mpas/src/core_land_ice/mpas_land_ice_mpas_core.F        2012-01-10 23:42:35 UTC (rev 1351)
@@ -131,7 +131,7 @@
 
       call mpas_rbf_interp_initialize(mesh)
       call mpas_init_reconstruct(mesh)
-      call mpas_reconstruct(mesh, block % state % time_levs(1) % state % u % array,             &amp;
+      call mpas_reconstruct(mesh, block % state % time_levs(1) % state % unorm % array,             &amp;
                        block % state % time_levs(1) % state % uReconstructX % array,            &amp;
                        block % state % time_levs(1) % state % uReconstructY % array,            &amp;
                        block % state % time_levs(1) % state % uReconstructZ % array,            &amp;

Modified: branches/land_ice/mpas/src/core_land_ice/mpas_land_ice_time_integration.F
===================================================================
--- branches/land_ice/mpas/src/core_land_ice/mpas_land_ice_time_integration.F        2012-01-10 23:37:56 UTC (rev 1350)
+++ branches/land_ice/mpas/src/core_land_ice/mpas_land_ice_time_integration.F        2012-01-10 23:42:35 UTC (rev 1351)
@@ -5,11 +5,10 @@
    use mpas_configure
    use mpas_constants
    use mpas_dmpar
+   use land_ice_vel, only: land_ice_vel_solve
 
-
    contains
 
-
    subroutine land_ice_timestep(domain, dt, timeStamp)
    !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 
    ! Advance model state forward in time by the specified time step
@@ -370,10 +369,10 @@
 !!!            do j = 1,nEdgesOnEdge(iEdge)
 !!!               eoe = edgesOnEdge(j,iEdge)
 !!!               workpv = 0.5 * (pv_edge(k,iEdge) + pv_edge(k,eoe))
-!!!               q = q + weightsOnEdge(j,iEdge) * u(k,eoe) * workpv * h_edge(k,eoe) 
+!!!               q = q + weightsOnEdge(j,iEdge) * unorm(k,eoe) * workpv * h_edge(k,eoe) 
 !!!            end do
 
-!!!            tend_u(k,iEdge) =       &amp;
+!!!            tend_unorm(k,iEdge) =       &amp;
 !!!                              q     &amp;
 !!!                              - (   ke(k,cell2) - ke(k,cell1) + &amp;
 !!!                                    gravity * (h(k,cell2) + h_s(cell2) - h(k,cell1) - h_s(cell1)) &amp;
@@ -401,7 +400,7 @@
 
 !!!            workpv = 2.0 * vorticity_abs / (h(k,cell1) + h(k,cell2))
 
-!!!            tend_u(k,iEdge) = workpv * vh(k,iEdge) - &amp;
+!!!            tend_unorm(k,iEdge) = workpv * vh(k,iEdge) - &amp;
 !!!                              (ke(k,cell2) - ke(k,cell1) + &amp;
 !!!                                 gravity * (h(k,cell2) + h_s(cell2) - h(k,cell1) - h_s(cell1)) &amp;
 !!!                              ) / &amp;
@@ -423,7 +422,7 @@
 !!!              u_diffusion =   ( divergence(k,cell2)  -  divergence(k,cell1) ) / dcEdge(iEdge) &amp;
 !!!                   -(vorticity(k,vertex2)  - vorticity(k,vertex1) ) / dvEdge(iEdge)
 !!!              u_diffusion = meshScalingDel2(iEdge) * config_h_mom_eddy_visc2 * u_diffusion
-!!!              tend_u(k,iEdge) = tend_u(k,iEdge) + u_diffusion
+!!!              tend_unorm(k,iEdge) = tend_unorm(k,iEdge) + u_diffusion
 !!!           end do
 !!!!        end do
 !!!     end if
@@ -451,7 +450,7 @@
 
 !!!           do k=1,nVertLevels
 
-!!!              delsq_u(k,iEdge) = ( divergence(k,cell2)  - divergence(k,cell1) ) / dcEdge(iEdge)  &amp;
+!!!              delsq_unorm(k,iEdge) = ( divergence(k,cell2)  - divergence(k,cell1) ) / dcEdge(iEdge)  &amp;
 !!!                   -( vorticity(k,vertex2) - vorticity(k,vertex1)) / dvEdge(iEdge)
 
 !!!           end do
@@ -540,7 +539,7 @@
 !!!                   + ke(1,cellsOnEdge(2,iEdge)))
 
 !!!             tend_u(1,iEdge) = tend_u(1,iEdge)  &amp;
-!!!                  - 1.0e-3*u(1,iEdge) &amp;
+!!!                  - 1.0e-3*unorm(1,iEdge) &amp;
 !!!                  *sqrt(2.0*ke_edge)/h_edge(1,iEdge)
 !!!         end do
 !!!     endif
@@ -605,7 +604,7 @@
                do k=1,grid % nVertLevels
                   do iTracer=1,grid % nTracers
                      tracer_edge = 0.5 * (tracers(iTracer,k,cell1) + tracers(iTracer,k,cell2))
-                     flux = u(k,iEdge) * dvEdge(iEdge) * h_edge(k,iEdge) * tracer_edge
+                     flux = unorm(k,iEdge) * dvEdge(iEdge) * h_edge(k,iEdge) * tracer_edge
                      tracer_tend(iTracer,k,cell1) = tracer_tend(iTracer,k,cell1) - flux/areaCell(cell1)
                      tracer_tend(iTracer,k,cell2) = tracer_tend(iTracer,k,cell2) + flux/areaCell(cell2)
                   end do 
@@ -650,14 +649,14 @@
                      endif
 
                      !-- if u &gt; 0:
-                     if (u(k,iEdge) &gt; 0) then
-                        flux = dvEdge(iEdge) * u(k,iEdge) * h_edge(k,iEdge) * (          &amp;
+                     if (unorm(k,iEdge) &gt; 0) then
+                        flux = dvEdge(iEdge) * unorm(k,iEdge) * h_edge(k,iEdge) * (          &amp;
                              0.5*(tracers(iTracer,k,cell1) + tracers(iTracer,k,cell2))      &amp;
                              -(dcEdge(iEdge) **2) * (d2fdx2_cell1 + d2fdx2_cell2) / 12.          &amp;
                              -(dcEdge(iEdge) **2) * coef_3rd_order*(d2fdx2_cell1 - d2fdx2_cell2) / 12. )
                      !-- else u &lt;= 0:
                      else
-                        flux = dvEdge(iEdge) *  u(k,iEdge) * h_edge(k,iEdge) * (          &amp;
+                        flux = dvEdge(iEdge) *  unorm(k,iEdge) * h_edge(k,iEdge) * (          &amp;
                              0.5*(tracers(iTracer,k,cell1) + tracers(iTracer,k,cell2))      &amp;
                              -(dcEdge(iEdge) **2) * (d2fdx2_cell1 + d2fdx2_cell2) / 12.          &amp;
                              +(dcEdge(iEdge) **2) * coef_3rd_order*(d2fdx2_cell1 - d2fdx2_cell2) / 12. )
@@ -707,7 +706,7 @@
 
                      endif
 
-                     flux = dvEdge(iEdge) *  u(k,iEdge) * h_edge(k,iEdge) * (          &amp;
+                     flux = dvEdge(iEdge) *  unorm(k,iEdge) * h_edge(k,iEdge) * (          &amp;
                           0.5*(tracers(iTracer,k,cell1) + tracers(iTracer,k,cell2))      &amp;
                              -(dcEdge(iEdge) **2) * (d2fdx2_cell1 + d2fdx2_cell2) / 12. )
 
@@ -938,7 +937,7 @@
             cell2 = cellsOnEdge(2,iEdge)
             if (cell1 &lt;= grid%nCells .and. cell2 &lt;= grid%nCells) then
                do k=1,grid % nVertLevels
-                  h_edge(k,iEdge) = 0.5 * (h(k,cell1) + h(k,cell2))
+                  h_edge(k,iEdge) = 0.5 * (thck_layer(k,cell1) + thck_layer(k,cell2))
                end do 
             end if
          end do 
@@ -960,33 +959,33 @@
                   !-- if not a boundary cell
                   if(boundaryCell(k,cell1).eq.0.and.boundaryCell(k,cell2).eq.0) then
 
-                     d2fdx2_cell1 = deriv_two(1,1,iEdge) * h(k,cell1)
-                     d2fdx2_cell2 = deriv_two(1,2,iEdge) * h(k,cell2)
+                     d2fdx2_cell1 = deriv_two(1,1,iEdge) * thck_layer(k,cell1)
+                     d2fdx2_cell2 = deriv_two(1,2,iEdge) * thck_layer(k,cell2)
 
                      !-- all edges of cell 1
                      do i=1, grid % nEdgesOnCell % array (cell1)
                              d2fdx2_cell1 = d2fdx2_cell1 + &amp;
-                             deriv_two(i+1,1,iEdge) * h(k,grid % CellsOnCell % array (i,cell1))
+                             deriv_two(i+1,1,iEdge) * thck_layer(k,grid % CellsOnCell % array (i,cell1))
                      end do
 
                      !-- all edges of cell 2
                      do i=1, grid % nEdgesOnCell % array (cell2)
                              d2fdx2_cell2 = d2fdx2_cell2 + &amp;
-                             deriv_two(i+1,2,iEdge) * h(k,grid % CellsOnCell % array (i,cell2))
+                             deriv_two(i+1,2,iEdge) * thck_layer(k,grid % CellsOnCell % array (i,cell2))
                      end do
 
                   endif
 
                   !-- if u &gt; 0:
-                  if (u(k,iEdge) &gt; 0) then
+                  if (unorm(k,iEdge) &gt; 0) then
                      h_edge(k,iEdge) =     &amp;
-                          0.5*(h(k,cell1) + h(k,cell2))      &amp;
+                          0.5*(thck_layer(k,cell1) + thck_layer(k,cell2))      &amp;
                           -(dcEdge(iEdge) **2) * (d2fdx2_cell1 + d2fdx2_cell2) / 12.          &amp;
                           -(dcEdge(iEdge) **2) * coef_3rd_order*(d2fdx2_cell1 - d2fdx2_cell2) / 12.
-                  !-- else u &lt;= 0:
+                  !-- else unorm &lt;= 0:
                   else
                      h_edge(k,iEdge) =     &amp;
-                          0.5*(h(k,cell1) + h(k,cell2))      &amp;
+                          0.5*(thck_layer(k,cell1) + thck_layer(k,cell2))      &amp;
                           -(dcEdge(iEdge) **2) * (d2fdx2_cell1 + d2fdx2_cell2) / 12.          &amp;
                           +(dcEdge(iEdge) **2) * coef_3rd_order*(d2fdx2_cell1 - d2fdx2_cell2) / 12.
                   end if
@@ -1012,25 +1011,25 @@
                   !-- if not a boundary cell
                   if(boundaryCell(k,cell1).eq.0.and.boundaryCell(k,cell2).eq.0) then
 
-                     d2fdx2_cell1 = deriv_two(1,1,iEdge) * h(k,cell1)
-                     d2fdx2_cell2 = deriv_two(1,2,iEdge) * h(k,cell2)
+                     d2fdx2_cell1 = deriv_two(1,1,iEdge) * thck_layer(k,cell1)
+                     d2fdx2_cell2 = deriv_two(1,2,iEdge) * thck_layer(k,cell2)
 
                      !-- all edges of cell 1
                      do i=1, grid % nEdgesOnCell % array (cell1)
                              d2fdx2_cell1 = d2fdx2_cell1 + &amp;
-                             deriv_two(i+1,1,iEdge) * h(k,grid % CellsOnCell % array (i,cell1))
+                             deriv_two(i+1,1,iEdge) * thck_layer(k,grid % CellsOnCell % array (i,cell1))
                      end do
 
                      !-- all edges of cell 2
                      do i=1, grid % nEdgesOnCell % array (cell2)
                              d2fdx2_cell2 = d2fdx2_cell2 + &amp;
-                             deriv_two(i+1,2,iEdge) * h(k,grid % CellsOnCell % array (i,cell2))
+                             deriv_two(i+1,2,iEdge) * thck_layer(k,grid % CellsOnCell % array (i,cell2))
                      end do
 
                   endif
 
                   h_edge(k,iEdge) =   &amp;
-                       0.5*(h(k,cell1) + h(k,cell2))      &amp;
+                       0.5*(thck_layer(k,cell1) + thck_layer(k,cell2))      &amp;
                           -(dcEdge(iEdge) **2) * (d2fdx2_cell1 + d2fdx2_cell2) / 12.
 
                end do   ! do k
@@ -1043,7 +1042,7 @@
       ! set the velocity in the nEdges+1 slot to zero, this is a dummy address
       !    used to when reading for edges that do not exist
       !
-      u(:,nEdges+1) = 0.0
+      unorm(:,nEdges+1) = 0.0
 
       !
       ! Compute circulation and relative vorticity at each vertex
@@ -1051,8 +1050,8 @@
 !!!      circulation(:,:) = 0.0
 !!!      do iEdge=1,nEdges
 !!!         do k=1,nVertLevels
-!!!            circulation(k,verticesOnEdge(1,iEdge)) = circulation(k,verticesOnEdge(1,iEdge)) - dcEdge(iEdge) * u(k,iEdge)
-!!!            circulation(k,verticesOnEdge(2,iEdge)) = circulation(k,verticesOnEdge(2,iEdge)) + dcEdge(iEdge) * u(k,iEdge)
+!!!            circulation(k,verticesOnEdge(1,iEdge)) = circulation(k,verticesOnEdge(1,iEdge)) - dcEdge(iEdge) * unorm(k,iEdge)
+!!!            circulation(k,verticesOnEdge(2,iEdge)) = circulation(k,verticesOnEdge(2,iEdge)) + dcEdge(iEdge) * unorm(k,iEdge)
 !!!         end do
 !!!      end do
 !!!      do iVertex=1,nVertices
@@ -1071,12 +1070,12 @@
 !!!         cell2 = cellsOnEdge(2,iEdge)
 !!!         if (cell1 &lt;= nCells) then
 !!!            do k=1,nVertLevels
-!!!              divergence(k,cell1) = divergence(k,cell1) + u(k,iEdge)*dvEdge(iEdge)
+!!!              divergence(k,cell1) = divergence(k,cell1) + unorm(k,iEdge)*dvEdge(iEdge)
 !!!            enddo
 !!!         endif
 !!!         if(cell2 &lt;= nCells) then
 !!!            do k=1,nVertLevels
-!!!              divergence(k,cell2) = divergence(k,cell2) - u(k,iEdge)*dvEdge(iEdge)
+!!!              divergence(k,cell2) = divergence(k,cell2) - unorm(k,iEdge)*dvEdge(iEdge)
 !!!            enddo
 !!!         end if
 !!!      end do
@@ -1095,7 +1094,7 @@
 !!!         do i=1,nEdgesOnCell(iCell)
 !!!            iEdge = edgesOnCell(i,iCell)
 !!!            do k=1,nVertLevels
-!!!               ke(k,iCell) = ke(k,iCell) + 0.25 * dcEdge(iEdge) * dvEdge(iEdge) * u(k,iEdge)**2.0
+!!!               ke(k,iCell) = ke(k,iCell) + 0.25 * dcEdge(iEdge) * dvEdge(iEdge) * unorm(k,iEdge)**2.0
 !!!            end do
 !!!         end do
 !!!         do k=1,nVertLevels
@@ -1111,7 +1110,7 @@
 !!!         do i=1,nEdgesOnEdge(iEdge)
 !!!            eoe = edgesOnEdge(i,iEdge)
 !!!            do k = 1,nVertLevels
-!!!               v(k,iEdge) = v(k,iEdge) + weightsOnEdge(i,iEdge) * u(k, eoe)
+!!!               v(k,iEdge) = v(k,iEdge) + weightsOnEdge(i,iEdge) * unorm(k, eoe)
 !!!            end do
 !!!         end do
 !!!      end do
@@ -1125,7 +1124,7 @@
          do j=1,nEdgesOnEdge(iEdge)
             eoe = edgesOnEdge(j,iEdge)
             do k=1,nVertLevels
-               vh(k,iEdge) = vh(k,iEdge) + weightsOnEdge(j,iEdge) * u(k,eoe) * h_edge(k,eoe)
+               vh(k,iEdge) = vh(k,iEdge) + weightsOnEdge(j,iEdge) * unorm(k,eoe) * h_edge(k,eoe)
             end do
          end do
       end do
@@ -1140,7 +1139,7 @@
          do k=1,nVertLevels
             h_vertex(k,iVertex) = 0.0
             do i=1,grid % vertexDegree
-               h_vertex(k,iVertex) = h_vertex(k,iVertex) + h(k,cellsOnVertex(i,iVertex)) * kiteAreasOnVertex(i,iVertex)
+               h_vertex(k,iVertex) = h_vertex(k,iVertex) + thck_layer(k,cellsOnVertex(i,iVertex)) * kiteAreasOnVertex(i,iVertex)
             end do
             h_vertex(k,iVertex) = h_vertex(k,iVertex) / areaTriangle(iVertex)
 
@@ -1222,7 +1221,7 @@
       !
 !!!      do iEdge = 1,nEdges
 !!!         do k = 1,nVertLevels
-!!!           pv_edge(k,iEdge) = pv_edge(k,iEdge) - config_apvm_upwinding * u(k,iEdge) * dt * gradPVn(k,iEdge)
+!!!           pv_edge(k,iEdge) = pv_edge(k,iEdge) - config_apvm_upwinding * unorm(k,iEdge) * dt * gradPVn(k,iEdge)
 !!!         enddo
 !!!      enddo
 
@@ -1237,11 +1236,11 @@
    !       if(boundaryEdge(k,iEdge).eq.1) then
    !         v(k,iEdge) = 0.0
    !         if(cell1.gt.0) then
-   !            h1 = h(k,cell1)
+   !            h1 = thck_layer(k,cell1)
    !            pv_edge(k,iEdge) = fEdge(iEdge) / h1
    !            h_edge(k,iEdge) = h1
    !         else
-   !            h2 = h(k,cell2)
+   !            h2 = thck_layer(k,cell2)
    !            pv_edge(k,iEdge) = fEdge(iEdge) / h2
    !            h_edge(k,iEdge) = h2
    !         endif
@@ -1280,7 +1279,7 @@
       nVertLevels = grid % nVertLevels
 
       boundaryEdge         =&gt; grid % boundaryEdge % array
-      tend_u               =&gt; tend % u % array
+!!!      tend_u               =&gt; tend % u % array
 
       if(maxval(boundaryEdge).le.0) return
 
@@ -1288,7 +1287,7 @@
         do k = 1,nVertLevels
 
           if(boundaryEdge(k,iEdge).eq.1) then
-             tend_u(k,iEdge) = 0.0
+!!!             tend_u(k,iEdge) = 0.0
           endif
 
         enddo

</font>
</pre>