From 0ad312618cb4cbe8e852a01f4eb7450912c064c7 Mon Sep 17 00:00:00 2001 From: alperaltuntas Date: Thu, 6 Feb 2025 12:09:53 -0700 Subject: [PATCH] OMP directive fixes for build and runtime failures in CESM C cases --- src/parameterizations/lateral/MOM_hor_visc.F90 | 2 +- src/parameterizations/lateral/MOM_lateral_mixing_coeffs.F90 | 4 ++-- src/parameterizations/lateral/MOM_mixed_layer_restrat.F90 | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/parameterizations/lateral/MOM_hor_visc.F90 b/src/parameterizations/lateral/MOM_hor_visc.F90 index 1593a41a73..056dcb7a15 100644 --- a/src/parameterizations/lateral/MOM_hor_visc.F90 +++ b/src/parameterizations/lateral/MOM_hor_visc.F90 @@ -667,7 +667,7 @@ subroutine horizontal_viscosity(u, v, h, uh, vh, diffu, diffv, MEKE, VarMix, G, ! call pass_vector(slope_x, slope_y, G%Domain, halo=2) endif - !$OMP parallel do default(none) & + !$OMP parallel do default(none) if (.not. CS%smooth_AH) & !$OMP shared( & !$OMP CS, G, GV, US, OBC, VarMix, MEKE, u, v, h, uh, vh, & !$OMP is, ie, js, je, Isq, Ieq, Jsq, Jeq, nz, & diff --git a/src/parameterizations/lateral/MOM_lateral_mixing_coeffs.F90 b/src/parameterizations/lateral/MOM_lateral_mixing_coeffs.F90 index 8f388dc263..9078728f44 100644 --- a/src/parameterizations/lateral/MOM_lateral_mixing_coeffs.F90 +++ b/src/parameterizations/lateral/MOM_lateral_mixing_coeffs.F90 @@ -858,7 +858,7 @@ subroutine calc_Eady_growth_rate_2D(CS, G, GV, US, h, e, dzu, dzv, dzSxN, dzSyN, CS%SN_v(i,j) = 0.0 enddo ; enddo - !$OMP parallel do default(shared) private(dnew,dz,weight,l_seg,vint_SN,sum_dz) + !$OMP parallel do default(shared) private(dnew,dz,weight,l_seg,vint_SN,sum_dz,dT,dB) do j=G%jsc-1,G%jec+1 do I=G%isc-1,G%iec vint_SN(I) = 0. @@ -901,7 +901,7 @@ subroutine calc_Eady_growth_rate_2D(CS, G, GV, US, h, e, dzu, dzv, dzSxN, dzSyN, enddo enddo - !$OMP parallel do default(shared) private(dnew,dz,weight,l_seg) + !$OMP parallel do default(shared) private(dnew,dz,weight,l_seg,vint_SN,sum_dz,dT,dB) do J=G%jsc-1,G%jec do i=G%isc-1,G%iec+1 vint_SN(i) = 0. diff --git a/src/parameterizations/lateral/MOM_mixed_layer_restrat.F90 b/src/parameterizations/lateral/MOM_mixed_layer_restrat.F90 index 15e3efe21c..bb31255261 100644 --- a/src/parameterizations/lateral/MOM_mixed_layer_restrat.F90 +++ b/src/parameterizations/lateral/MOM_mixed_layer_restrat.F90 @@ -378,7 +378,7 @@ subroutine mixedlayer_restrat_OM4(h, uhtr, vhtr, tv, forces, dt, h_MLD, VarMix, !$OMP parallel default(shared) private(rho_ml,h_vel,u_star,absf,mom_mixrate,timescale, & !$OMP SpV_ml,SpV_int_fast,SpV_int_slow,Rml_int_fast,Rml_int_slow, & !$OMP line_is_empty,keep_going,res_scaling_fac, & - !$OMP a,IhTot,b,Ihtot_slow,zpb,hAtVel,zpa,dh) & + !$OMP a,IhTot,b,Ihtot_slow,zpb,hAtVel,zpa,dh,lfront,I_LFront) & !$OMP firstprivate(uDml,vDml,uDml_slow,vDml_slow) if (GV%Boussinesq .or. GV%semi_Boussinesq) then