Skip to content

Merging MSRE Xe Poisoning Model#788

Open
hapfang wants to merge 29 commits into
idaholab:develfrom
hapfang:xe
Open

Merging MSRE Xe Poisoning Model#788
hapfang wants to merge 29 commits into
idaholab:develfrom
hapfang:xe

Conversation

@hapfang
Copy link
Copy Markdown
Collaborator

@hapfang hapfang commented Apr 4, 2026

The PR related to #768 is now ready for review and merging.

Comment thread doc/content/msr/msre/index.md Outdated
Comment thread doc/content/msr/msre/msre_xe.md Outdated

### Reactivity Impact of Xe Poisoning

A reference case without Xe poisoning was also evaluated. Comparison of $k_{eff}$ between poisoned and unpoisoned coupled cases indicates an estimated reactivity penalty of approximately -410 pcm, which is in good agreement with trends from the SAM-Griffin coupled study.
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.

that's a lot less than PWRs? is that a core size thing or strictly the external removal?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

Indeed, i think it is probably due to the combination of both. the value is also close in a parallel SAM-Griffin modeling study

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.

what is the penalty now with the fixes in the model

Comment thread doc/content/msr/msre/msre_xe.md Outdated
Comment thread doc/content/msr/msre/msre_xe.md Outdated
Comment thread doc/content/msr/msre/msre_xe.md Outdated
Comment thread msr/msre/xe_poisoning/th_xe.i Outdated
Comment thread msr/msre/xe_poisoning/th_xe.i Outdated
Comment thread msr/msre/xe_poisoning/th_xe.i Outdated
Comment thread msr/msre/xe_poisoning/neu_xe.i
Comment thread msr/msre/xe_poisoning/neu_xe.i Outdated
@hapfang
Copy link
Copy Markdown
Collaborator Author

hapfang commented May 2, 2026

🚀 PR Update: Refactoring & Review Comments Addressed

Hi @GiudGiud,

I have completed the refactoring of the MSRE Xenon poisoning model and addressed your feedback on the input files. The model is now much leaner and fully utilizes the modern [Physics] syntax.

🛠️ Physics Syntax Migration

  • Thermal-Hydraulics (th_xe.i): Migrated the [NavierStokesFV] block to the new syntax. It is now split into [Physics]/[NavierStokes]/[Flow] and [FluidHeatTransfer], effectively removing the deprecated add_energy_equation = true parameter.
  • Scalar Transport: Replaced manual [Variables] and [FVKernels] for delayed neutron precursors ($c_1–c_6$) and isotopes ($I_{135}, Xe_{135}$) with the [ScalarTransport] system. This handles advection and diffusion automatically and significantly simplifies the input file.

⚙️ Logic & Parameter Adjustments

  • Consistent Scaling: I have updated consistent_scaling to 1.0. This ensures a more physical representation of the system while maintaining numerical stability within the new physics blocks.
  • Pressure Pinning: I tested the transition from point-value-uo to point-value. However, this change resulted in a noticeable degradation of convergence speed, so I have disregarded this change to maintain model performance.
  • Cleanup: Removed redundant parameters in the [MultiApps] block (update_old_solution_when_keeping_solution_during_restore and enable = true).

📝 Documentation & Metadata

  • Tagging & Status: Updated the model name to Molten Salt Reactor Experiment MultiPhysics Primary loop Model. Changed the V&V status to "demonstration" and refined transient tags to include ;Xenon.
  • Technical Clarity: * Added source attribution for the 16-group cross sections (Mauricio's model).
    • Clarified that cross-section updates account for temperature feedback and DNP advection.
    • Added a section explaining why the $-410$ pcm reactivity penalty is lower than a typical PWR (noting online gas stripping and lower power density).
  • Terminology: Standardized all mentions of "Master/Sub-app" to "Parent/Child" and fixed the "Plenum" typos.

The model is now updated and ready for further review. All tests have been verified against the new syntax.

Comment thread doc/content/msr/msre/msre_xe.md Outdated
Comment thread doc/content/msr/msre/msre_xe.md Outdated
Comment thread doc/content/msr/msre/msre_xe.md Outdated
Comment thread msr/msre/xe_poisoning/tests Outdated
Comment thread doc/content/msr/msre/msre_xe.md Outdated
Comment thread msr/msre/xe_poisoning/th_xe.i
Comment thread msr/msre/xe_poisoning/th_xe.i Outdated
Comment thread msr/msre/xe_poisoning/th_xe.i
Comment thread msr/msre/xe_poisoning/th_xe.i
Comment thread msr/msre/xe_poisoning/neu_xe.i Outdated
Comment thread doc/content/media/msr/msre/xe_poisoning/xe_feedback.png
@hapfang
Copy link
Copy Markdown
Collaborator Author

hapfang commented May 4, 2026

Hi @GiudGiud ,

I’ve addressed the review comments for PR #788. Below is a summary of the updates and a few notes on why certain refactoring suggestions were not implemented in this iteration.

Completed Updates

  • Documentation & Accuracy: * Updated repository links and refined the physics scope in msre_xe.md to explicitly define advection, diffusion, and gaseous fission product removal behavior.

    • Corrected salt property descriptions and added a note regarding the explicit TH-neutronics coupling.
    • Applied the preferred "gaseous fission product removal" terminology throughout.
  • Model Simplification:

    • Refined the pump model to a single-direction force (pump_y) and removed unnecessary top boundary symmetry conditions in the FVBCs.
    • Removed redundant vel_x and vel_y fields and their associated transfers since they are not required by Griffin
  • Scripts & Testing:

    • Added the Python plotting script for Xe concentration and updated the corresponding results figure.
    • Fixed the tests syntax by updating the executable_pattern to support the BlueCRAB coupled environment.

Technical Notes on Refactoring

There are three areas where I have opted to maintain the current manual implementation:

  1. Scalar Transport Refactor: I attempted to use the compact ScalarTransport syntax, but encountered issues with strict list-size mapping and the sequential $^{135}\text{I} \rightarrow ^{135}\text{Xe}$ coupling. I have kept the manual FVKernels to ensure technical accuracy and stability.
  2. Convection Kernels: I’ve left the ambient convection kernels as-is for now. Given that the integrated physics-based syntax is still relatively new, I prefer the current stable implementation for this initial VTB release.
  3. AuxVars Output: The outputs = 'exodus' feature within FunctorMaterials is not currently supported by the version of BlueCRAB available on the Sawtooth cluster. Thus, I have retained the existing output implementation for now, as I am unable to verify the newer FunctorMaterials output feature within my current testing environment.

The model is now in a stable, cleaned-up state. Please let me know if you have any further suggestions before we move toward merging.

Comment thread doc/content/media/msr/msre/xe_poisoning/xe_feedback.png
Comment thread doc/content/msr/msre/msre_xe.md Outdated
Comment thread doc/content/msr/msre/msre_xe.md Outdated
Comment thread doc/content/msr/msre/msre_xe.md Outdated
Comment thread doc/content/msr/msre/msre_xe.md Outdated

### Reactivity Impact of Xe Poisoning

A reference case without Xe poisoning was also evaluated. Comparison of $k_{eff}$ between poisoned and unpoisoned coupled cases indicates an estimated reactivity penalty of approximately -410 pcm, which is in good agreement with trends from the SAM-Griffin coupled study.
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.

what is the penalty now with the fixes in the model

Comment thread msr/msre/xe_poisoning/neu_xe.i
Comment thread msr/msre/xe_poisoning/neu_xe.i Outdated
Comment thread msr/msre/xe_poisoning/neu_xe.i Outdated
@GiudGiud
Copy link
Copy Markdown
Collaborator

GiudGiud commented May 4, 2026

Refined the pump model to a single-direction force (pump_y) and removed unnecessary top boundary symmetry conditions in the FVBCs.

I'm afraid this might have changed the flow rate? We should check which change impacted the results so much.
I imagine the pump force was selected to meet a certain mass flow rate. We need to have the right mdot.
This is actually fairly easily to tune using the PIDTransientControl btw

@hapfang
Copy link
Copy Markdown
Collaborator Author

hapfang commented May 4, 2026

Hi @GiudGiud, thanks for the thorough review. I will probably have to wait until the weekend to get time to address them.

@GiudGiud
Copy link
Copy Markdown
Collaborator

GiudGiud commented May 4, 2026

Works for me.
Additional comment now that I have the PR locally is that the files have executable permissions which is odd.

chmod -x <each file>

will fix that

EDIT: fixed in PR

Comment thread doc/content/msr/msre/msre_xe.md
@moosebuild
Copy link
Copy Markdown

moosebuild commented May 18, 2026

Job VTB Documentation, step Sync Docs on 3bca4c2 wanted to post the following:

View the site here

This comment will be updated on new commits.

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.

3 participants