<p><b>ringler@lanl.gov</b> 2011-02-28 11:45:22 -0700 (Mon, 28 Feb 2011)</p><p><br>
updated implementation of APVM by:<br>
        1. changing the hardwiring of 0.5 upwinding to the config_apvm_upwinding parameter<br>
        2. added config_apvm_upwinding to Registry, default 0.5<br>
        3. add config_apvm_upwinding to namelist.input.hyd_atmos, default 0.5<br>
<br>
Also changed s_new in advection update routines to have intent(inout) (from intent(out))<br>
to be consistent with what is on the trunk and to prevent compile-time warning messages.<br>
</p><hr noshade><pre><font color="gray">Modified: branches/mpas_cam_coupling/namelist.input.hyd_atmos
===================================================================
--- branches/mpas_cam_coupling/namelist.input.hyd_atmos        2011-02-25 00:05:27 UTC (rev 746)
+++ branches/mpas_cam_coupling/namelist.input.hyd_atmos        2011-02-28 18:45:22 UTC (rev 747)
@@ -14,6 +14,7 @@
config_theta_adv_order = 2
config_scalar_adv_order = 2
config_mp_physics = 0
+ config_apvm_upwinding = 0.5
/
&io
Modified: branches/mpas_cam_coupling/src/core_hyd_atmos/Registry
===================================================================
--- branches/mpas_cam_coupling/src/core_hyd_atmos/Registry        2011-02-25 00:05:27 UTC (rev 746)
+++ branches/mpas_cam_coupling/src/core_hyd_atmos/Registry        2011-02-28 18:45:22 UTC (rev 747)
@@ -18,6 +18,7 @@
namelist logical sw_model config_positive_definite false
namelist logical sw_model config_monotonic true
namelist integer sw_model config_mp_physics 0
+namelist real sw_model config_apvm_upwinding 0.5
namelist character io config_input_name grid.nc
namelist character io config_output_name output.nc
namelist character io config_restart_name restart.nc
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        2011-02-25 00:05:27 UTC (rev 746)
+++ branches/mpas_cam_coupling/src/core_hyd_atmos/module_time_integration.F        2011-02-28 18:45:22 UTC (rev 747)
@@ -1306,7 +1306,7 @@
type (grid_state), intent(in) :: tend
type (grid_state), intent(in) :: s_old
- type (grid_state), intent(out) :: s_new
+ type (grid_state), intent(inout) :: s_new
type (grid_meta), intent(in) :: grid
real (kind=RKIND) :: dt
@@ -1505,7 +1505,7 @@
type (grid_state), intent(in) :: tend
type (grid_state), intent(in) :: s_old
- type (grid_state), intent(out) :: s_new
+ type (grid_state), intent(inout) :: s_new
type (grid_meta), intent(in) :: grid
integer, intent(in) :: rk_step, rk_order
real (kind=RKIND), intent(in) :: dt
@@ -2037,7 +2037,7 @@
!
do iEdge = 1,nEdges
do k = 1,nVertLevels
- pv_edge(k,iEdge) = pv_edge(k,iEdge) - 0.5 * v(k,iEdge) * dt * gradPVt(k,iEdge)
+ pv_edge(k,iEdge) = pv_edge(k,iEdge) - config_apvm_upwinding * v(k,iEdge) * dt * gradPVt(k,iEdge)
end do
end do
@@ -2076,7 +2076,7 @@
!
do iEdge = 1,nEdges
do k = 1,nVertLevels
- pv_edge(k,iEdge) = pv_edge(k,iEdge) - 0.5 * u(k,iEdge) * dt * gradPVn(k,iEdge)
+ pv_edge(k,iEdge) = pv_edge(k,iEdge) - config_apvm_upwinding * u(k,iEdge) * dt * gradPVn(k,iEdge)
end do
end do
</font>
</pre>