Skip to content

Ocean init mode: use subglacial film below grounded ice#138

Draft
cbegeman wants to merge 470 commits intoE3SM-Ocean-Discussion:masterfrom
cbegeman:ocn/init-subglacial-film
Draft

Ocean init mode: use subglacial film below grounded ice#138
cbegeman wants to merge 470 commits intoE3SM-Ocean-Discussion:masterfrom
cbegeman:ocn/init-subglacial-film

Conversation

@cbegeman
Copy link
Copy Markdown
Collaborator

For meshes with a thin film below grounded ice, add the option to initialize the water column in grounded regions to 0 salinity and the local pressure-dependent freezing point, using the land-ice freezing point equation.

whannah1 and others added 30 commits December 11, 2025 09:51
This is useful for running small jobs and it exists, so why not
support it.

[BFB]
Reduce the max total tasks for pm-gpu to reflect there is only one CPU (where pm-cpu has 2 CPU's)
Do the same for muller and alvarez to be consistent.
Use same version of cmake for muller and alvarez as perlmutter.
bfb
…ject#7930)

Fix memory log filename collision in NINST > 1 configurations
Co-authored-by: mahf708 <122953255+mahf708@users.noreply.github.com>
ZM cleanup - final refactoring

This is [hopefully] the final phase of fortran refactoring before we start
the main C++ porting effort. One goal with this PR was to address some
lingering inconsistencies in zm_convr.F90. Many subroutines and variables
have been completely renamed to make the code more self-consistent and
readable. There are likely sub-optimal things left in the code, but I feel we're
at a good point to start porting and worry about these smaller details in the
C++ version to come. I also moved all ZM code to a dedicated folder =>
src/physics/cam/zm

The other main goal was to breakup some of the longer subroutines, and I
was partially successful at this. For the cloud properties subroutine I couldn't
think of a good way to break this up further without introducing non-BFB changes.

[BFB]

* origin/whannah/eam/zm-cleanup-11: (55 commits)
  minor fix
  fix typo
  fix variable description
  fix time step handling in EAMxx fortran bridge to ZM
  update units
  make zero initialization more consistent
  update mass flux names
  fixes from PR review
  lots more renaming
  rename sd
  rename qd
  rename su
  add comments
  rename maxi/maxg
  rename tl
  rename qstp
  more renaming
  bug fix
  additional renaming
  fix Chrysalis build
  ...
…-settings (PR E3SM-Project#7932)

For perlmutter (and similar NERSC machines), minor changes to machine settings
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 5 to 6.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](actions/upload-artifact@v5...v6)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps [DavidAnson/markdownlint-cli2-action](https://github.com/davidanson/markdownlint-cli2-action) from 21 to 22.
- [Release notes](https://github.com/davidanson/markdownlint-cli2-action/releases)
- [Commits](DavidAnson/markdownlint-cli2-action@v21...v22)

---
updated-dependencies:
- dependency-name: DavidAnson/markdownlint-cli2-action
  dependency-version: '22'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
…action-22' (PR E3SM-Project#7941)

Bumps DavidAnson/markdownlint-cli2-action from 21 to 22.
Default to machine-specific XML-based pe-counts
Addresses issue E3SM-Project#7014 by checking for a duplicate *.nc file that would be
created by a yaml using the same prefix, averaging type, and interval.

Commits have been tested for expected behavior on LC Intel (Dane) with an older version of E3SM.

Fixes E3SM-Project#7014

[BFB]
…t#7943)

This one-line fix prevents Haero's unit tests from being built within E3SM.
@ndkeen has verified that these tests are no longer built when this change is made.

[BFB]
…ect#7500)

Ocean to land one-way coupling

Implement a one-way coupling from ocean to land to simulate SLR effects
on coastal groundwater.

Implemented only with data ocean, a new stream was created from the
Global Tide and Surge Model simulations. Two new fields are registered
in the coupler to read the sea surface height (ssh) and coastal
inundation fraction (frac_h2oocn). In ELM, vertical infiltration of
ocean water due to ocean inundation, as well as the lateral flux due to
the water gradient between the ocean water level and the groundwater
table is implemented.

A new test for ELM-DOCN coupling is implemented.

[NML]
[BFB]
from c64260ed94aff167a59635ed4a9ae5af16824e91
to   d1acd48b77f9708c49d65f7246a101b08de08b6f

Fixes:
1) Fix ADIOS archiving issues in short term archiving script
2) Fix handling of namelist variables with uppercase characters
3) Set FORCE_BUILD_SMP in the python, not in the XML
   This prevents testcases from turning on SMP when it's not needed
4) Update cprnc from v1.1.3 to v1.1.4 (includes CMake fixes)
5) fix for create_clone issue E3SM-Project#4878

Changes:
1) Add EXCL_STRIDE to XML PE configs
2) Made ERI F1850C test work with gregorian calendar
3) wget server spider mode disabled
4) Changes needed for CESM to define an FUNITSHARE system test in the allactive area
5) Avoid creation of rpointer.*NINST_STRING files during short term archiving

[BFB]
jgfouca and others added 30 commits January 28, 2026 08:58
…E3SM-Project#7955)

Fix undefined behavior in MPAS registry parser

With gcc v13.3.0, I'm seeing unparsable
   if (Active .or. analysisModeActive)
clauses in the file
components/mpas-ocean/src/inc/structs_and_variables.inc generated by the
registry parser. The issue appears to be that the registry parser is
reading from and writing to the same string in statements like:
   sprintf(out_packages, "%s;%s", out_packages, token);
This is not allowed, as it can lead to race conditions and bad output
like I am seeing. This fix avoids this undefined behavior when appending
to out_packages in the registry parser by writing to a temporary string
and copying back.

[BFB]
Fix some issues in driver-moab's land import and move declaration of x2l_lm

Add handling of atm_gustiness and implicit_stress to the MOAB land import to bring the MOAB import
in line with the MCT import, which was previously covering for this missing functionality.

Relocate the allocation and initialization of x2l_lm earlier in init so "do_histinit" will work.

[BFB]
This commit removes a depracated capability in EAMxx, corrective_ml.
…warnings' (PR E3SM-Project#7967)

When the first choice variable for stdev_elev in surfrdMod and manunitro in pftvarcon modules
are not available, it sets to print a warning message then read the alternative. The changes here
are to minimize the warning printout.

[BFB]
Update modules on Improv:
* rm module purge
* newer cmake/3.30.5
* newer pnetcdf/1.14.1
Brings in a bug fix in assert macros that prevented
some error msg in EAMxx from being displayed.

[BFB]
Recent mods to the testmod introduced a bug for res
different from ne4pg2 or ne30pg2.

[BFB]
This fixes a race condition in CaarFunctor.

[BFB]
Begin ZM port by porting zm_conv_util

* Ports everything in zm_conv_util.F90:
 * entropy
 * ientropy
 * qsat_hPa
* Turn on ZM tests for GPU builds.
* Remove trailing whitespace from a few files.
* Remove some unused variables from ZM fortran files/subroutines.
* zm_transport_tracer assume dry so it can build standalone. May have to revisit this in the future.
* Loads of improvements to gen-boiler
 * Add support for ZM
 * When subroutine parameters are documented, preserve these comments in the C++
 * In test data structs, scalar decl order should match construction order to avoid warnings
 * Tests that only use scalars should not need different code generation
* Move some large routine impls out of zm_functions.hpp and into impl files.
* Update ZM testing to latest bfb unit test pattern

[BFB]
…ct#8027)

Restore a couple needed team barriers

This fixes a race condition in CaarFunctor that was introduced by E3SM-Project#7858.

[BFB]
Update project on ALCF Polaris to E3SMinput
Update RCS test pe-counts

Default to machine-specific XML-based pe-counts

[NML] -- due to test name changes
implement initial emulator infrastructure skeleton

Introducing a new modular C++ "emulator components" framework for E3SM, including a shared base class, a type-safe singleton context for managing component instances, and a unit test suite.

[BFB]
This commit removes a deprecated capability in EAMxx, corrective_ml.

This capability is no longer used and was only tested or even run on Livermore Computing machines.

Should replace E3SM-Project#8012

[BFB]
Update project on ALCF Polaris

Update project on ALCF Polaris to E3SMinput.

[BFB]
Update modules on Improv:
* rm module purge
* newer cmake/3.30.5
* newer pnetcdf/1.14.1
* fix batching: jobmin->nodemin

[BFB]
…E3SM-Project#8003)

Update solid and liquid runoff spreading for Greenland 1-to-10km configurations

Update solid (ice) and liquid (river) runoff spreading files for
configurations with dynamic 1-to-10km Greenland ice sheet. Change has
been tested in v3 low-res., coupled configuration for 5 years and
outputs have been examined and found to be reasonable.

[non-BFB] for tests with MALI Greenland 1-to-10km
…ect#7995)

HOMME2SCRIP.py:
remove unused variable
fix grid_rank (1=unstructured grid, 2=lat/lon grid)
includes speedups from PR E3SM-Project#7998

HOMME2META.py
added python version of script to create "latlon" file

template.job:
update namelist to demonstrate how to change output filename
add -c srun options needed for large RRM grids

[BFB] no source code changes - only changes to scripts used to generate atmospheric grid template files
These changes ensure that zenith angles are passed to FATES on non-continue restarts on the first step. The legacy FATES radiative transfer scheme (Norman) was not sensitive to this, but the newer two-stream scheme needs this information at this point in the call sequence.

[non-BFB] for FATES tests.
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.