Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/release-v4.4.1'
Browse files Browse the repository at this point in the history
  • Loading branch information
kkeene44 committed Aug 25, 2022
2 parents c11bb76 + 5fc6e5b commit f34b11d
Show file tree
Hide file tree
Showing 13 changed files with 94 additions and 68 deletions.
2 changes: 1 addition & 1 deletion README
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
WRF Model Version 4.4
WRF Model Version 4.4.1

https://www2.mmm.ucar.edu/wrf/users/

Expand Down
2 changes: 1 addition & 1 deletion chem/depend.chem
Original file line number Diff line number Diff line change
Expand Up @@ -229,7 +229,7 @@ module_mosaic_sect_intr.o: module_mosaic_coag1d.o module_mosaic_coag3d.o module_

module_mosaic_aerdynam_intr.o: module_mosaic_sect_intr.o module_mosaic_aerchem_intr.o

module_mosaic_addemiss.o: module_data_mosaic_asect.o module_data_sorgam.o
module_mosaic_addemiss.o: module_data_mosaic_asect.o module_data_sorgam.o module_gocart_dust.o

module_dep_simple.o: module_data_sorgam.o module_aerosols_soa_vbs.o

Expand Down
1 change: 0 additions & 1 deletion dyn_em/module_stoch.F
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,6 @@ SUBROUTINE INITIALIZE_STOCH (grid, config_flags, &
ipsy, ipey, jpsy, jpey, kpsy, kpey )


USE module_dm
USE module_configure
USE module_domain, ONLY : domain
USE module_wrf_error
Expand Down
2 changes: 1 addition & 1 deletion inc/version_decl
Original file line number Diff line number Diff line change
@@ -1 +1 @@
CHARACTER (LEN=*), PARAMETER :: release_version = 'V4.4'
CHARACTER (LEN=*), PARAMETER :: release_version = 'V4.4.1'
8 changes: 7 additions & 1 deletion phys/module_ra_clWRF_support.F
Original file line number Diff line number Diff line change
Expand Up @@ -168,7 +168,13 @@ SUBROUTINE read_CAMgases(yr, julian, READtrFILE, model, co2vmr, n2ovmr, ch4vmr,
CALL wrf_message( message)
ENDIF

IF (istatus /= -1) THEN
IF (istatus == -1) THEN
WRITE(message,*) "Normal ending of CAMtr_volume_mixing_ratio file"
CALL wrf_message( message)
ELSE IF (istatus == -4001) THEN ! Cray CCE compiler throws -4001 rather than -1
WRITE(message,*) "Normal ending of CAMtr_volume_mixing_ratio file"
CALL wrf_message( message)
ELSE ! if not -1 or -4001, then abort
WRITE(message,*) " Not normal ending of CAMtr_volume_mixing_ratio file"
call wrf_error_fatal( message)
END IF
Expand Down
31 changes: 17 additions & 14 deletions phys/module_ra_rrtmg_lw.F
Original file line number Diff line number Diff line change
Expand Up @@ -11701,9 +11701,8 @@ SUBROUTINE RRTMG_LWRAD( &

! Ozone
REAL, DIMENSION( ims:ime, kms:kme, jms:jme ) , &
OPTIONAL , &
INTENT(IN ) :: O33D
INTEGER, OPTIONAL, INTENT(IN ) :: o3input
INTENT(INOUT) :: O33D
INTEGER, INTENT(IN ) :: o3input

real, parameter :: thresh=1.e-9
real slope
Expand Down Expand Up @@ -12011,7 +12010,7 @@ SUBROUTINE RRTMG_LWRAD( &
QV1D(K)=max(0.,QV1D(K))
ENDDO

IF (PRESENT(O33D)) THEN
IF (o3input.eq.2) THEN
DO K=kts,kte
O31D(K)=O33D(I,K,J)
ENDDO
Expand Down Expand Up @@ -12401,27 +12400,31 @@ SUBROUTINE RRTMG_LWRAD( &
call inirad (o3mmr,plev,kts,nlay-1)

! Steven Cavallo: Changed to nlayers from kte+1
if(present(o33d)) then
if(o3input.eq.2) then
do k = kts, nlayers
o3vmr(ncol,k) = o3mmr(k) * amdo
IF ( PRESENT( O33D ) ) THEN
if(o3input .eq. 2)then
if(k.le.kte)then
o3vmr(ncol,k) = o31d(k)
else
if(k.le.kte)then
o3vmr(ncol,k) = o31d(k)
else
! apply shifted climatology profile above model top
o3vmr(ncol,k) = o31d(kte) - o3mmr(kte)*amdo + o3mmr(k)*amdo
if(o3vmr(ncol,k) .le. 0.)o3vmr(ncol,k) = o3mmr(k)*amdo
endif
o3vmr(ncol,k) = o31d(kte) - o3mmr(kte)*amdo + o3mmr(k)*amdo
if(o3vmr(ncol,k) .le. 0.)o3vmr(ncol,k) = o3mmr(k)*amdo
endif
ENDIF
enddo
else
do k = kts, nlayers
o3vmr(ncol,k) = o3mmr(k) * amdo
o31d(k) = o3vmr(ncol,k)
enddo
endif

! output o3 for o3input=0
IF (o3input.ne.2) THEN
DO K=kts,kte
O33D(I,K,J)=O31D(K)
ENDDO
ENDIF

! Set surface emissivity in each RRTMG longwave band
do nb = 1, nbndlw
emis(ncol, nb) = emiss(i,j)
Expand Down
22 changes: 9 additions & 13 deletions phys/module_ra_rrtmg_lwf.F
Original file line number Diff line number Diff line change
Expand Up @@ -15375,8 +15375,8 @@ SUBROUTINE RRTMG_LWRAD_FAST( &
! Ozone
REAL, DIMENSION( ims:ime, kms:kme, jms:jme ) , &
OPTIONAL , &
INTENT(IN ) :: O33D
INTEGER, OPTIONAL, INTENT(IN ) :: o3input
INTENT(INOUT) :: O33D
INTEGER, INTENT(IN ) :: o3input

real, parameter :: thresh=1.e-9
real slope
Expand Down Expand Up @@ -15674,7 +15674,7 @@ SUBROUTINE RRTMG_LWRAD_FAST( &
QV1D(K)=max(0.,QV1D(K))
ENDDO

IF (PRESENT(O33D)) THEN
IF (o3input.eq.2) THEN
DO K=kts,kte
O31D(K)=O33D(I,K,J)
ENDDO
Expand Down Expand Up @@ -16015,20 +16015,16 @@ SUBROUTINE RRTMG_LWRAD_FAST( &
call inirad (o3mmr,plev(icol,:),kts,nlay-1)

! Steven Cavallo: Changed to nlayers from kte+1
if(present(o33d)) then
if(o3input.eq.2) then
do k = kts, nlayers
o3vmr(icol,k) = o3mmr(k) * amdo
IF ( PRESENT( O33D ) ) THEN
if(o3input .eq. 2)then
if(k.le.kte)then
o3vmr(icol,k) = o31d(k)
else
if(k.le.kte)then
o3vmr(icol,k) = o31d(k)
else
! apply shifted climatology profile above model top
o3vmr(icol,k) = o31d(kte) - o3mmr(kte)*amdo + o3mmr(k)*amdo
if(o3vmr(icol,k) .le. 0.)o3vmr(icol,k) = o3mmr(k)*amdo
endif
o3vmr(icol,k) = o31d(kte) - o3mmr(kte)*amdo + o3mmr(k)*amdo
if(o3vmr(icol,k) .le. 0.)o3vmr(icol,k) = o3mmr(k)*amdo
endif
ENDIF
enddo
else
do k = kts, nlayers
Expand Down
24 changes: 10 additions & 14 deletions phys/module_ra_rrtmg_sw.F
Original file line number Diff line number Diff line change
Expand Up @@ -10214,9 +10214,8 @@ SUBROUTINE RRTMG_SWRAD( &

! Ozone
REAL, DIMENSION( ims:ime, kms:kme, jms:jme ) , &
OPTIONAL , &
INTENT(IN ) :: O33D
INTEGER, OPTIONAL, INTENT(IN ) :: o3input
INTENT(INOUT) :: O33D
INTEGER, INTENT(IN ) :: o3input
! EC aerosol: no_src = naerec = 6
INTEGER, INTENT(IN ) :: no_src
REAL, DIMENSION( ims:ime, kms:kme, jms:jme, 1:no_src ) , &
Expand Down Expand Up @@ -10598,7 +10597,7 @@ SUBROUTINE RRTMG_SWRAD( &
QV1D(K)=max(0.,QV1D(K))
ENDDO

IF (PRESENT(O33D)) THEN
IF (o3input.eq.2) THEN
DO K=kts,kte
O31D(K)=O33D(I,K,J)
ENDDO
Expand Down Expand Up @@ -10919,24 +10918,21 @@ SUBROUTINE RRTMG_SWRAD( &
! Get ozone profile including amount in extra layer above model top
call inirad (o3mmr,plev,kts,kte)

if(present(o33d)) then
if(o3input.eq.2) then
do k = kts, kte+1
o3vmr(ncol,k) = o3mmr(k) * amdo
IF ( PRESENT( O33D ) ) THEN
if(o3input .eq. 2)then
if(k.le.kte)then
o3vmr(ncol,k) = o31d(k)
else
if(k.le.kte)then
o3vmr(ncol,k) = o31d(k)
else
! apply shifted climatology profile above model top
o3vmr(ncol,k) = o31d(kte) - o3mmr(kte)*amdo + o3mmr(k)*amdo
if(o3vmr(ncol,k) .le. 0.)o3vmr(ncol,k) = o3mmr(k)*amdo
endif
o3vmr(ncol,k) = o31d(kte) - o3mmr(kte)*amdo + o3mmr(k)*amdo
if(o3vmr(ncol,k) .le. 0.)o3vmr(ncol,k) = o3mmr(k)*amdo
endif
ENDIF
enddo
else
do k = kts, kte+1
o3vmr(ncol,k) = o3mmr(k) * amdo
o31d(k) = o3vmr(ncol,k)
enddo
endif

Expand Down
21 changes: 8 additions & 13 deletions phys/module_ra_rrtmg_swf.F
Original file line number Diff line number Diff line change
Expand Up @@ -11386,8 +11386,7 @@ SUBROUTINE RRTMG_SWRAD_FAST( &
INTEGER, INTENT(IN ), OPTIONAL :: progn
! Ozone
REAL, DIMENSION( ims:ime, kms:kme, jms:jme ) , &
OPTIONAL , &
INTENT(IN ) :: O33D
INTENT(INOUT) :: O33D
INTEGER, OPTIONAL, INTENT(IN ) :: o3input
! EC aerosol: no_src = naerec = 6
INTEGER, INTENT(IN ) :: no_src
Expand Down Expand Up @@ -11731,7 +11730,7 @@ SUBROUTINE RRTMG_SWRAD_FAST( &
QV1D(K)=max(0.,QV1D(K))
ENDDO

IF (PRESENT(O33D)) THEN
IF (o3input.eq.2) THEN
DO K=kts,kte
O31D(K)=O33D(I,K,J)
ENDDO
Expand Down Expand Up @@ -11992,20 +11991,16 @@ SUBROUTINE RRTMG_SWRAD_FAST( &
! call inirad (o3mmr,plev,kts,kte)
call inirad (o3mmr,plev(icol,:),kts,kte)

if(present(o33d)) then
if(o3input.eq.2) then
do k = kts, kte+1
o3vmr(icol,k) = o3mmr(k) * amdo
IF ( PRESENT( O33D ) ) THEN
if(o3input .eq. 2)then
if(k.le.kte)then
o3vmr(icol,k) = o31d(k)
else
if(k.le.kte)then
o3vmr(icol,k) = o31d(k)
else
! apply shifted climatology profile above model top
o3vmr(icol,k) = o31d(kte) - o3mmr(kte)*amdo + o3mmr(k)*amdo
if(o3vmr(icol,k) .le. 0.)o3vmr(icol,k) = o3mmr(k)*amdo
endif
o3vmr(icol,k) = o31d(kte) - o3mmr(kte)*amdo + o3mmr(k)*amdo
if(o3vmr(icol,k) .le. 0.)o3vmr(icol,k) = o3mmr(k)*amdo
endif
ENDIF
enddo
else
do k = kts, kte+1
Expand Down
6 changes: 3 additions & 3 deletions run/README.namelist
Original file line number Diff line number Diff line change
Expand Up @@ -406,13 +406,13 @@ Namelist variables for controlling the adaptive time step option:
max(vert cfl, horiz cfl) <= target_cfl, then the time
will increase by max_step_increase_pct. Use something
large for nests (51% suggested)
starting_time_step(max_dom) = -1,-1 ! flag = -1 implies use 6 * dx (defined in start_em),
starting_time_step(max_dom) = -1,-1 ! flag = -1 implies use 4*dx (defined in start_em),
starting_time_step = 100 means the starting time step
for the coarse grid is 100 s
max_time_step(max_dom) = -1,-1 ! flag = -1 implies max time step is 3 * starting_time_step,
max_time_step(max_dom) = -1,-1 ! flag = -1 implies max time step is 8*dx,
max_time_step = 100 means that the time step will not
exceed 100 s
min_time_step(max_dom) = -1,-1 ! flag = -1 implies max time step is 0.5 * starting_time_step,
min_time_step(max_dom) = -1,-1 ! flag = -1 implies max time step is 3*dx,
min_time_step = 100 means that the time step will not
be less than 100 s
adaptation_domain = 1 ! default, all fine grid domains adaptive dt driven by coarse-grid
Expand Down
22 changes: 19 additions & 3 deletions run/VEGPARM.TBL
Original file line number Diff line number Diff line change
Expand Up @@ -181,11 +181,27 @@ NATURAL
CROP
12
LCZ_1
24
31
LCZ_2
26
32
LCZ_3
99
33
LCZ_4
34
LCZ_5
35
LCZ_6
36
LCZ_7
37
LCZ_8
38
LCZ_9
39
LCZ_10
40
LCZ_11
41
Vegetation Parameters
USGS-RUC
28,1, 'ALBEDO Z0 LEMI PC SHDFAC IFOR RS RGL HS SNUP LAI MAXALB'
Expand Down
19 changes: 17 additions & 2 deletions share/module_check_a_mundo.F
Original file line number Diff line number Diff line change
Expand Up @@ -2507,11 +2507,11 @@ END FUNCTION bep_bem_ngr_u
END DO

!-----------------------------------------------------------------------
! Check if qna_update=0 when aer_init_opt>0 for Thompson-MP-Aero (mp_physics=28)
! Check if qna_update=0 when aer_init_opt>1 for Thompson-MP-Aero (mp_physics=28)
!-----------------------------------------------------------------------
DO i = 1, model_config_rec % max_dom
IF ( model_config_rec%mp_physics(i) .EQ. THOMPSONAERO ) THEN
IF ( model_config_rec%aer_init_opt .GT. 0 .and. model_config_rec%qna_update .EQ. 0 ) THEN
IF ( model_config_rec%aer_init_opt .GT. 1 .and. model_config_rec%qna_update .EQ. 0 ) THEN
wrf_err_message = '--- ERROR: Time-varying sfc aerosol emissions not set for mp_physics=28 '
CALL wrf_debug ( 0, TRIM( wrf_err_message ) )
wrf_err_message = '--- ERROR: Please set qna_update=1 and control through auxinput17 options '
Expand Down Expand Up @@ -2555,6 +2555,21 @@ END FUNCTION bep_bem_ngr_u
END IF
END DO

!-----------------------------------------------------------------------
! Stop the model if full_khain_lynn or mp_physics = 32 is selected
!-----------------------------------------------------------------------
DO i = 1, model_config_rec % max_dom
IF ( .NOT. model_config_rec % grid_allowed(i) ) CYCLE
IF ( model_config_rec%mp_physics(i) .eq. full_khain_lynn) THEN
oops = oops + 1
wrf_err_message = '--- ERROR: full bin spectral microphysics should not be used '
CALL wrf_message ( wrf_err_message )
wrf_err_message = '--- ERROR: use fast version instead (mp_physics=30)'
CALL wrf_message ( wrf_err_message )
count_fatal_error = count_fatal_error + 1
END IF
ENDDO ! Loop over domains

!-----------------------------------------------------------------------
! DJW Check that we're not using ndown and vertical nesting.
!-----------------------------------------------------------------------
Expand Down
2 changes: 1 addition & 1 deletion tools/data.h
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ typedef struct node_struct {
char pkg_4dscalars[NAMELEN_LONG] ;

/* fields used by Comm (halo, period, xpose) nodes */
char comm_define[2*8192] ;
char comm_define[4*8192] ;

/* marker */
int mark ;
Expand Down

0 comments on commit f34b11d

Please sign in to comment.