AdditiveFOAM Release v2.0.0#95
Open
colemanjs wants to merge 17 commits into
Open
Conversation
* added refinement model * fixup: still need helper functions for moving beam * fixup * remove DTI * Replace segment class with more flexible pathVector class * first target volume refinement attempt * fixup * removed commented query functions from pathVector * removed commented query functions from pathVector * revert thermopath * revert time step
* added refinement model * fixup: still need helper functions for moving beam * fixup * remove DTI * Replace segment class with more flexible pathVector class * first target volume refinement attempt * fixup * removed commented query functions from pathVector * removed commented query functions from pathVector * revert thermopath * revert time step
Add a new nLightAFX heat source model for representing characterized nLight AFX beam profiles as a linear combination of inner and outer Gaussian-ring components. The model reads user-specified beam-shape parameters from inner and outer subdictionaries, including radius, sigma, and projected-Gaussian axial closure coefficients. The implementation uses the existing AdditiveFOAM moving heat source transient-depth logic with a single shared heat source depth. Each ring component is independently normalized using the closed-form radial and axial integrals, while the combined source applies alpha as the outer-ring power fraction. This avoids hard-coded AFX mode tables in the source code. ORNL-characterized AFX mode parameters are provided through the nLightAFX.cfg include file, so users can select a characterized mode in the heat source dictionary without editing or recompiling the model.
Add a tutorial demonstrating the tabulated heat source model with a uniformly spaced ASCII beam profile. The example uses a four-ring overlapping Gaussian beam shape stored in constant/beamProfile.txt and applies the projected axial distribution through the tabulated heat source coefficients. The README documents the required table format, coefficient dictionary, normalization behavior, and the geometry of the example four-ring beam profile. The tabulated distribution is normalized as a relative planar shape, while the total applied power remains controlled by the scan path.
…ction object has not been extensively tested and the introduction of new mesh states and cell maps may cause issues. We also don't support mesh distibution.
…coding style guide: whitespace, line endings, tabs, selected spacing rules, and optional/manual 80-column checks. It does not replace human review for OpenFOAM-specific stream formatting, mathematical expression layout, documentation style, or semantic C++ coding-practice rules.
…t sure that we have implemented CorrectPhi correctly. It should be avoided for now
gknapp1
reviewed
Jun 5, 2026
| const pointField& points = mesh_.points(); | ||
|
|
||
| treeBoundBox beamBb |
Collaborator
There was a problem hiding this comment.
I get a incomplete type compile error:
error: variable ‘Foam::treeBoundBox beamBb’ has initializer but incomplete type
I think this is due to a missing #include "treeBoundBox.H", but it isn't clear to me why it wasn't an issue before. Maybe a change in a different file? Anyway adding the include statement to the top of this file fixed it for me.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Draft PR for AdditiveFOAM v2.0.0.0