Skip to content

feat(dfns): add observation types to components - #381

Merged
wpbonelli merged 3 commits into
MODFLOW-ORG:developfrom
wpbonelli:obs-id-union
Oct 6, 2026
Merged

wpbonelli merged 3 commits into
MODFLOW-ORG:developfrom
wpbonelli:obs-id-union

Conversation

@wpbonelli

Copy link
Copy Markdown
Member

add observations to components that accept an OBS file to specify observation types, so a reader knows e.g. whether 3 4 is a cellid or two indices

wpbonelli and others added 3 commits October 5, 2026 18:44
utl-obs's id/id2 union doesn't say which kind of id an observation takes;
MF6 decides per observation type and parent. Components accepting an OBS
file now list their observation types in `observations`, each narrowing
id/id2 to some of the union's arms, with an optional fk for an index.

The table is transcribed from each package's id processor in the MF6
Fortran, which covers obstypes the docs omit (API, SWF-family packages)
and corrects one they get wrong (GWE LKE's lke takes no ID2).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Each observation type is now an untagged input field giving what follows
it on an observation line, instead of a separate id/id2 vocabulary. A
record's first field fills utl-obs's id and its second id2; a union's
arms are alternatives. This expresses an id2 that only follows an index
(LAK's iconn) or follows a boundname too (UZF's depth) without special
cases, and reuses the existing fk and cellid validation.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@wpbonelli wpbonelli added this to the 1.10.0 milestone Oct 6, 2026
@wpbonelli wpbonelli added the enhancement New feature or request label Oct 6, 2026
@wpbonelli
wpbonelli marked this pull request as ready for review October 6, 2026 02:06
@wpbonelli
wpbonelli merged commit 4ffa2e8 into MODFLOW-ORG:develop Oct 6, 2026
15 checks passed
@wpbonelli
wpbonelli deleted the obs-id-union branch October 6, 2026 02:06
wpbonelli added a commit that referenced this pull request Oct 7, 2026
Model name files can have observation files in their packages block but this was missed in #381. Set utl-obs parent = ["model", "package"]. Also obs packages are not really multipackages.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant