Skip to content

Fix Outflow population isolation and effective boundary coverage - #1390

Open
agourakis82 wants to merge 1 commit into
fmihpc:devfrom
agourakis82:fix/1211-outflow-species-coverage
Open

agourakis82 wants to merge 1 commit into
fmihpc:devfrom
agourakis82:fix/1211-outflow-species-coverage

Conversation

@agourakis82

Copy link
Copy Markdown

Related to #1211.

Outflow's species-prefixed parameters currently share registration storage. This change moves the face list and Vlasov scheme names into each species' parameter record, while keeping the global geometric face union.

It also checks explicit population coverage against the effective outer boundary, using the same stable precedence and registration-order ties as cell classification. A Maxwellian winner covers all populations; an Outflow winner requires an explicitly configured face for each population. An explicit None scheme remains valid.

This is a compatibility change: incomplete configurations previously accepted now fail with a population/face diagnostic. Please review whether this stricter admission contract is appropriate. Inner-boundary geometry does not substitute for the outer-face contract.

Tests use the production parser, Outflow implementation and solver. They cover species isolation, reversed registration, L1/L2 behavior, density moments, restart helpers, distributed VDF transfer, and mixed Outflow/Maxwellian precedence and ties. The native runner is wired into the CPU production CI build.

Validation: fresh GCC 15.2 C++23 builds in both single and double precision passed the native and mixed suites at one and two MPI ranks on one CPU node. Eight mixed-boundary cases passed in each rank/precision combination. Restoring only the preceding coverage-union implementation makes the same suite fail because it accepts incomplete coverage.

The solver smoke tests use translation only and reach timestep 2. This does not establish full-physics convergence, multi-node behavior or restart-file round trips. Runtime classification and VDF/moment formulas are unchanged.

This branch has not been deployed

No deployments
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.

1 participant