Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

189 h to m #196

Merged
merged 6 commits into from
Jul 28, 2015
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion config_src/solo_driver/MOM_driver.F90
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ program MOM_main
use MOM_error_handler, only : callTree_enter, callTree_leave, callTree_waypoint
use MOM_file_parser, only : read_param, get_param, log_param, log_version, param_file_type
use MOM_file_parser, only : close_param_file
use MOM_forcing_type, only : forcing, forcing_diagnostics, mech_forcing_diags
use MOM_forcing_type, only : forcing, forcing_diagnostics, mech_forcing_diags, MOM_forcing_chksum
use MOM_get_input, only : directories
use MOM_grid, only : ocean_grid_type
use MOM_io, only : file_exists, open_file, close_file
Expand Down Expand Up @@ -385,6 +385,10 @@ program MOM_main
! Set the forcing for the next steps.
call set_forcing(state, fluxes, Time, Time_step_ocean, grid, &
surface_forcing_CSp)
if (MOM_CSp%debug) then
call MOM_forcing_chksum("After set forcing", fluxes, grid, haloshift=0)
endif

if (use_ice_shelf) then
call shelf_calc_flux(state, fluxes, Time, time_step, ice_shelf_CSp)
!###IS call add_shelf_flux_forcing(fluxes, ice_shelf_CSp)
Expand Down
4 changes: 2 additions & 2 deletions src/ALE/MOM_ALE.F90
Original file line number Diff line number Diff line change
Expand Up @@ -336,7 +336,7 @@ subroutine pressure_gradient_plm( CS, S_t, S_b, T_t, T_b, G, tv, h )
do j = G%jsc,G%jec+1
do i = G%isc,G%iec+1
! Build current grid
hTmp(:) = h(i,j,:)
hTmp(:) = h(i,j,:)*G%H_to_m
tmp(:) = tv%S(i,j,:)
! Reconstruct salinity profile
ppoly_linear_E = 0.0
Expand Down Expand Up @@ -412,7 +412,7 @@ subroutine pressure_gradient_ppm( CS, S_t, S_b, T_t, T_b, G, tv, h )
do i = G%isc,G%iec+1

! Build current grid
hTmp(:) = h(i,j,:)
hTmp(:) = h(i,j,:) * G%H_to_m
tmp(:) = tv%S(i,j,:)

! Reconstruct salinity profile
Expand Down
8 changes: 4 additions & 4 deletions src/ALE/MOM_regridding.F90
Original file line number Diff line number Diff line change
Expand Up @@ -398,7 +398,7 @@ subroutine buildGridZstar( CS, G, h, dzInterface )
endif

! Local depth (G%bathyT is positive)
nominalDepth = G%bathyT(i,j)
nominalDepth = G%bathyT(i,j)*G%m_to_H

! Determine water column thickness
totalThickness = 0.0
Expand Down Expand Up @@ -519,7 +519,7 @@ subroutine buildGridSigma( CS, G, h, dzInterface )
end do

! The rest of the model defines grids integrating up from the bottom
nominalDepth = G%bathyT(i,j)
nominalDepth = G%bathyT(i,j)*G%m_to_H
zOld(nz+1) = - nominalDepth
zNew(nz+1) = - nominalDepth
do k = nz,1,-1
Expand Down Expand Up @@ -730,7 +730,7 @@ subroutine buildGridRho( G, h, tv, dzInterface, remapCS, CS )
end do ! end regridding iterations

! Local depth (G%bathyT is positive)
nominalDepth = G%bathyT(i,j)
nominalDepth = G%bathyT(i,j)*G%m_to_H

! The rest of the model defines grids integrating up from the bottom
totalThickness = 0.0
Expand Down Expand Up @@ -828,7 +828,7 @@ subroutine build_grid_arbitrary( G, h, dzInterface, h_new, CS )
do i = G%isc-1,G%iec+1

! Local depth
local_depth = G%bathyT(i,j)
local_depth = G%bathyT(i,j)*G%m_to_H

! Determine water column height
total_height = 0.0
Expand Down
31 changes: 17 additions & 14 deletions src/core/MOM.F90
Original file line number Diff line number Diff line change
Expand Up @@ -352,6 +352,7 @@ module MOM
use MOM_error_handler, only : callTree_enter, callTree_leave, callTree_waypoint
use MOM_file_parser, only : read_param, get_param, log_version, param_file_type
use MOM_fixed_initialization, only : MOM_initialize_fixed
use MOM_forcing_type, only : MOM_forcing_chksum
use MOM_get_input, only : Get_MOM_Input, directories
use MOM_io, only : MOM_io_init, vardesc
use MOM_obsolete_params, only : find_obsolete_params
Expand Down Expand Up @@ -850,6 +851,7 @@ subroutine step_MOM(fluxes, state, Time_start, time_interval, CS)

if (CS%debug) then
call MOM_state_chksum("Before steps ", u, v, h, CS%uh, CS%vh, G)
call MOM_forcing_chksum("Before steps", fluxes, G, haloshift=0)
call check_redundant("Before steps ", u, v, G)
endif

Expand Down Expand Up @@ -1172,9 +1174,9 @@ subroutine step_MOM(fluxes, state, Time_start, time_interval, CS)
if (CS%debug) then
call uchksum(u,"Pre-advection u", G, haloshift=2)
call vchksum(v,"Pre-advection v", G, haloshift=2)
call hchksum(h,"Pre-advection h", G, haloshift=1)
call uchksum(CS%uhtr,"Pre-advection uhtr", G, haloshift=0)
call vchksum(CS%vhtr,"Pre-advection vhtr", G, haloshift=0)
call hchksum(h*G%H_to_m,"Pre-advection h", G, haloshift=1)
call uchksum(CS%uhtr*G%H_to_m,"Pre-advection uhtr", G, haloshift=0)
call vchksum(CS%vhtr*G%H_to_m,"Pre-advection vhtr", G, haloshift=0)
! call MOM_state_chksum("Pre-advection ", u, v, &
! h, CS%uhtr, CS%vhtr, G, haloshift=1)
if (associated(CS%tv%T)) call hchksum(CS%tv%T, "Pre-advection T", G, haloshift=1)
Expand Down Expand Up @@ -1224,12 +1226,13 @@ subroutine step_MOM(fluxes, state, Time_start, time_interval, CS)
if (CS%debug) then
call uchksum(u,"Pre-diabatic u", G, haloshift=2)
call vchksum(v,"Pre-diabatic v", G, haloshift=2)
call hchksum(h,"Pre-diabatic h", G, haloshift=1)
call uchksum(CS%uhtr,"Pre-diabatic uh", G, haloshift=0)
call vchksum(CS%vhtr,"Pre-diabatic vh", G, haloshift=0)
call hchksum(h*G%H_to_m,"Pre-diabatic h", G, haloshift=1)
call uchksum(CS%uhtr*G%H_to_m,"Pre-diabatic uh", G, haloshift=0)
call vchksum(CS%vhtr*G%H_to_m,"Pre-diabatic vh", G, haloshift=0)
! call MOM_state_chksum("Pre-diabatic ",u, v, h, CS%uhtr, CS%vhtr, G)
call MOM_thermo_chksum("Pre-diabatic ", CS%tv, G,haloshift=0)
call check_redundant("Pre-diabatic ", u, v, G)
call MOM_forcing_chksum("Pre-diabatic", fluxes, G, haloshift=0)
endif

if (CS%split .and. CS%legacy_split) then ! The dt here is correct. -RWH
Expand Down Expand Up @@ -1271,9 +1274,9 @@ subroutine step_MOM(fluxes, state, Time_start, time_interval, CS)
if (CS%debug) then
call uchksum(u,"Post-diabatic u", G, haloshift=2)
call vchksum(v,"Post-diabatic v", G, haloshift=2)
call hchksum(h,"Post-diabatic h", G, haloshift=1)
call uchksum(CS%uhtr,"Post-diabatic uh", G, haloshift=0)
call vchksum(CS%vhtr,"Post-diabatic vh", G, haloshift=0)
call hchksum(h*G%H_to_m,"Post-diabatic h", G, haloshift=1)
call uchksum(CS%uhtr*G%H_to_m,"Post-diabatic uh", G, haloshift=0)
call vchksum(CS%vhtr*G%H_to_m,"Post-diabatic vh", G, haloshift=0)
! call MOM_state_chksum("Post-diabatic ", u, v, &
! h, CS%uhtr, CS%vhtr, G, haloshift=1)
if (associated(CS%tv%T)) call hchksum(CS%tv%T, "Post-diabatic T", G, haloshift=1)
Expand Down Expand Up @@ -1985,7 +1988,7 @@ subroutine initialize_MOM(Time, param_file, dirs, CS, Time_in)
if (CS%debug) then
call uchksum(CS%u,"Pre initialize_ALE u", G, haloshift=1)
call vchksum(CS%v,"Pre initialize_ALE v", G, haloshift=1)
call hchksum(CS%h,"Pre initialize_ALE h", G, haloshift=1)
call hchksum(CS%h*G%H_to_m,"Pre initialize_ALE h", G, haloshift=1)
endif
if (.not. query_initialized(CS%h,"h",CS%restart_CSp)) then
! This is a not a restart so we do the following...
Expand All @@ -1996,7 +1999,7 @@ subroutine initialize_MOM(Time, param_file, dirs, CS, Time_in)
if (CS%debug) then
call uchksum(CS%u,"Post initialize_ALE u", G, haloshift=1)
call vchksum(CS%v,"Post initialize_ALE v", G, haloshift=1)
call hchksum(CS%h, "Post initialize_ALE h", G, haloshift=1)
call hchksum(CS%h*G%H_to_m, "Post initialize_ALE h", G, haloshift=1)
endif
endif

Expand Down Expand Up @@ -2649,8 +2652,8 @@ subroutine calculate_surface_state(state, u, v, h, ssh, G, CS, p_atm)
enddo

do k=1,nz ; do i=is,ie
if (depth(i) + h(i,j,k) < depth_ml) then
dh = h(i,j,k)
if (depth(i) + h(i,j,k)*G%H_to_m < depth_ml) then
dh = h(i,j,k)*G%H_to_m
elseif (depth(i) < depth_ml) then
dh = depth_ml - depth(i)
else
Expand All @@ -2666,7 +2669,7 @@ subroutine calculate_surface_state(state, u, v, h, ssh, G, CS, p_atm)
enddo ; enddo
! Calculate the average properties of the mixed layer depth.
do i=is,ie
if (depth(i) < G%H_subroundoff) depth(i) = G%H_subroundoff
if (depth(i) < G%H_subroundoff*G%H_to_m) depth(i) = G%H_subroundoff*G%H_to_m
if (CS%use_temperature) then
state%SST(i,j) = state%SST(i,j) / depth(i)
state%SSS(i,j) = state%SSS(i,j) / depth(i)
Expand Down
27 changes: 14 additions & 13 deletions src/core/MOM_PressureForce_Montgomery.F90
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,7 @@ module MOM_PressureForce_Mont
use MOM_variables, only : thermo_var_ptrs
use MOM_EOS, only : calculate_density, calculate_density_derivs
use MOM_EOS, only : int_specific_vol_dp, query_compressible

implicit none ; private

#include <MOM_memory.h>
Expand Down Expand Up @@ -515,7 +516,7 @@ subroutine PressureForce_Mont_Bouss(h, tv, PFu, PFv, G, CS, p_atm, pbce, eta)
do j=Jsq,Jeq+1
do i=Isq,Ieq+1 ; e(i,j,1) = -1.0*G%bathyT(i,j) ; enddo
do k=1,nz ; do i=Isq,Ieq+1
e(i,j,1) = e(i,j,1) + h(i,j,k)
e(i,j,1) = e(i,j,1) + h(i,j,k)*G%H_to_m
enddo ; enddo
enddo
call calc_tidal_forcing(CS%Time, e(:,:,1), e_tidal, G, CS%tides_CSp)
Expand All @@ -536,7 +537,7 @@ subroutine PressureForce_Mont_Bouss(h, tv, PFu, PFv, G, CS, p_atm, pbce, eta)
endif
!$OMP do
do j=Jsq,Jeq+1 ; do k=nz,1,-1 ; do i=Isq,Ieq+1
e(i,j,K) = e(i,j,K+1) + h(i,j,k)
e(i,j,K) = e(i,j,K+1) + h(i,j,k)*G%H_to_m
enddo ; enddo ; enddo
!$OMP end parallel
if (use_EOS) then
Expand Down Expand Up @@ -661,12 +662,12 @@ subroutine PressureForce_Mont_Bouss(h, tv, PFu, PFv, G, CS, p_atm, pbce, eta)
! about 200 lines above.
!$OMP parallel do default(none) shared(Isq,Ieq,Jsq,Jeq,eta,e,e_tidal)
do j=Jsq,Jeq+1 ; do i=Isq,Ieq+1
eta(i,j) = e(i,j,1) + e_tidal(i,j)
eta(i,j) = e(i,j,1)*G%m_to_H + e_tidal(i,j)*G%m_to_H
enddo ; enddo
else
!$OMP parallel do default(none) shared(Isq,Ieq,Jsq,Jeq,eta,e)
do j=Jsq,Jeq+1 ; do i=Isq,Ieq+1
eta(i,j) = e(i,j,1)
eta(i,j) = e(i,j,1)*G%m_to_H
enddo ; enddo
endif
endif
Expand All @@ -689,7 +690,7 @@ subroutine Set_pbce_Bouss(e, tv, G, g_Earth, Rho0, GFS_scale, pbce, rho_star)
real, dimension(NIMEM_,NJMEM_,NKMEM_), optional, intent(in) :: rho_star
! This subroutine determines the partial derivative of the acceleration due
! to pressure forces with the free surface height.
! Arguments: e - Interface height, in m.
! Arguments: e - Interface height, in H (m).
! (in) tv - A structure containing pointers to any available
! thermodynamic fields, including potential temperature and
! salinity or mixed layer density. Absent fields have NULL ptrs.
Expand All @@ -703,7 +704,7 @@ subroutine Set_pbce_Bouss(e, tv, G, g_Earth, Rho0, GFS_scale, pbce, rho_star)
! (in) CS - The control structure returned by a previous call to
! PressureForce_init.
! (out) pbce - the baroclinic pressure anomaly in each layer
! due to free surface height anomalies, in m s-2.
! due to free surface height anomalies, in m2 H-1 s-2.
! (in,opt) rho_star - The layer densities (maybe compressibility compensated),
! times g/rho_0, in m s-2.

Expand All @@ -728,16 +729,16 @@ subroutine Set_pbce_Bouss(e, tv, G, g_Earth, Rho0, GFS_scale, pbce, rho_star)
Rho0xG = Rho0*g_Earth
G_Rho0 = g_Earth/Rho0
use_EOS = associated(tv%eqn_of_state)
h_neglect = G%H_subroundoff * G%H_to_m
h_neglect = G%H_subroundoff*G%H_to_m

if (use_EOS) then
if (present(rho_star)) then
!$OMP parallel do default(none) shared(Isq,Ieq,Jsq,Jeq,nz,e,h_neglect,pbce,rho_star,GFS_scale) &
!$OMP private(Ihtot)
do j=Jsq,Jeq+1
do i=Isq,Ieq+1
Ihtot(i) = 1.0 / ((e(i,j,1)-e(i,j,nz+1)) + h_neglect)
pbce(i,j,1) = GFS_scale * rho_star(i,j,1)
Ihtot(i) = 1.0 / (((e(i,j,1)-e(i,j,nz+1)) + h_neglect) * G%m_to_H)
pbce(i,j,1) = GFS_scale * rho_star(i,j,1) * G%H_to_m
enddo
do k=2,nz ; do i=Isq,Ieq+1
pbce(i,j,k) = pbce(i,j,k-1) + (rho_star(i,j,k)-rho_star(i,j,k-1)) * &
Expand All @@ -749,13 +750,13 @@ subroutine Set_pbce_Bouss(e, tv, G, g_Earth, Rho0, GFS_scale, pbce, rho_star)
!$OMP private(Ihtot,press,rho_in_situ,T_int,S_int,dR_dT,dR_dS)
do j=Jsq,Jeq+1
do i=Isq,Ieq+1
Ihtot(i) = 1.0 / ((e(i,j,1)-e(i,j,nz+1)) + h_neglect)
Ihtot(i) = 1.0 / (((e(i,j,1)-e(i,j,nz+1)) + h_neglect) * G%m_to_H)
press(i) = -Rho0xG*e(i,j,1)
enddo
call calculate_density(tv%T(:,j,1), tv%S(:,j,1), press, rho_in_situ, &
Isq, Ieq-Isq+2, tv%eqn_of_state)
do i=Isq,Ieq+1
pbce(i,j,1) = G_Rho0*(GFS_scale * rho_in_situ(i))
pbce(i,j,1) = G_Rho0*(GFS_scale * rho_in_situ(i)) * G%H_to_m
enddo
do k=2,nz
do i=Isq,Ieq+1
Expand All @@ -778,8 +779,8 @@ subroutine Set_pbce_Bouss(e, tv, G, g_Earth, Rho0, GFS_scale, pbce, rho_star)
!$OMP parallel do default(none) shared(Isq,Ieq,Jsq,Jeq,nz,e,G,h_neglect,pbce) private(Ihtot)
do j=Jsq,Jeq+1
do i=Isq,Ieq+1
Ihtot(i) = 1.0 / ((e(i,j,1)-e(i,j,nz+1)) + h_neglect)
pbce(i,j,1) = G%g_prime(1)
Ihtot(i) = 1.0 / (((e(i,j,1)-e(i,j,nz+1)) + h_neglect) * G%m_to_H)
pbce(i,j,1) = G%g_prime(1) * G%H_to_m
enddo
do k=2,nz ; do i=Isq,Ieq+1
pbce(i,j,k) = pbce(i,j,k-1) + &
Expand Down
25 changes: 13 additions & 12 deletions src/core/MOM_PressureForce_analytic_FV.F90
Original file line number Diff line number Diff line change
Expand Up @@ -490,7 +490,7 @@ subroutine PressureForce_AFV_Bouss(h, tv, PFu, PFv, G, CS, ALE_CSp, p_atm, pbce,
! (in) p_atm - the pressure at the ice-ocean or atmosphere-ocean
! interface in Pa.
! (out) pbce - the baroclinic pressure anomaly in each layer
! due to free surface height anomalies, in m s-2.
! due to free surface height anomalies, in m2 H-1 s-2.
! (out) eta - the free surface height used to calculate PFu and PFv, in m,
! with any tidal contributions or compressibility compensation.

Expand All @@ -510,7 +510,7 @@ subroutine PressureForce_AFV_Bouss(h, tv, PFu, PFv, G, CS, ALE_CSp, p_atm, pbce,
dpa_bk, & ! The change in pressure anomaly between the top and bottom
! of a layer, in Pa.
intz_dpa_bk ! The vertical integral in depth of the pressure anomaly less
! the pressure anomaly at the top of the layer, in m Pa.
! the pressure anomaly at the top of the layer, in H Pa (m Pa).
real, dimension(SZIB_BK_(G),SZJ_BK_(G)) :: & ! on block indices
intx_pa_bk, & ! The zonal integral of the pressure anomaly along the interface
! atop a layer, divided by the grid spacing, in Pa.
Expand Down Expand Up @@ -576,13 +576,13 @@ subroutine PressureForce_AFV_Bouss(h, tv, PFu, PFv, G, CS, ALE_CSp, p_atm, pbce,
! but that is not yet implemented, and the current form is correct for
! barotropic tides.
!$OMP parallel do default(none) shared(Isq,Ieq,Jsq,Jeq,nz,e,G,h)
do j=Jsq,Jeq+1
do j=Jsq,Jeq+1
do i=Isq,Ieq+1
e(i,j,1) = -1.0*G%bathyT(i,j)
enddo
do k=1,nz ; do i=Isq,Ieq+1
e(i,j,1) = e(i,j,1) + G%H_to_m*h(i,j,k)
enddo ; enddo
e(i,j,1) = e(i,j,1) + h(i,j,k)*G%H_to_m
enddo ; enddo
enddo
call calc_tidal_forcing(CS%Time, e(:,:,1), e_tidal, G, CS%tides_CSp)
endif
Expand All @@ -602,7 +602,7 @@ subroutine PressureForce_AFV_Bouss(h, tv, PFu, PFv, G, CS, ALE_CSp, p_atm, pbce,
endif
!$OMP do
do j=Jsq,Jeq+1; do k=nz,1,-1 ; do i=Isq,Ieq+1
e(i,j,K) = e(i,j,K+1) + G%H_to_m*h(i,j,k)
e(i,j,K) = e(i,j,K+1) + h(i,j,k)*G%H_to_m
enddo ; enddo ; enddo
!$OMP end parallel

Expand Down Expand Up @@ -677,9 +677,9 @@ subroutine PressureForce_AFV_Bouss(h, tv, PFu, PFv, G, CS, ALE_CSp, p_atm, pbce,
! of freedeom needed to know the linear profile).
if ( use_ALE ) then
if ( PRScheme == PRESSURE_RECONSTRUCTION_PLM ) then
call pressure_gradient_plm (ALE_CSp, S_t, S_b, T_t, T_b, G, tv, h );
call pressure_gradient_plm (ALE_CSp, S_t, S_b, T_t, T_b, G, tv, h);
elseif ( PRScheme == PRESSURE_RECONSTRUCTION_PPM ) then
call pressure_gradient_ppm (ALE_CSp, S_t, S_b, T_t, T_b, G, tv, h );
call pressure_gradient_ppm (ALE_CSp, S_t, S_b, T_t, T_b, G, tv, h);
endif
endif

Expand Down Expand Up @@ -754,6 +754,7 @@ subroutine PressureForce_AFV_Bouss(h, tv, PFu, PFv, G, CS, ALE_CSp, p_atm, pbce,
rho_ref, CS%Rho0, G%g_Earth, G%Block(n), tv%eqn_of_state, &
dpa_bk, intz_dpa_bk, intx_dpa_bk, inty_dpa_bk )
endif
intz_dpa_bk(:,:) = intz_dpa_bk(:,:)*G%m_to_H
else
do jb=Jsq_bk,Jeq_bk+1 ; do ib=Isq_bk,Ieq_bk+1
i = ib+ioff_bk ; j = jb+joff_bk
Expand All @@ -775,7 +776,7 @@ subroutine PressureForce_AFV_Bouss(h, tv, PFu, PFv, G, CS, ALE_CSp, p_atm, pbce,
PFu(I,j,k) = (((pa_bk(ib,jb)*h(i,j,k) + intz_dpa_bk(ib,jb)) - &
(pa_bk(ib+1,jb)*h(i+1,j,k) + intz_dpa_bk(ib+1,jb))) + &
((h(i+1,j,k) - h(i,j,k)) * intx_pa_bk(Ib,jb) - &
(e(i+1,j,K+1) - e(i,j,K+1)) * intx_dpa_bk(Ib,jb))) * &
(e(i+1,j,K+1) - e(i,j,K+1)) * intx_dpa_bk(Ib,jb) * G%m_to_H)) * &
((2.0*I_Rho0*G%IdxCu(I,j)) / &
((h(i,j,k) + h(i+1,j,k)) + h_neglect))
intx_pa_bk(Ib,jb) = intx_pa_bk(Ib,jb) + intx_dpa_bk(Ib,jb)
Expand All @@ -786,7 +787,7 @@ subroutine PressureForce_AFV_Bouss(h, tv, PFu, PFv, G, CS, ALE_CSp, p_atm, pbce,
PFv(i,J,k) = (((pa_bk(ib,jb)*h(i,j,k) + intz_dpa_bk(ib,jb)) - &
(pa_bk(ib,jb+1)*h(i,j+1,k) + intz_dpa_bk(ib,jb+1))) + &
((h(i,j+1,k) - h(i,j,k)) * inty_pa_bk(ib,Jb) - &
(e(i,j+1,K+1) - e(i,j,K+1)) * inty_dpa_bk(ib,Jb))) * &
(e(i,j+1,K+1) - e(i,j,K+1)) * inty_dpa_bk(ib,Jb) * G%m_to_H)) * &
((2.0*I_Rho0*G%IdyCv(i,J)) / &
((h(i,j,k) + h(i,j+1,k)) + h_neglect))
inty_pa_bk(ib,Jb) = inty_pa_bk(ib,Jb) + inty_dpa_bk(ib,Jb)
Expand Down Expand Up @@ -819,12 +820,12 @@ subroutine PressureForce_AFV_Bouss(h, tv, PFu, PFv, G, CS, ALE_CSp, p_atm, pbce,
! about 200 lines above.
!$OM parallel do default(none) shared(Isq,Ieq,Jsq,Jeq,eta,e,e_tidal)
do j=Jsq,Jeq+1 ; do i=Isq,Ieq+1
eta(i,j) = e(i,j,1) + e_tidal(i,j)
eta(i,j) = e(i,j,1)*G%m_to_H + e_tidal(i,j)*G%m_to_H
enddo ; enddo
else
!$OM parallel do default(none) shared(Isq,Ieq,Jsq,Jeq,eta,e)
do j=Jsq,Jeq+1 ; do i=Isq,Ieq+1
eta(i,j) = e(i,j,1)
eta(i,j) = e(i,j,1)*G%m_to_H
enddo ; enddo
endif
endif
Expand Down
Loading