<p><b>mpetersen@lanl.gov</b> 2011-08-29 16:49:39 -0600 (Mon, 29 Aug 2011)</p><p>Added a new flag:<br>
config_btr_flux_coef sets the forward weighting of velocity in the SSH computation<br>
 config_btr_flux_coef=  1     flux = uBtrNew*H<br>
 config_btr_flux_coef=0.5     flux = 1/2*(uBtrNew+uBtrOld)*H<br>
 config_btr_flux_coef=  0     flux = uBtrOld*H<br>
</p><hr noshade><pre><font color="gray">Modified: branches/ocean_projects/timesplitting_mrp/namelist.input.ocean
===================================================================
--- branches/ocean_projects/timesplitting_mrp/namelist.input.ocean        2011-08-29 22:03:13 UTC (rev 959)
+++ branches/ocean_projects/timesplitting_mrp/namelist.input.ocean        2011-08-29 22:49:39 UTC (rev 960)
@@ -27,9 +27,10 @@
    config_n_btr_cor_iter = 2
    config_compute_tr_midstage = .true.
    config_u_correction = .true.
-   config_filter_btr_mode false
-   config_btr_mom_decay  =      .false.
+   config_filter_btr_mode = .false.
+   config_btr_mom_decay  = .false.
    config_btr_mom_decay_time =   3600.0
+   config_btr_flux_coef = 1.0
    config_btr_mom_eddy_visc2 =   0.0
 /
 &amp;hmix

Modified: branches/ocean_projects/timesplitting_mrp/src/core_ocean/Registry
===================================================================
--- branches/ocean_projects/timesplitting_mrp/src/core_ocean/Registry        2011-08-29 22:03:13 UTC (rev 959)
+++ branches/ocean_projects/timesplitting_mrp/src/core_ocean/Registry        2011-08-29 22:49:39 UTC (rev 960)
@@ -28,6 +28,7 @@
 namelist logical   timestep_higdon config_filter_btr_mode false
 namelist logical   timestep_higdon config_btr_mom_decay         false 
 namelist real      timestep_higdon config_btr_mom_decay_time    3600.0
+namelist real      timestep_higdon config_btr_flux_coef         1.0
 namelist real      timestep_higdon config_btr_mom_eddy_visc2    0.0
 namelist logical   sw_model config_h_ScaleWithMesh     false
 namelist real      hmix     config_h_mom_eddy_visc2     0.0

Modified: branches/ocean_projects/timesplitting_mrp/src/core_ocean/module_time_integration.F
===================================================================
--- branches/ocean_projects/timesplitting_mrp/src/core_ocean/module_time_integration.F        2011-08-29 22:03:13 UTC (rev 959)
+++ branches/ocean_projects/timesplitting_mrp/src/core_ocean/module_time_integration.F        2011-08-29 22:49:39 UTC (rev 960)
@@ -200,12 +200,6 @@
               provis % u % array(:,:)       = block % state % time_levs(1) % state % u % array(:,:)  &amp;
                                          + rk_substep_weights(rk_step) * block % tend % u % array(:,:)
 
-          !  mrp 110718 filter btr mode out of u
-           if (config_rk_filter_btr_mode) then
-       !        call filter_btr_mode_u(provis, block % mesh)
-               !block % tend % h % array(:,:) = 0.0 ! I should not need this
-           endif
-
               provis % h % array(:,:)       = block % state % time_levs(1) % state % h % array(:,:)  &amp;
                                          + rk_substep_weights(rk_step) * block % tend % h % array(:,:)
               do iCell=1,block % mesh % nCells
@@ -236,11 +230,6 @@
         do while (associated(block))
            block % state % time_levs(2) % state % u % array(:,:) = block % state % time_levs(2) % state % u % array(:,:) &amp;
                                    + rk_weights(rk_step) * block % tend % u % array(:,:) 
-          !  mrp 110718 filter btr mode out of u
-           if (config_rk_filter_btr_mode) then
-      !         call filter_btr_mode_u(block % state % time_levs(2) % state, block % mesh)
-               !block % tend % h % array(:,:) = 0.0 ! I should not need this
-           endif
 
            block % state % time_levs(2) % state % h % array(:,:) = block % state % time_levs(2) % state % h % array(:,:) &amp;
                                    + rk_weights(rk_step) * block % tend % h % array(:,:) 
@@ -770,7 +759,10 @@
 
            block % tend % ssh % array(:) = 0.0
 
-           ! Flux = 1/2*(uBtrNew+uBtrOld)*H  where H it total thickness
+           ! config_btr_flux_coef sets the forward weighting of velocity in the SSH computation
+           ! config_btr_flux_coef=  1     flux = uBtrNew*H
+           ! config_btr_flux_coef=0.5     flux = 1/2*(uBtrNew+uBtrOld)*H
+           ! config_btr_flux_coef=  0     flux = uBtrOld*H
            do iEdge=1,block % mesh % nEdges
               cell1 = block % mesh % cellsOnEdge % array(1,iEdge)
               cell2 = block % mesh % cellsOnEdge % array(2,iEdge)
@@ -780,8 +772,10 @@
                    + block % state % time_levs(oldBtrSubcycleTime) % state % sshSubcycle % array(cell2) )
               hSum = sum(block % mesh % hZLevel % array (1:block % mesh % maxLevelEdgeTop % array(iEdge)))
 
-               flux = 0.5*( block % state % time_levs(oldBtrSubcycleTime) % state % uBtrSubcycle % array(iEdge) &amp;
-                           +block % state % time_levs(newBtrSubcycleTime) % state % uBtrSubcycle % array(iEdge)) &amp;
+              flux = ((1.0-config_btr_flux_coef) &amp; 
+                        * block % state % time_levs(oldBtrSubcycleTime) % state % uBtrSubcycle % array(iEdge) &amp;
+                       + config_btr_flux_coef &amp;
+                        * block % state % time_levs(newBtrSubcycleTime) % state % uBtrSubcycle % array(iEdge)) &amp;
                     * block % mesh % dvEdge % array(iEdge) &amp;
                     * (sshEdge + hSum)
 

</font>
</pre>