<p><b>duda</b> 2010-03-17 14:33:00 -0600 (Wed, 17 Mar 2010)</p><p>BRANCH COMMIT<br>
<br>
Use vector reconstruction module from operators in <br>
hydrostatic atmosphere core.<br>
<br>
M    src/core_hyd_atmos/mpas_interface.F<br>
M    src/core_hyd_atmos/Registry<br>
M    src/core_hyd_atmos/module_time_integration.F<br>
M    src/core_hyd_atmos/Makefile<br>
</p><hr noshade><pre><font color="gray">Modified: branches/mpas_cam_coupling/src/core_hyd_atmos/Makefile
===================================================================
--- branches/mpas_cam_coupling/src/core_hyd_atmos/Makefile        2010-03-17 20:14:01 UTC (rev 143)
+++ branches/mpas_cam_coupling/src/core_hyd_atmos/Makefile        2010-03-17 20:33:00 UTC (rev 144)
@@ -24,5 +24,5 @@
 .F.o:
         $(RM) $@ $*.mod
         $(CPP) $(CPPFLAGS) $(CPPINCLUDES) $&lt; &gt; $*.f90
-        $(FC) $(FFLAGS) -c $*.f90 $(FCINCLUDES) -I../framework
+        $(FC) $(FFLAGS) -c $*.f90 $(FCINCLUDES) -I../framework -I../operators
         $(RM) $*.f90

Modified: branches/mpas_cam_coupling/src/core_hyd_atmos/Registry
===================================================================
--- branches/mpas_cam_coupling/src/core_hyd_atmos/Registry        2010-03-17 20:14:01 UTC (rev 143)
+++ branches/mpas_cam_coupling/src/core_hyd_atmos/Registry        2010-03-17 20:33:00 UTC (rev 144)
@@ -33,6 +33,7 @@
 dim maxEdges2 maxEdges2
 dim nVertices nVertices
 dim TWO 2
+dim R3 3
 dim vertexDegree vertexDegree
 dim FIFTEEN 15
 dim TWENTYONE 21
@@ -123,6 +124,9 @@
 var real    ke ( nVertLevels nCells Time ) o ke - -
 var real    pv_vertex ( nVertLevels nVertices Time ) o pv_vertex - -
 var real    pv_cell ( nVertLevels nCells Time ) o pv_cell - -
+var real    uReconstructX ( nVertLevels nCells Time ) o uReconstructX - -
+var real    uReconstructY ( nVertLevels nCells Time ) o uReconstructY - -
+var real    uReconstructZ ( nVertLevels nCells Time ) o uReconstructZ - -
 
 # Other diagnostic variables: neither read nor written to any files
 var real    vh ( nVertLevels nEdges Time ) - vh - -
@@ -152,3 +156,8 @@
 var real    deriv_two ( FIFTEEN TWO nEdges ) o deriv_two - -
 var integer advCells ( TWENTYONE nCells ) - advCells - -
 
+# Arrays required for reconstruction of velocity field
+var real    matrix_reconstruct ( maxEdges maxEdges nCells ) - matrix_reconstruct - -
+var real    normal ( R3 maxEdges nCells ) - normal - -
+var real    rbf_value ( maxEdges nCells ) - rbf_value - -
+

Modified: branches/mpas_cam_coupling/src/core_hyd_atmos/module_time_integration.F
===================================================================
--- branches/mpas_cam_coupling/src/core_hyd_atmos/module_time_integration.F        2010-03-17 20:14:01 UTC (rev 143)
+++ branches/mpas_cam_coupling/src/core_hyd_atmos/module_time_integration.F        2010-03-17 20:33:00 UTC (rev 144)
@@ -4,6 +4,7 @@
    use configure
    use constants
    use dmpar
+   use vector_reconstruction
 
 
    contains
@@ -314,6 +315,17 @@
       ! END RK loop 
       !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 
 
+
+      !
+      ! Compute full velocity vectors at cell centers
+      !
+      block =&gt; domain % blocklist
+      do while (associated(block))
+         call reconstruct(block % time_levs(2) % state, block % mesh)
+         block =&gt; block % next
+      end do
+
+
       if(debug) write(0,*) ' rk step complete - mass diagnostics '
 
       if(debug .or. debug_mass_conservation) then

Modified: branches/mpas_cam_coupling/src/core_hyd_atmos/mpas_interface.F
===================================================================
--- branches/mpas_cam_coupling/src/core_hyd_atmos/mpas_interface.F        2010-03-17 20:14:01 UTC (rev 143)
+++ branches/mpas_cam_coupling/src/core_hyd_atmos/mpas_interface.F        2010-03-17 20:33:00 UTC (rev 144)
@@ -28,6 +28,8 @@
    call compute_state_diagnostics(block % time_levs(1) % state, mesh)
    call compute_solve_diagnostics(dt, block % time_levs(1) % state, mesh)
    call initialize_advection_rk(mesh)
+   call init_reconstruct(mesh)
+   call reconstruct(block % time_levs(1) % state, block % mesh)
 
 end subroutine mpas_init
 

</font>
</pre>