<p><b>laura@ucar.edu</b> 2012-01-03 14:27:36 -0700 (Tue, 03 Jan 2012)</p><p>added add_t_ti as argument to mpas_timekeeping. removed the dmpar call for the surface pressure in the subroutine srk3. modified the call to the subroutine physics_addtend in subroutine srk3. removed the calculation of the surface pressure in the subroutine recover_large_step_variables<br>
</p><hr noshade><pre><font color="gray">Modified: branches/atmos_physics/src/core_nhyd_atmos/module_time_integration.F
===================================================================
--- branches/atmos_physics/src/core_nhyd_atmos/module_time_integration.F        2012-01-03 21:22:35 UTC (rev 1282)
+++ branches/atmos_physics/src/core_nhyd_atmos/module_time_integration.F        2012-01-03 21:27:36 UTC (rev 1283)
@@ -7,7 +7,7 @@
use vector_reconstruction
! Added only clause to keep xlf90 from getting confused from the overloaded abs intrinsic in mpas_timekeeping
use mpas_timekeeping, only: MPAS_Time_type, MPAS_TimeInterval_type, &
- MPAS_setTime, MPAS_setTimeInterval, MPAS_getTime, operator(+)
+ MPAS_setTime, MPAS_setTimeInterval, MPAS_getTime, operator(+), add_t_ti
#ifdef DO_PHYSICS
use module_driver_microphysics
@@ -145,10 +145,6 @@
call dmpar_exch_halo_field2dReal(domain % dminfo, block % diag % rtheta_p % array(:,:), &
block % mesh % nVertLevels, block % mesh % nCells, &
block % parinfo % cellsToSend, block % parinfo % cellsToRecv)
-!surface_pressure
- call dmpar_exch_halo_field1dReal(domain % dminfo, block % diag % surface_pressure % array(:), &
- block % mesh % nCells, &
- block % parinfo % cellsToSend, block % parinfo % cellsToRecv)
block => block % next
end do
@@ -192,7 +188,7 @@
block => domain % blocklist
do while (associated(block))
call physics_addtend( domain % dminfo , block % parinfo % cellsToSend, block % parinfo % cellsToRecv, &
- block % mesh , block % state % time_levs(2) % state, block % diag, block % tend, &
+ block % mesh , block % state % time_levs(1) % state, block % diag, block % tend, &
block % tend_physics , block % state % time_levs(2) % state % rho_zz % array(:,:), &
block % diag % rho_edge % array(:,:) )
block => block % next
@@ -1010,7 +1006,7 @@
rho_pp, rho_zz, rho_base, ruAvg, ru_save, ru_p, u, ru, &
exner, exner_base, rtheta_base, pressure_p, &
zz, theta_m, pressure_b, qvapor
- real (kind=RKIND), dimension(:), pointer :: fzm, fzp, dvEdge, AreaCell, rdzw, surface_pressure
+ real (kind=RKIND), dimension(:), pointer :: fzm, fzp, dvEdge, AreaCell
real (kind=RKIND), dimension(:,:,:), pointer :: zb, zb3
integer, dimension(:,:), pointer :: cellsOnEdge
@@ -1053,9 +1049,7 @@
pressure_p => diag % pressure_p % array
pressure_b => diag % pressure_base % array
- surface_pressure => diag % surface_pressure % array
- rdzw => grid % rdzw % array
zz => grid % zz % array
zb => grid % zb % array
zb3 => grid % zb3 % array
@@ -1130,13 +1124,6 @@
* (exner(k,iCell)-exner_base(k,iCell)))
end do
- !calculation of the surface pressure:
- surface_pressure(iCell) = 0.5*gravity/rdzw(1) &
- * (1.25* rho_zz(1,iCell) * (1. + qvapor(1,iCell)) &
- - 0.25* rho_zz(2,iCell) * (1. + qvapor(2,iCell)))
- surface_pressure(iCell) = surface_pressure(iCell) + pressure_p(1,iCell) + pressure_b(1,iCell)
-
-
end do
! recover time-averaged ruAvg on all edges of owned cells (for upcoming scalar transport).
@@ -1872,7 +1859,7 @@
real (kind=RKIND) :: r_earth
real (kind=RKIND), dimension(:,:), pointer :: ur_cell, vr_cell
- real (kind=RKIND), parameter :: c_s = 0.25
+ real (kind=RKIND), parameter :: c_s = 0.125
real (kind=RKIND), dimension( grid % nVertLevels ) :: d_diag, d_off_diag, flux_arr
real (kind=RKIND), dimension(:,:), pointer :: defc_a, defc_b
logical :: delsq_horiz_mixing, newpx
</font>
</pre>