Skip to content

Updating main with fmuni branch - #163

Open
fmuni wants to merge 108 commits into
mainfrom
fmuni
Open

fmuni wants to merge 108 commits into
mainfrom
fmuni

Conversation

@fmuni

@fmuni fmuni commented Oct 12, 2026

Copy link
Copy Markdown
Collaborator

The branch has a few fixes including:

  • Correct BioReactingPhase model and associated documentation.
  • Correct path for video in rotating mesh tutorial
  • Added fvPatchField for recirculating species

fmuni added 30 commits December 30, 2024 15:12
* BubbleColumnLES test works with the new of12 module. Uses populationBalance and mass transfer.
* mesh_500mL generates a STR mesh using snappyHexMesh
* The old solver is updated as well as some stuff was missing
* The new solver also checks for anisotropy in the variations to discard local maxima/minima from the interface
* Removed critical point check for interface tracking. I have to think it through a bit more.
* Updated rotating mesh STR with correct patch creation
* Added compression and interface tracking to rotating mesh STR tutorial
* Rotating mesh STR has been succesfully tested for air/water in Earth, Moon, and space gravity
This can be used to compute the kLA. First compute mdoti = Su + Sp*Yi (no matter the phase). Then kLA = mdoti / ( Yi,g - Yi,l ) with sign depending on the phase chosen for computing mdoti.
* New geometry and properties
* Added switch for disabling energy solution
* This model is an alternative to the reactingPhase model that adds an uptake rate to a specie.
  The DCW should be provided as a scalarField.
fmuni added 15 commits July 29, 2026 23:04
* Added --test option to Allrun scripts that allows to run one step on one core and reports the test success
* Added missing Allclean scripts
* ci file modified accordingly
* Added README.md to bubble_column tutorial
* Update to index.rst to include OpenFOAM-13
* Update to multiphase.rst with newer models in multiphaseEuler
* Molar weights are not required as input anymore. They are now read from the physical properties dictionary.
* Updated Michaelis-Menten to account for density and volume fraction variations.
* Updated documentation.
@fmuni
fmuni requested review from malihass and mjrahimi October 12, 2026 19:19
@fmuni fmuni self-assigned this Oct 12, 2026
@fmuni fmuni added documentation Improvements or additions to documentation enhancement New feature or request labels Oct 12, 2026

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🟡 Changes recommended

The new boundary condition has startup, parallel-reduction, build-integration, and documentation issues.

5 open findings
What changed in this PR

Updates OF13 bioreaction kinetics and introduces a recirculated-species boundary condition.

Changes:

  • Uses thermodynamic molecular weights and phase-weighted density.
  • Adds a mapped recirculated-species patch field.
  • Adds standalone library build metadata.
File Description
BioReactingPhaseModel.H Removes stored molecular weights.
BioReactingPhaseModel.C Revises reaction-rate calculations.
recirculatedSpeciesFvPatchScalarField.H Declares and documents the boundary condition.
recirculatedSpeciesFvPatchScalarField.C Implements mapped recirculation behavior.
recirculatedSpecies/​Make/​options Defines library dependencies.
recirculatedSpecies/​Make/​files Defines the new library target.

🧠 Review effort: Balanced


💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment on lines +180 to +182
const scalar alphaRhoPhiTotp = max( mag( sum(alphaRhoPhip)),1e-16 );

const scalar Yr = mag( sum(alphaRhoPhip*Yp) ) / alphaRhoPhiTotp; // Mean mass fraction from the mapped patch

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Yeah I think Co pilot is right about this. If you parallelize such that the inlet patch is owned by different processors, each processor will use a different Y_r

@@ -0,0 +1,3 @@
recirculatedSpeciesFvPatchScalarField.C

LIB = $(FOAM_USER_LIBBIN)/librecirculatedSpecies

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Co pilot seems to think that recirculated species won't be compiled. Can you add a regression test under Regression-Test-OF13: in the ci.yml, that use recirculated species as a BC?

calculated as:

\f[
Y = Y_{0}*(1-r) *Y_{r}

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Yeah please fix this too. It really confused me at first when I read the PR haha

@malihass

malihass commented Oct 13, 2026 •

Copy link
Copy Markdown
Collaborator

It took me a while to understand what was happening, it might be worth adding a schematic of the recirculation you are modeling in the documentations (in \docs, I would put maybe a "Boundary condition" section between "Meshing" and "Uncertainty Quantification"). I would probably explain the recirculation BC from a physical perspective and also explain what does the table does for scheduling when Yr is used.

fmuni added 4 commits October 20, 2026 13:21
* boundaryConditios folder with master Make folder
* added compilation to Allwmake
* fixed issues in recirculatedSpecies
* the bubbleColumn tutorial in OF13 has been updated to include recirculation.
* No mapping anymore
* The boundary works as a fixedValue, but requires the target patch to be specified

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

documentation Improvements or additions to documentation enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants