Skip to content
Merged
Show file tree
Hide file tree
Changes from 25 commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
ee058e4
removed scmlat,scmlon from usermods_dir/scam_xxx
adamrher Sep 16, 2020
06dbd54
incorporate clubb_mf
adamrher Sep 16, 2020
dd22a60
added clubb_mf namelist group
adamrher Sep 17, 2020
bf353b1
added ChangeLog entry & default to dry plumes (condensation off)
adamrher Sep 17, 2020
2e0c19b
removed initial from all code mods
adamrher Sep 17, 2020
31a0162
important bug fixes, code cleanup
adamrher Sep 24, 2020
28ec956
mods from mikael, use fluxes in edmf module for clubb solver
adamrher Sep 29, 2020
9fde824
comments clarifying meaning of lowest thermo level
adamrher Sep 29, 2020
c3b62a6
brought code up to date. addressed first code review
adamrher Oct 7, 2020
93bb386
minor update to changelog in hopes of resolving conflicts
adamrher Oct 7, 2020
4c91878
addressing first round of code review
adamrher Oct 21, 2020
9a910a2
Add CLUBB_MF test and fix minor NAG bug
cacraigucar Nov 5, 2020
be0aa09
added drydep_srf_file for ne5pg3, swapped dycores for edmf test
adamrher Nov 5, 2020
2b8664d
bug fix in microphys
adamrher Nov 8, 2020
5fe837b
1st attempt at addressing goldys review
adamrher Nov 18, 2020
704e610
Updates from review
cacraigucar Nov 20, 2020
fed4187
Add the testmod for clubbmf
cacraigucar Nov 20, 2020
80c4c0f
Renamed edmf_module to clubb_mf
cacraigucar Nov 20, 2020
cd9850b
thanksgivign break bug fixes, replace with kiss RNG
adamrher Nov 30, 2020
3288ec0
Merge to cam6_3_005
cacraigucar Nov 30, 2020
e832e3c
Remove file that shouldn't have been committed and added missing r8
cacraigucar Nov 30, 2020
7a0cd21
Remove one more file that should not have been committed
cacraigucar Nov 30, 2020
6612d0d
Add paths for r8 and TGIT tests
cacraigucar Dec 1, 2020
cf43c94
final updates including ChangeLog text - no testing reported yet:q
cacraigucar Dec 1, 2020
1b5ff17
Uncomment debug write in clubb_mf
cacraigucar Dec 2, 2020
68597ab
Changed TGIT to use CAM_ROOT so it operates correctly wherever it is …
cacraigucar Dec 2, 2020
4b73b13
Update ChangeLog
cacraigucar Dec 3, 2020
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
5 changes: 5 additions & 0 deletions bld/build-namelist
Original file line number Diff line number Diff line change
Expand Up @@ -3046,6 +3046,11 @@ if ($clubb_sgs =~ /$TRUE/io) {
add_default($nl, 'clubb_l_vert_avg_closure');
add_default($nl, 'clubb_l_diag_Lscale_from_tau');
add_default($nl, 'clubb_l_damp_wp2_using_em');
add_default($nl, 'do_clubb_mf');
add_default($nl, 'do_clubb_mf_diag');
add_default($nl, 'clubb_mf_L0');
add_default($nl, 'clubb_mf_ent0');
add_default($nl, 'clubb_mf_nup');
}

# Tuning for wet scavenging of modal aerosols
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 @@ -1853,6 +1853,13 @@
<clubb_l_diag_Lscale_from_tau silhs="1" > .false. </clubb_l_diag_Lscale_from_tau>
<clubb_l_damp_wp2_using_em silhs="1" > .true. </clubb_l_damp_wp2_using_em>

<!-- CLUBB+MF options -->
<do_clubb_mf > .false. </do_clubb_mf>
<do_clubb_mf_diag > .false. </do_clubb_mf_diag>
<clubb_mf_L0 > 50.0 </clubb_mf_L0>
<clubb_mf_ent0 > 0.22 </clubb_mf_ent0>
<clubb_mf_nup > 10 </clubb_mf_nup>

<!-- Microphysics scheme -->
<micro_mg_do_hail > .false. </micro_mg_do_hail>
<micro_mg_do_graupel > .false. </micro_mg_do_graupel>
Expand Down
34 changes: 34 additions & 0 deletions bld/namelist_files/namelist_definition.xml
Original file line number Diff line number Diff line change
Expand Up @@ -3692,6 +3692,40 @@ energy.
Default: true
</entry>

<!-- for CLUBB+MF -->
<entry id="do_clubb_mf" type="logical" category="conv"
group="clubb_mf_nl" valid_values="" >
If .true. add ensemble mass fluxes to CLUBB's higher-order equation set.
Together with CLUBB, this constitutes an eddy-diffusivity mass-flux approach.
Default: .false.
</entry>

<entry id="do_clubb_mf_diag" type="logical" category="conv"
group="clubb_mf_nl" valid_values="" >
If .true. add detailed budget terms to output by default. Note that do_clubb_mf must also be set to .true.
Default: .false.
</entry>

<entry id="clubb_mf_L0" type="real" category="conv"
group="clubb_mf_nl" valid_values="" >
Entrainment length scale in meters for individual plumes. Not used if
do_clubb_mf=FALSE.
Default: 50.0
</entry>

<entry id="clubb_mf_ent0" type="real" category="conv"
group="clubb_mf_nl" valid_values="" >
Entrainment efficiency for individual plumes. Not used if
do_clubb_mf=FALSE.
Default: 0.22
</entry>

<entry id="clubb_mf_nup" type="integer" category="conv"
group="clubb_mf_nl" valid_values="" >
Real: number of plumes in mass flux ensemble
Default: 10
</entry>

<!-- CARMA Sectional Microphysics -->

<entry id="carma_model" type="char*32" category="carma"
Expand Down
9 changes: 9 additions & 0 deletions cime_config/testdefs/testlist_cam.xml
Original file line number Diff line number Diff line change
Expand Up @@ -174,6 +174,15 @@
<options>
<option name="wallclock">00:10:00</option>
</options>
<!-- Replace f10_f10_mg37 with CAM-SE-CSLAM grid when ready -->
</test>
<test compset="QPC6" grid="ne5pg3_ne5pg3_mg37" name="ERP_Ln9" testmods="cam/outfrq9s_clubbmf">
<machines>
<machine name="izumi" compiler="nag" category="aux_cam"/>
</machines>
<options>
<option name="wallclock">00:10:00</option>
</options>
</test>
<test compset="QPRCEMIP" grid="ne30_ne30_mg17" name="ERP_Ln9" testmods="cam/outfrq9s">
<machines>
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
./xmlchange ROF_NCPL=\$ATM_NCPL
./xmlchange GLC_NCPL=\$ATM_NCPL
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
mfilt=1,1,1,1,1,1
ndens=1,1,1,1,1,1
nhtfrq=9,9,9,9,9,9
inithist='ENDOFRUN'
do_clubb_mf=.true.
do_clubb_mf_diag=.true.
deep_scheme='off'
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
!----------------------------------------------------------------------------------
! Users should add all user specific namelist changes below in the form of
! namelist_var = new_namelist_value
!
! Include namelist variables for drv_flds_in ONLY if -megan and/or -drydep options
! are set in the CLM_NAMELIST_OPTS env variable.
!
! EXCEPTIONS:
! Set use_cndv by the compset you use and the CLM_BLDNML_OPTS -dynamic_vegetation setting
! Set use_vichydro by the compset you use and the CLM_BLDNML_OPTS -vichydro setting
! Set use_cn by the compset you use and CLM_BLDNML_OPTS -bgc setting
! Set use_crop by the compset you use and CLM_BLDNML_OPTS -crop setting
! Set spinup_state by the CLM_BLDNML_OPTS -bgc_spinup setting
! Set irrigate by the CLM_BLDNML_OPTS -irrig setting
! Set dtime with L_NCPL option
! Set fatmlndfrc with LND_DOMAIN_PATH/LND_DOMAIN_FILE options
! Set finidat with RUN_REFCASE/RUN_REFDATE/RUN_REFTOD options for hybrid or branch cases
! (includes $inst_string for multi-ensemble cases)
! Set glc_grid with CISM_GRID option
! Set glc_smb with GLC_SMB option
! Set maxpatch_glcmec with GLC_NEC option
! Set glc_do_dynglacier with GLC_TWO_WAY_COUPLING env variable
!----------------------------------------------------------------------------------
hist_nhtfrq = 9
hist_mfilt = 1
hist_ndens = 1

2 changes: 0 additions & 2 deletions cime_config/usermods_dirs/scam_SAS/user_nl_cam
Original file line number Diff line number Diff line change
@@ -1,6 +1,4 @@
use_gw_front = .false.
scmlon=$PTS_LON
scmlat=$PTS_LAT
iopfile="$DIN_LOC_ROOT/atm/cam/scam/iop/SAS_ideal_4scam.nc"
ncdata="$DIN_LOC_ROOT/atm/cam/scam/iop/CESM2.F2000climo.IOP_SITES.cam.i.0003-06-01-00000.nc"
mfilt=30
Expand Down
2 changes: 0 additions & 2 deletions cime_config/usermods_dirs/scam_arm95/user_nl_cam
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
scmlon=$PTS_LON
scmlat=$PTS_LAT
ncdata="$DIN_LOC_ROOT/atm/cam/scam/iop/CESM2.F2000climo.IOP_SITES.cam.i.0003-07-01-00000.nc"
iopfile="$DIN_LOC_ROOT/atm/cam/scam/iop/ARM95_4scam.nc"
mfilt=1500
Expand Down
2 changes: 0 additions & 2 deletions cime_config/usermods_dirs/scam_arm97/user_nl_cam
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
scmlon=$PTS_LON
scmlat=$PTS_LAT
iopfile="$DIN_LOC_ROOT/atm/cam/scam/iop/ARM97_4scam.nc"
ncdata="$DIN_LOC_ROOT/atm/cam/scam/iop/CESM2.F2000climo.IOP_SITES.cam.i.0003-06-01-00000.nc"
mfilt=2088
Expand Down
2 changes: 0 additions & 2 deletions cime_config/usermods_dirs/scam_atex/user_nl_cam
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
scmlon=$PTS_LON
scmlat=$PTS_LAT
iopfile="$DIN_LOC_ROOT/atm/cam/scam/iop/ATEX_48hr_4scam.nc"
ncdata="$DIN_LOC_ROOT/atm/cam/scam/iop/CESM2.F2000climo.IOP_SITES.cam.i.0003-02-01-00000.nc"
mfilt=2088
Expand Down
2 changes: 0 additions & 2 deletions cime_config/usermods_dirs/scam_bomex/user_nl_cam
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
scmlon=$PTS_LON
scmlat=$PTS_LAT
iopfile="$DIN_LOC_ROOT/atm/cam/scam/iop/BOMEX_5day_4scam.nc"
ncdata="$DIN_LOC_ROOT/atm/cam/scam/iop/CESM2.F2000climo.IOP_SITES.cam.i.0003-06-01-00000.nc"
mfilt=2088
Expand Down
2 changes: 0 additions & 2 deletions cime_config/usermods_dirs/scam_cgilsS11/user_nl_cam
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
scmlon=$PTS_LON
scmlat=$PTS_LAT
iopfile="$DIN_LOC_ROOT/atm/cam/scam/iop/S11_CTL_MixedLayerInit_reduced.nc"
ncdata="$DIN_LOC_ROOT/atm/cam/scam/iop/CESM2.F2000climo.IOP_SITES.cam.i.0003-07-01-00000.nc"
mfilt=2088
Expand Down
2 changes: 0 additions & 2 deletions cime_config/usermods_dirs/scam_cgilsS12/user_nl_cam
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
scmlon=$PTS_LON
scmlat=$PTS_LAT
iopfile="$DIN_LOC_ROOT/atm/cam/scam/iop/S12_CTL_MixedLayerInit_reduced.nc"
ncdata="$DIN_LOC_ROOT/atm/cam/scam/iop/CESM2.F2000climo.IOP_SITES.cam.i.0003-07-01-00000.nc"
mfilt=2088
Expand Down
2 changes: 0 additions & 2 deletions cime_config/usermods_dirs/scam_cgilsS6/user_nl_cam
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
scmlon=$PTS_LON
scmlat=$PTS_LAT
iopfile="$DIN_LOC_ROOT/atm/cam/scam/iop/S6_CTL_reduced.nc"
ncdata="$DIN_LOC_ROOT/atm/cam/scam/iop/CESM2.F2000climo.IOP_SITES.cam.i.0003-07-01-00000.nc"
mfilt=2088
Expand Down
2 changes: 0 additions & 2 deletions cime_config/usermods_dirs/scam_dycomsRF01/user_nl_cam
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
scmlon=$PTS_LON
scmlat=$PTS_LAT
iopfile="$DIN_LOC_ROOT/atm/cam/scam/iop/DYCOMSrf01_4day_4scam.nc"
ncdata="$DIN_LOC_ROOT/atm/cam/scam/iop/CESM2.F2000climo.IOP_SITES.cam.i.0003-07-01-00000.nc"
mfilt=2088
Expand Down
2 changes: 0 additions & 2 deletions cime_config/usermods_dirs/scam_dycomsRF02/user_nl_cam
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
scmlon=$PTS_LON
scmlat=$PTS_LAT
iopfile="$DIN_LOC_ROOT/atm/cam/scam/iop/DYCOMSrf02_48hr_4scam.nc"
ncdata="$DIN_LOC_ROOT/atm/cam/scam/iop/CESM2.F2000climo.IOP_SITES.cam.i.0003-07-01-00000.nc"
mfilt=2088
Expand Down
2 changes: 0 additions & 2 deletions cime_config/usermods_dirs/scam_gateIII/user_nl_cam
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
scmlon=$PTS_LON
scmlat=$PTS_LAT
iopfile="$DIN_LOC_ROOT/atm/cam/scam/iop/GATEIII_4scam_c170809.nc"
ncdata="$DIN_LOC_ROOT/atm/cam/scam/iop/CESM2.F2000climo.IOP_SITES.cam.i.0003-08-01-00000.nc"
mfilt=1440
Expand Down
2 changes: 0 additions & 2 deletions cime_config/usermods_dirs/scam_mpace/user_nl_cam
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
scmlon=$PTS_LON
scmlat=$PTS_LAT
iopfile="$DIN_LOC_ROOT/atm/cam/scam/iop/MPACE_4scam.nc"
ncdata="$DIN_LOC_ROOT/atm/cam/scam/iop/CESM2.F2000climo.IOP_SITES.cam.i.0003-10-01-00000.nc"
mfilt=1242
Expand Down
2 changes: 0 additions & 2 deletions cime_config/usermods_dirs/scam_rico/user_nl_cam
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
scmlon=$PTS_LON
scmlat=$PTS_LAT
iopfile="$DIN_LOC_ROOT/atm/cam/scam/iop/RICO_3day_4scam.nc"
ncdata="$DIN_LOC_ROOT/atm/cam/scam/iop/CESM2.F2000climo.IOP_SITES.cam.i.0003-07-01-00000.nc"
mfilt=2088
Expand Down
2 changes: 0 additions & 2 deletions cime_config/usermods_dirs/scam_sparticus/user_nl_cam
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
scmlon=$PTS_LON
scmlat=$PTS_LAT
iopfile="$DIN_LOC_ROOT/atm/cam/scam/iop/SPARTICUS_4scam.nc"
ncdata="$DIN_LOC_ROOT/atm/cam/scam/iop/CESM2.F2000climo.IOP_SITES.cam.i.0003-04-01-00000.nc"
mfilt=2156
Expand Down
2 changes: 0 additions & 2 deletions cime_config/usermods_dirs/scam_togaII/user_nl_cam
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
scmlon=$PTS_LON
scmlat=$PTS_LAT
iopfile="$DIN_LOC_ROOT/atm/cam/scam/iop/TOGAII_4scam.nc"
ncdata="$DIN_LOC_ROOT/atm/cam/scam/iop/CESM2.F2000climo.IOP_SITES.cam.i.0003-12-01-00000.nc"
mfilt=9
Expand Down
2 changes: 0 additions & 2 deletions cime_config/usermods_dirs/scam_twp06/user_nl_cam
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
scmlon=$PTS_LON
scmlat=$PTS_LAT
iopfile="$DIN_LOC_ROOT/atm/cam/scam/iop/TWP06_4scam.nc"
ncdata="$DIN_LOC_ROOT/atm/cam/scam/iop/CESM2.F2000climo.IOP_SITES.cam.i.0003-01-01-00000.nc"
mfilt=1926
Expand Down
118 changes: 118 additions & 0 deletions doc/ChangeLog
Original file line number Diff line number Diff line change
@@ -1,5 +1,123 @@
===============================================================

Tag name: cam6_3_006
Originator(s): herrington, cacraig
Date: Dec 2, 2020
One-line Summary: Initial implementation of mass fluxes in CLUBB (CLUBB+MF) & scam bug-fix
Github PR URL: https://github.com/ESCOMP/CAM/pull/221

Purpose of changes (include the issue number and title text for each relevant GitHub issue):
- Implement CLUBB-MF functionality on trunk (#181)
- FSCAM is failing prealpha test (#213)
- scmlat/scmlon nl's removed in prior tag, but still being set for scam cases
- Add back in TR8 and TGIT regression tests (#281)

Describe any changes made to build system: NA

Describe any changes made to the namelist:
- created namelist group clubb_mf_nl and added namelist variables: do_clubb_mf, do_clubb_mf_diag, lubb_mf_L0,
clubb_mf_ent0 and clubb_mf_nup
- removed scmlat/scmlon declarations in user_nl_cam for scam cases in cime_config/usermods_dirs/scam_xxx

List any changes to the defaults for the boundary datasets: NA

Describe any substantial timing or memory changes: NA

Code reviewed by: cacraig, goldy, eaton, nusbaume

List all files eliminated:

List all files added and what they do:
A src/physics/cam/clubb_mf.F90
- new mass flux subroutine

A cime_config/testdefs/testmods_dirs/cam/outfrq9s_clubbmf/shell_commands
A cime_config/testdefs/testmods_dirs/cam/outfrq9s_clubbmf/user_nl_cam
A cime_config/testdefs/testmods_dirs/cam/outfrq9s_clubbmf/user_nl_clm
- settings for the clubbmf test

List all existing files that have been modified, and describe the changes:

M bld/build-namelist
- added clubb_mf namelists in the do_clubb_sgs if statement

M bld/namelist_files/namelist_defaults_cam.xml
- added clubb_mf namelist defaults

M bld/namelist_files/namelist_definition.xml
- added clubb_mf namelist definitions

M cime_config/testdefs/testlist_cam.xml
- add new test for clubbmf

M cime_config/usermods_dirs/scam_SAS/user_nl_cam
M cime_config/usermods_dirs/scam_arm95/user_nl_cam
M cime_config/usermods_dirs/scam_arm97/user_nl_cam
M cime_config/usermods_dirs/scam_atex/user_nl_cam
M cime_config/usermods_dirs/scam_bomex/user_nl_cam
M cime_config/usermods_dirs/scam_cgilsS11/user_nl_cam
M cime_config/usermods_dirs/scam_cgilsS12/user_nl_cam
M cime_config/usermods_dirs/scam_cgilsS6/user_nl_cam
M cime_config/usermods_dirs/scam_dycomsRF01/user_nl_cam
M cime_config/usermods_dirs/scam_dycomsRF02/user_nl_cam
M cime_config/usermods_dirs/scam_gateIII/user_nl_cam
M cime_config/usermods_dirs/scam_mpace/user_nl_cam
M cime_config/usermods_dirs/scam_rico/user_nl_cam
M cime_config/usermods_dirs/scam_sparticus/user_nl_cam
M cime_config/usermods_dirs/scam_togaII/user_nl_cam
M cime_config/usermods_dirs/scam_twp06/user_nl_cam
- removed deprecated scm_lat/scm_lon entries from all scam user_nl_cam files

M src/dynamics/mpas/dp_coupling.F90
M src/dynamics/mpas/driver/cam_mpas_subdriver.F90
- fixed constants which needed an r8 or RKIND added to them

M src/physics/cam/clubb_intr.F90
- added call to mass flux routine (integrate_mf) defined in new module clubb_mf.F90
- additional variables required for input to mass flux routine have been defined
- added output fields for clubb_mf

M test/system/test_driver.sh
- add in TR8 and TGIT tests for izumi runs (output goes to the screen)

If there were any failures reported from running test_driver.sh on any test
platform, and checkin with these failures has been OK'd by the gatekeeper,
then copy the lines from the td.*.status files for the failed tests to the
appropriate machine below. All failed tests must be justified.

cheyenne/intel/aux_cam:

izumi/nag/aux_cam:

izumi/pgi/aux_cam:

CAM tag used for the baseline comparison tests if different than previous
tag:

Summarize any changes to answers, i.e.,
- what code configurations:
- what platforms/compilers:
- nature of change (roundoff; larger than roundoff but same climate; new
climate):
- namelist activating mass fluxes in this PR have been set to .false. in namelist_defaults
- so out of the box answers do not change.

If bitwise differences were observed, how did you show they were no worse
than roundoff?

If this tag changes climate describe the run(s) done to evaluate the new
climate in enough detail that it(they) could be reproduced, i.e.,
- source tag (all code used must be in the repository):
- platform/compilers:
- configure commandline:
- build-namelist command (or complete namelist):
- MSS location of output:

MSS location of control simulations used to validate new climate:

URL for AMWG diagnostics output used to validate new climate:
===============================================================

Tag name: cam6_3_005
Originator(s): fvitt
Date: 25 Nov 2020
Expand Down
6 changes: 3 additions & 3 deletions src/dynamics/mpas/dp_coupling.F90
Original file line number Diff line number Diff line change
Expand Up @@ -740,8 +740,8 @@ subroutine dry_hydrostatic_pressure(nCells, nVertLevels, zz, zgrid, rho_zz, thet
!
! TODO: Should temperature here be virtual temperature?
!
ptop_int(:) = 2.0 * ptop_mid(:) &
/ (1.0 + exp( (zgrid(nVertLevels+1,:) - zgrid(nVertLevels,:)) * gravity / rgas / ttop_mid(:)))
ptop_int(:) = 2.0_r8 * ptop_mid(:) &
/ (1.0_r8 + exp( (zgrid(nVertLevels+1,:) - zgrid(nVertLevels,:)) * gravity / rgas / ttop_mid(:)))


!
Expand All @@ -759,7 +759,7 @@ subroutine dry_hydrostatic_pressure(nCells, nVertLevels, zz, zgrid, rho_zz, thet
pintdry(nVertLevels+1,iCell) = ptop_int(iCell)
do k = nVertLevels, 1, -1
pintdry(k,iCell) = pintdry(k+1,iCell) + gravity * zz(k,iCell) * rho_zz(k,iCell) * dz(k)
pmiddry(k,iCell) = 0.5 * (pintdry(k+1,iCell) + pintdry(k,iCell))
pmiddry(k,iCell) = 0.5_r8 * (pintdry(k+1,iCell) + pintdry(k,iCell))
end do
end do

Expand Down
2 changes: 1 addition & 1 deletion src/dynamics/mpas/driver/cam_mpas_subdriver.F90
Original file line number Diff line number Diff line change
Expand Up @@ -1997,7 +1997,7 @@ subroutine cam_mpas_compute_unit_vectors()

east(1,iCell) = -sin(lonCell(iCell))
east(2,iCell) = cos(lonCell(iCell))
east(3,iCell) = 0.0
east(3,iCell) = 0.0_RKIND

! Normalize
east(1:3,iCell) = east(1:3,iCell) / sqrt(sum(east(1:3,iCell) * east(1:3,iCell)))
Expand Down
Loading