<p><b>mperego@fsu.edu</b> 2013-04-16 16:59:25 -0600 (Tue, 16 Apr 2013)</p><p>Branch Land Ice<br>
Modify interface with lifev to allow spherical geometries. <br>
Parameters &quot;maxEdges&quot;, &quot;nEdgesOnCell&quot; and &quot;radius&quot; are now passed to velocity solver.<br>
</p><hr noshade><pre><font color="gray">Modified: branches/land_ice_projects/implement_core/src/core_land_ice/mpas_land_ice_lifev.F
===================================================================
--- branches/land_ice_projects/implement_core/src/core_land_ice/mpas_land_ice_lifev.F        2013-04-16 21:39:41 UTC (rev 2759)
+++ branches/land_ice_projects/implement_core/src/core_land_ice/mpas_land_ice_lifev.F        2013-04-16 22:59:25 UTC (rev 2760)
@@ -278,14 +278,16 @@
       !
       !-----------------------------------------------------------------
 
-      integer :: nCells, nEdges, nVertices, nCellsSolve, nEdgesSolve, nVerticesSolve, nVertLevels
+      integer :: nCells, nEdges, nVertices, nCellsSolve, nEdgesSolve, nVerticesSolve, nVertLevels, maxNEdgesOnCell 
 
       integer, dimension(:,:), pointer :: cellsOnEdge, cellsOnVertex, verticesOnCell, verticesOnEdge
 
-      integer, dimension(:), pointer :: indexToCellID
+      integer, dimension(:), pointer :: indexToCellID, nEdgesOnCell
 
       real (kind=RKIND), dimension(:), pointer :: xCell, yCell, zCell, areaTriangle
 
+      real (kind=RKIND) :: radius
+
       ! halo exchange arrays
       integer, dimension(:), pointer :: sendCellsArray, &amp;
                                      recvCellsArray, &amp;
@@ -309,16 +311,20 @@
       nEdges = block % mesh % nEdges
       nVertices = block % mesh % nVertices
       nVertLevels = block % mesh % nVertLevels
+      
+      maxNEdgesOnCell = block % mesh % maxEdges;
 
       cellsOnEdge =&gt; block % mesh % cellsOnEdge % array
       cellsOnVertex =&gt; block % mesh % cellsOnVertex % array
       verticesOnCell =&gt; block % mesh % verticesOnCell % array
       verticesOnEdge =&gt; block % mesh % verticesOnEdge % array
       indexToCellID =&gt; block % mesh % indexToCellID % array
+      nEdgesOnCell =&gt; block % mesh % nEdgesOnCell % array
 
       xCell =&gt; block % mesh % xCell % array
       yCell =&gt; block % mesh % yCell % array
       zCell =&gt; block % mesh % zCell % array
+      radius = block % mesh % sphere_radius
 
       areaTriangle =&gt; block % mesh % areaTriangle % array
 
@@ -334,11 +340,11 @@
 #ifdef USE_LIFEV
       ! These calls are needed for using any of the LifeV velocity solvers
 
-      !zCell is supposed to be zero for L1L2 and FO solvers
+      !zCell is supposed to be zero when working on planar geometries (radius = 0) 
       !nVertLevels should be equal to nVertLevelsSolve (no split the domain in the vertical direction)
       call mpas_timer_start(&quot;velocity_solver_set_grid_data&quot;)
-      call velocity_solver_set_grid_data(nCells, nEdges, nVertices, nVertLevels, nCellsSolve, nEdgesSolve, nVerticesSolve, &amp;
-        cellsOnEdge, cellsOnVertex, verticesOnCell, verticesOnEdge, indexToCellID, xCell, yCell, zCell, areaTriangle, &amp;
+      call velocity_solver_set_grid_data(nCells, nEdges, nVertices, nVertLevels, nCellsSolve, nEdgesSolve, nVerticesSolve, maxNEdgesOnCell, radius, &amp;
+        cellsOnEdge, cellsOnVertex, verticesOnCell, verticesOnEdge, nEdgesOnCell, indexToCellID, xCell, yCell, zCell, areaTriangle, &amp;
         sendCellsArray, recvCellsArray, sendEdgesArray, recvEdgesArray, sendVerticesArray, recvVerticesArray)
       call mpas_timer_stop(&quot;velocity_solver_set_grid_data&quot;)
 #else

</font>
</pre>