Skip to content

Conversation

@wpbonelli
Copy link
Contributor

@wpbonelli wpbonelli commented Aug 13, 2025

Particle mass previously remained in storage regardless of particle status.

Add a termination budget term and (for now) assign all terminating particle mass to it. This balances the cumulative storage budget. This is first in a sequence of budget reworks. Next planned is an analog to transport's SSM so that mass terminating at assigned boundaries can be reported for the boundary as done for transport models. After that, advanced packages in the same pattern. But even then, a term for non-boundary termination will still be needed.

Also, report the cell-by-cell storage term, only the cumulative was reported up to now.

Incidentally, add a function to get a particle's unique ID (composite key of model ID, PRP ID, release point ID, and release time) as a string. We had this before, and removed it as it went unused, but it's convenient to use here as a hash table key to track which particles have terminated.

This PR includes a new test focused on the cumulative and cell by cell budget reporting, and renames an existing test which was called "budget" but really focused on intercell mass flows.


Checklist of items for pull request

  • Replaced section above with description of pull request
  • Added new test or modified an existing test
  • Ran ruff on new and modified python scripts in .doc, autotests, doc, distribution, pymake, and utils subdirectories.
  • Formatted new and modified Fortran source files with fprettify
  • Added doxygen comments to new and modified procedures
  • Updated develop.toml with a plain-language description of the bug fix, change, feature; required for changes that may affect users
  • Removed checklist items not relevant to this pull request


@requires_pkg("modflowapi")
@pytest.mark.parametrize("idx, name", enumerate(cases))
@pytest.mark.skip(reason="storage term disagreement")
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've been in touch with Josh about this. trying to get to the bottom of it. seems like something in the API

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant