Skip to content

Look at changes#2

Draft
tcclevenger wants to merge 625 commits into
tcclevenger/aurora_working_masterfrom
master
Draft

Look at changes#2
tcclevenger wants to merge 625 commits into
tcclevenger/aurora_working_masterfrom
master

Conversation

@tcclevenger
Copy link
Copy Markdown
Owner

No description provided.

bartgol and others added 30 commits April 6, 2026 10:25
Suggestion from @mahf708

Co-authored-by: Naser Mahfouz <naser.mahfouz@pnnl.gov>
Co-authored-by: Naser Mahfouz <naser.mahfouz@pnnl.gov>
…ct#8246)

Replace case_t0/reference_time_stamp with CF-compliant time units parsing
in EAMxx's data/time interpolation classes.

[BFB]
Allows to create horiz remappers from pre-built src and tgt grids.

[BFB]
- Add PressureLevel enum value to FieldTag with PLEV short alias
  and "plev" string representation
- Update field_layout.cpp to classify PLEV layouts correctly
  (Scalar3D, Vector3D, Tensor3D) via is_lev_tag predicate
- Update abstract_grid.cpp equivalent_layout() to handle PLEV by
  stripping the pressure dimension, computing the horizontal
  equivalent, then re-appending PLEV
- Update abstract_grid.cpp is_valid_layout() to validate PLEV layouts
  by stripping PLEV and checking the horizontal part
- Document that PLEV fields are not invalidated by reset_num_vertical_lev

Agent-Logs-Url: https://github.com/E3SM-Project/E3SM/sessions/0a86377f-7175-4e0d-abe4-f5db7b0255f6

Co-authored-by: bartgol <3226046+bartgol@users.noreply.github.com>
Replace all callers of old AbstractGrid API methods that took bool
midpoints with the new API that takes FieldTag vtag:
- get_3d_scalar_layout(bool) → get_3d_scalar_layout(FieldTag)
- get_3d_vector_layout(bool, ...) → get_3d_vector_layout(FieldTag, ...)
- get_3d_tensor_layout(bool, ...) → get_3d_tensor_layout(FieldTag, ...)
- get_vertical_layout(bool) → get_vertical_layout(FieldTag)
- reset_num_vertical_lev(int) → reset_vertical_configuration(int, VKind)

Tag mappings:
- true (midpoints) → LEV (FieldTag::LevelMidPoint)
- false (interfaces) → ILEV (FieldTag::LevelInterface)
- pressure grids → PLEV (FieldTag::PressureLevel)

VKind mappings:
- Model grids use AbstractGrid::VKind::Model
- Pressure level grids (nudging, data interpolation, vertical
  remapper targets) use AbstractGrid::VKind::Pressure

field_manager.cpp: pass FieldTag directly instead of converting
to/from bool via comparison.

horizontal_remapper.cpp: use grid->get_vkind() to preserve the
vertical kind when cloning grids.

vertical_remapper.cpp: use to_grid->get_vkind() in create_layout
to determine whether to output PLEV, LEV, or ILEV tags.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Co-authored-by: bartgol <3226046+bartgol@users.noreply.github.com>
…I to use FieldTag

- Add VKind enum (Model/Pressure) inside AbstractGrid
- Add m_vkind protected member (default Model) and get_vkind() getter
- Add private check_tag_vkind_compat(FieldTag) helper
- Replace get_vertical_layout(bool)/get_3d_scalar_layout(bool)/
  get_3d_vector_layout(bool,...)/get_3d_tensor_layout(bool,...) with
  FieldTag-based overloads throughout AbstractGrid, PointGrid, SEGrid
- Replace reset_num_vertical_lev(int) with
  reset_vertical_configuration(int, VKind) that also sets VKind
- Simplify equivalent_layout/is_valid_layout (no more PLEV special case)
- Update all callers: true→LEV, false→ILEV, pressure grids→PLEV
- Update vertical_remapper to use get_vkind() to determine output tag
- Update compatible_layouts to strip PLEV in addition to LEV/ILEV

Agent-Logs-Url: https://github.com/E3SM-Project/E3SM/sessions/05dc418a-2ea7-4ee3-a2c6-0ac2f5da3cfe

Co-authored-by: bartgol <3226046+bartgol@users.noreply.github.com>
Also change long name to LevelPressure, in analogy with
other vlev tags
Must also copy the vkind member
The IO grid from the streams already stores the correct tag names
Allows to correctly set the vkind of the data grid
as well as the grid after hremap
…8139)

Remove "backtend" diagnostic in favor of "prev" operator and expanded 
diagnostic alias capability

[BFB]
If vremap type is not Custom (or None) we must set
their vkind to Pressure
Optionally pass a "flood" variable to dead_mct_init so
it can retrieve the value of flood_present from the xrof namelist
when its called from xrof and pass it to the coupler in the
infobuffer
…roject#8232)

Use a different tag to identify layouts corresponding to pressure levels
(rather than model grid midpoints/interfaces)

[BFB]
ndkeen and others added 29 commits April 28, 2026 14:36
…3SM-Project#8331)

Disables mixed layer heat budget when tracer budgets are disabled

The mixed layer heat budget requires tracer budgets to be active for the
analysis member to function properly. If
   config_compute_active_tracer_budgets = .false.
and
   config_AM_mixedLayerHeatBudget_enable = .true.
some arrays in the analysis member are not initialized properly on some
machines/compilers causing errors. This PR issues a warning to the
MPAS-ocean log when this happens and disables the heat budget analysis
member.

Fixes E3SM-Project#8328

[BFB]
…ject#8330)

Add Field::alias overloads for metadata-only dimension tag renaming

[BFB]
Ensure eamxx meta-tests names are different from EKAT's ones.

[BFB]
)

CRYO2010-WW3 and WCYCL2010-WW3 comspets added.  Adds compsets for Bcase+WW3 with
repeat 2010 conditions intended for wave-enabled Polar configurations (BluePulse
experiments)

The Cryo+ww3 compset configuration exactly matches the cryo2010 compset in
E3SM-Project#8195, except it uses fully active WW3.

The WCYCL2010 Compset matches the standard Low Res Waves configuration, except
it uses repeat 2010 conditions.

[BFB]
Fix source file name for valg_fail unit test.

[BFB]
Make diagnostics independent of atm proc stack, simplifying the implementation.

[BFB]
Just to test copilot, I had it look at this file to find mistakes.
It found a few minor items that are fixed by this commit.

[BFB]
…ics-no-vec2 (PR E3SM-Project#8332)

For pm-cpu, add flag for Intel for one fortran source file
Add EAM-generated dust deposition capability to ocean

Currently, the atmospheric dust and iron deposition to the surface ocean
is specified to be a monthly climatology that has been used for all E3SM
ocean BGC cases for the past decade. This PR now allows the use of a
climatology generated by EAM from archival simulations with prognostic
dust deposition and time-variable solubility for iron in dust, which
requires extra fields to be read in. In addition, the wet and dry dust
flux that EAM sends through the coupler can now also be used by the
ocean in fully coupled runs so only the solubility is required to be
read in from a file.

[NML]
[non-BFB] - only for cases with marine BGC
…roject#8351)

Fix some minor issues in eamxx's main CMakeLists.txt file

Just to test copilot, I had it look at this file to find mistakes. It
found a few minor items that are fixed by this commit.

[BFB]
…ject#8334)

Add property tests and documentation for the P3 liquid relaxation timescale routine.

[BFB]
@tcclevenger tcclevenger marked this pull request as draft May 6, 2026 02:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.