<p><b>mpetersen@lanl.gov</b> 2012-02-03 11:14:22 -0700 (Fri, 03 Feb 2012)</p><p>BRANCH COMMIT<br>
<br>
This commit includes a small bug fix, but is mostly a way to record<br>
the following testing documentation.<br>
<br>
Ale Split Explicit is working and tested for z-level, z-star, and<br>
weighted z-star for RK4, unsplit_explicit, and split_explicit.  This<br>
was tested using a 40 layer channel domain and the 120km quasi-uniform<br>
global grid with topography.<br>
<br>
Testing:<br>
<br>
All of the following are on the 120km global mesh.<br>
<br>
After 5000 timesteps each 550s, using split explicit, relative error<br>
in global kinetic energy are:<br>
<br>
zlevel on trunk and branch match within 5e-13<br>
all on this branch:<br>
z-level versus z-star match within 3e-12<br>
z-level versus weighted z-star match within 3e-13<br>
<br>
I checked output files and could see that h varies slightly at deeper<br>
levels for z-star, as expected.<br>
<br>
Using a shorter timestep of 50s, unsplit_explicit and split_explicit<br>
match by 6e-14 in global KE after 5000 steps.<br>
<br>
Runs on trunk and branch match nearly to machine precision (&lt;1e-13)<br>
<br>
Between RK4 and split explicit, global kinetic energy differs by 0.02%<br>
after 10,000 timesteps of 50s.  This is for z-level, and applies to<br>
both trunk and branch.<br>
<br>
(These runs are p71l-p71w)<br>
<br>
**********<br>
<br>
My preliminary tests show that I can run with isopycnal coordinates<br>
and split explicit.  In order to do this, I need to use the grad p +<br>
grad z formulation, not grad M.  Splitting with grad M involves<br>
different barotropic terms.<br>
<br>
To run isopycnal with split_explicit you will need to add the flag:<br>
&amp;grid<br>
   config_vert_grid_type = ...<br>
   config_pressure_type = 'pressure'<br>
<br>
<br>
The oscillations we saw with RK and grad p do not appear.  There are a<br>
few wiggles, and then the KE settles down and follows the RK with grad<br>
M curve.<br>
<br>
I can get RK4 to a max timestep of 300s and split explicit to 1600s,<br>
so it seems to work, though I would like to see longer timesteps.<br>
</p><hr noshade><pre><font color="gray">Modified: branches/ocean_projects/ale_split_exp/src/core_ocean/mpas_ocn_tendency.F
===================================================================
--- branches/ocean_projects/ale_split_exp/src/core_ocean/mpas_ocn_tendency.F        2012-02-03 17:02:23 UTC (rev 1460)
+++ branches/ocean_projects/ale_split_exp/src/core_ocean/mpas_ocn_tendency.F        2012-02-03 18:14:22 UTC (rev 1461)
@@ -880,7 +880,7 @@
 
       implicit none
 
-      type (state_type), intent(in) :: s1
+      type (state_type), intent(inout) :: s1
       type (state_type), intent(inout) :: s2
       type (mesh_type), intent(in) :: grid
 

</font>
</pre>