Skip to content
Open
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
12 changes: 10 additions & 2 deletions bld/build-namelist
Original file line number Diff line number Diff line change
Expand Up @@ -2962,9 +2962,17 @@ if ($maxzen>0.0) {
# upper boundary specifier
my $ubc_ver;
if (($chem =~ /waccm_ma/ or $chem =~ /waccm_tsmlt/ or $chem =~ /waccm_t4ma/) and !$waccmx) {
$ubc_ver = 'waccmchem';
if ($phys =~ /cam7/) {
$ubc_ver = 'waccm7chem';
} else {
$ubc_ver = 'waccmchem';
}
} elsif ($chem =~ /waccm_sc/ or ($model_top eq "ht" and $chem =~ /ghg_mam/)) {
$ubc_ver = 'waccmsc';
if ($phys =~ /cam7/) {
$ubc_ver = 'waccm7sc';
} else {
$ubc_ver = 'waccmsc';
}
}
if (defined $ubc_ver) {
add_default($nl, 'ubc_specifier', 'ver'=>$ubc_ver);
Expand Down
7 changes: 7 additions & 0 deletions bld/namelist_files/namelist_defaults_cam.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2098,6 +2098,13 @@
<ubc_specifier ver="waccmsc">
'T->MSIS','Q->2.d-8vmr','CH4->2.d-10vmr'
</ubc_specifier>
<!-- WACCM7 -- do not include water vapor for now -->
<ubc_specifier ver="waccm7chem">
'T->MSIS','CH4->2.d-10vmr','F->1.0D-15mmr','HF->1.0D-15mmr','H->MSIS','N->MSIS','O->MSIS','O2->MSIS','H2->TGCM','NO->SNOE'
</ubc_specifier>
<ubc_specifier ver="waccm7sc">
'T->MSIS','CH4->2.d-10vmr'
</ubc_specifier>

<!-- Boundary data for Tropopheric Chemistry -->
<fstrat_file >atm/cam/chem/trop_mozart/ub/ubvals_b40.20th.track1_1996-2005_c110315.nc</fstrat_file>
Expand Down
2 changes: 2 additions & 0 deletions bld/namelist_files/use_cases/1850_cam_lt.xml
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,12 @@
<flbc_list>'CO2','CH4','N2O','CFC11','CFC12','CFC11eq'</flbc_list>

<!-- Low top upper boundary conditions -->
<!-- Remove for now
<ubc_specifier>'Q:H2O->UBC_FILE'</ubc_specifier>
<ubc_file_path>atm/cam/chem/ubc/b.e21.BWHIST.f09_g17.CMIP6-historical-WACCM.ensAvg123.cam.h0zm.H2O.1849-2014_c240604.nc</ubc_file_path>
<ubc_file_input_type>CYCLICAL</ubc_file_input_type>
<ubc_file_cycle_yr>1850</ubc_file_cycle_yr>
-->

<!-- ozone data : -->
<prescribed_ozone_datapath> 'atm/cam/ozone_strataero' </prescribed_ozone_datapath>
Expand Down
2 changes: 2 additions & 0 deletions bld/namelist_files/use_cases/hist_cam_lt.xml
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,11 @@
<flbc_list>'CO2','CH4','N2O','CFC11','CFC12','CFC11eq'</flbc_list>

<!-- Low top upper boundary conditions -->
<!-- Remove for now
<ubc_specifier>'Q:H2O->UBC_FILE'</ubc_specifier>
<ubc_file_path>atm/cam/chem/ubc/b.e21.BWHIST.f09_g17.CMIP6-historical-WACCM.ensAvg123.cam.h0zm.H2O.1849-2014_c240604.nc</ubc_file_path>
<ubc_file_input_type>'SERIAL'</ubc_file_input_type>
-->

<!-- ozone data -->
<prescribed_ozone_datapath> 'atm/cam/ozone_strataero' </prescribed_ozone_datapath>
Expand Down
7 changes: 5 additions & 2 deletions src/physics/cam7/physpkg.F90
Original file line number Diff line number Diff line change
Expand Up @@ -159,12 +159,14 @@ subroutine phys_register
use surface_emissions_mod, only: surface_emissions_reg
use elevated_emissions_mod, only: elevated_emissions_reg
use ctem_diags_mod, only: ctem_diags_reg
use upper_bc, only: ubc_fixed_conc

!---------------------------Local variables-----------------------------
!
integer :: m ! loop index
integer :: mm ! constituent index
integer :: nmodes
logical :: has_fixed_ubc ! for upper bndy cond
!-----------------------------------------------------------------------

! Get physics options
Expand All @@ -191,11 +193,12 @@ subroutine phys_register
! Register water vapor.
! ***** N.B. ***** This must be the first call to cnst_add so that
! water vapor is constituent 1.
has_fixed_ubc = ubc_fixed_conc('Q') ! check for fixed concentration upper boundary condition
if (moist_physics) then
call cnst_add('Q', mwh2o, cpwv, 1.E-12_r8, mm, &
call cnst_add('Q', mwh2o, cpwv, 1.E-12_r8, mm, fixed_ubc=has_fixed_ubc, &
longname='Specific humidity', readiv=.true., is_convtran1=.true.)
else
call cnst_add('Q', mwh2o, cpwv, 0.0_r8, mm, &
call cnst_add('Q', mwh2o, cpwv, 0.0_r8, mm, fixed_ubc=has_fixed_ubc, &
longname='Specific humidity', readiv=.false., is_convtran1=.true.)
end if

Expand Down
Loading