<p><b>duda</b> 2009-10-29 11:01:25 -0600 (Thu, 29 Oct 2009)</p><p>Minor changes to no-slip boundary condition: for boundary edges, just <br>
set tendencies for normal velocity to zero in enforce_uBC() and set <br>
tangential velocities to zero in compute_solve_diagnostics(). It is<br>
assumed that velocities will initially be zero for boundary edges.<br>
<br>
M    src/module_time_integration.F<br>
</p><hr noshade><pre><font color="gray">Modified: trunk/swmodel/src/module_time_integration.F
===================================================================
--- trunk/swmodel/src/module_time_integration.F        2009-10-27 23:35:15 UTC (rev 68)
+++ trunk/swmodel/src/module_time_integration.F        2009-10-29 17:01:25 UTC (rev 69)
@@ -124,7 +124,7 @@
         do while (associated(block))
            call compute_tend(block % intermediate_step(TEND), block % intermediate_step(PROVIS), block % mesh)
            call compute_scalar_tend(block % intermediate_step(TEND), block % intermediate_step(PROVIS), block % mesh)
-           call enforce_uBC(block % intermediate_step(TEND), block % intermediate_step(PROVIS), block % mesh)
+           call enforce_uBC(block % intermediate_step(TEND), block % mesh)
            block =&gt; block % next
         end do
 
@@ -212,7 +212,6 @@
          end if
 
          call compute_solve_diagnostics(dt, block % time_levs(2) % state, block % mesh)
-         call enforce_uBC(block % time_levs(2) % state, block % time_levs(1) % state, block % mesh)
 
          block =&gt; block % next
       end do
@@ -721,6 +720,7 @@
              if(cell1.gt.0) h1 = h(k,cell1)
              if(cell2.gt.0) h2 = h(k,cell2)
              pv_edge(k,iEdge) = fEdge(iEdge) / ( max(h1,h2) )
+             v(k,iEdge) = 0.0
            endif
          enddo
       enddo
@@ -729,26 +729,24 @@
 
    end subroutine compute_solve_diagnostics
 
-   subroutine enforce_uBC(tend, s, grid)
+
+   subroutine enforce_uBC(tend, grid)
    !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    ! Enforce any boundary conditions on the normal velocity at each edge
    !
    ! Input: grid - grid metadata
    !
    ! Output: tend_u set to zero at uBC == 1 locations
-   !         u      set to zero at uBC == 1 locations
-   !         v      set to zero at uBC == 1 locations
    !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 
 
       implicit none
 
       type (grid_state), intent(inout) :: tend
-      type (grid_state), intent(inout) :: s
       type (grid_meta), intent(in) :: grid
 
       integer, dimension(:,:), pointer :: uBC
-      real (kind=RKIND), dimension(:,:), pointer :: u, tend_u, v, tend_v
+      real (kind=RKIND), dimension(:,:), pointer :: tend_u
       integer :: nCells, nEdges, nVertices, nVertLevels
       integer :: iEdge, k
 
@@ -758,10 +756,7 @@
       nVertLevels = grid % nVertLevels
 
       uBC         =&gt; grid % uBC % array
-      u           =&gt; s % u % array
-      v           =&gt; s % v % array
       tend_u      =&gt; tend % u % array
-      tend_v      =&gt; tend % v % array
 
       if(maxval(uBC).le.0) return
 
@@ -769,10 +764,7 @@
         do k = 1,nVertLevels
 
           if(uBC(k,iEdge).eq.1) then
-             u(k,iEdge) = 0.0
-             v(k,iEdge) = 0.0
              tend_u(k,iEdge) = 0.0
-             tend_v(k,iEdge) = 0.0
           endif
 
         enddo

</font>
</pre>