You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
More info:
To improve the accuracy of flow over steep orography we are subtracting a reference profile for pressure-level thickness (dp_ref) from the pressure-level thickness (dp) before applying the hyperviscosity operator (del4). We forgot to subtract this profile for spectral-element tracer advection (prognostic variable is q * dp where q is mixing ratio) in the del4(q * dp) step of the algorithm. That is, the hyperviscosity operator should have been applied to q * (dp-dp_ref), however, is was only applied to q * dp. This leads to spurious vertical advection over steep orography. ACOM observed this issue for vertical profiles of N2O which only has a source at the surface and a sink in the stratosphere; hence N2O should never produce values that exceed the surface layer value throughout the column). Here is a reproduction of the error using "Cecille's" 58 layer setup using SE (ne30_ne30_mg17):
Figure 1
The Figure shows instantaneous profiles of N2O for every time-step in a one day run as a function of level index (index 1 is model top). When doing the same run with SE-CSLAM (ne30pg3_ne30pg3_mg17) we got:
Figure 2
(note that x-axis is different in every Figure!)
The SE-CSLAM solution is similar to the solution using MPAS and FV (not shown). The SE solution produces large new maxima which is highly unphysical.
When incl. the reference profile when applying hyperviscosity to spectral-element tracer advection we get the following solution with SE (this is the bug fix!) which is very similar to the SE-CSLAM ( as well as MPAS and FV) solutions:
Figure 3
NOTE: since SE-CSLAM internally advects all water species with the spectral-element tracer advection scheme in the dynamical core SE-CSLAM is also (but to a much lesser extent) impacted by this bug. Physics never directly sees the erroneous water values since physics only sees CSLAM tracer values, however, SE-CSLAM indirectly feels these errors since the dynamical core solver uses spectral-element values for water throughout the time-stepping and hence (u,v,T,dp) are affected by erroneous vertical transports of water. After physics is called the spectral-element water values are reset to the CSLAM values.
Figure 4 shows Figure 2 but with the bug fix:
Figure 4
Figure 4 and Figure 2 are notably different in terms of vertical transports in the boundary layer.
The purpose of this run is to check how our baseline setup is affected by this bug fix (note that the baseline setup uses SE-CSLAM).
The text was updated successfully, but these errors were encountered:
Description:
Same as #135 but with a bugfix in spectral-element advection (see description of the bugfix )
Source modifications:
In src/dynamics/se/dycore/prim_advance_mod.F90. replace
with
Case directory:
Locally (if still available):
/glade/p/cesmdata/cseg/runs/cesm2_0/f.cesm3_cam058b_mom.FWscHIST.ne30_L58.qdp_ref_bugfix.001
On github:
https://github.com/NCAR/amwg_dev/tree/f.cesm3_cam058b_mom.FWscHIST.ne30_L58.qdp_ref_bugfix.001
Sandbox:
Locally (if still available):
/glade/work/hannay/cesm_tags/cesm3_cam6_3_058_MOM_b
On github:
https://github.com/ESCOMP/CESM/tree/cesm3_cam6_3_058_MOM
hash: a454bb6
Diagnostics:
AMWG diags (if available)
https://webext.cgd.ucar.edu/FWscHIST/f.cesm3_cam058b_mom.FWscHIST.ne30_L58.qdp_ref_bugfix.001/atm/
Contacts:
@PeterHjortLauritzen, @JulioTBacmeister, @adamrher, @cecilehannay
More info:
To improve the accuracy of flow over steep orography we are subtracting a reference profile for pressure-level thickness (dp_ref) from the pressure-level thickness (dp) before applying the hyperviscosity operator (del4). We forgot to subtract this profile for spectral-element tracer advection (prognostic variable is q * dp where q is mixing ratio) in the del4(q * dp) step of the algorithm. That is, the hyperviscosity operator should have been applied to q * (dp-dp_ref), however, is was only applied to q * dp. This leads to spurious vertical advection over steep orography. ACOM observed this issue for vertical profiles of N2O which only has a source at the surface and a sink in the stratosphere; hence N2O should never produce values that exceed the surface layer value throughout the column). Here is a reproduction of the error using "Cecille's" 58 layer setup using SE (ne30_ne30_mg17):
Figure 1
The Figure shows instantaneous profiles of N2O for every time-step in a one day run as a function of level index (index 1 is model top). When doing the same run with SE-CSLAM (ne30pg3_ne30pg3_mg17) we got:
Figure 2
(note that x-axis is different in every Figure!)
The SE-CSLAM solution is similar to the solution using MPAS and FV (not shown). The SE solution produces large new maxima which is highly unphysical.
When incl. the reference profile when applying hyperviscosity to spectral-element tracer advection we get the following solution with SE (this is the bug fix!) which is very similar to the SE-CSLAM ( as well as MPAS and FV) solutions:
Figure 3
NOTE: since SE-CSLAM internally advects all water species with the spectral-element tracer advection scheme in the dynamical core SE-CSLAM is also (but to a much lesser extent) impacted by this bug. Physics never directly sees the erroneous water values since physics only sees CSLAM tracer values, however, SE-CSLAM indirectly feels these errors since the dynamical core solver uses spectral-element values for water throughout the time-stepping and hence (u,v,T,dp) are affected by erroneous vertical transports of water. After physics is called the spectral-element water values are reset to the CSLAM values.
Figure 4 shows Figure 2 but with the bug fix:
Figure 4
Figure 4 and Figure 2 are notably different in terms of vertical transports in the boundary layer.
The purpose of this run is to check how our baseline setup is affected by this bug fix (note that the baseline setup uses SE-CSLAM).
The text was updated successfully, but these errors were encountered: