Skip to content

SpalartAllmarasDDES turblence model together with neoPisoFoam#233

Open
HendriceH wants to merge 13 commits into
developfrom
feat/turbModel
Open

SpalartAllmarasDDES turblence model together with neoPisoFoam#233
HendriceH wants to merge 13 commits into
developfrom
feat/turbModel

Conversation

@HendriceH
Copy link
Copy Markdown
Collaborator

@HendriceH HendriceH commented Feb 6, 2026

Implementation of turbulence model

This PR is linked to exasim-project/NeoN#428.
It adds the following components:

  1. Integration tests for SA-DDES turbulence model
  2. neoPisoFoam solver incorporating the turbulence equations
  3. Required change to cmake/OpenFOAM.cmake to resolve include chain in OpenFOAM turbulence model header
  4. Wrapper around turbulence functions to clean up the solver

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Feb 6, 2026

Deployed test documentation to https://exasim-project.com/NeoFOAM/Build_PR_233

Copy link
Copy Markdown
Contributor

@greole greole left a comment

Choose a reason for hiding this comment

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

some comments about unnessary files and comments in the case setups.

ddtSchemes
{
default Euler;
// ddt(nfU) BDF1;
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

please remove all the nfU field comments

Suggested change
// ddt(nfU) BDF1;

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

what is the difference to blockMeshDict.orig and do we need both?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

these files are quite large. maybe we should add a Cmake traget to generate the meshes before running the tests. Otherwise, this will accumulate space and will become a pain.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I think the 0.02 folder should be removed.

After NeoN commit fa4fdf1055 ("make surface field contain only internal data"),
SurfaceField::internalVector() is sized mesh.nInternalFaces() only and boundary
face data moved to boundaryData().value(). divDevReff was missed during that
refactor: its boundary parallelFor iterated {nIF, tauF.size()} which now
degenerates to {nIntF, nIntF} (empty), silently dropping the boundary viscous
stress contribution and causing the SA-DDES wrapper test to fail the post-solve
U comparison at 1e-10.

Rewrite the boundary kernel to iterate {0, nBnd} and read from
tauF.boundaryData().value() with Sf[nIF + bfi], matching the pattern used by
gaussGreenGrad::computeGrad after the same refactor.
@HendriceH HendriceH removed the coordinated-merge Merges PRs on NeoFOAM and NeoN together label May 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants