Fix XeHe molar fraction material construction#276
Open
jerenner wants to merge 1 commit into
Open
Conversation
G4Material::AddElement interprets the numeric fraction argument as a mass fraction. GXeHe was using the requested Xe percentage directly, which made 85/15 Xe/He become 85/15 by mass rather than by molar fraction. Compute the enriched-xenon molar mass, form the Xe/He mixture molar mass from the requested molar fractions, and derive the mass fractions passed to Geant4 from those molar fractions. Use the same mixture molar mass for the gas density calculation so the material density and composition are internally consistent.
afd46b9 to
7ebad88
Compare
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.
Fixes a bug in the creation of the Xe/He mixture, identified by @martinperezmaneiro
G4Material::AddElement interprets the numeric fraction argument as a mass fraction. GXeHe was using the requested Xe percentage directly, which made 85/15 Xe/He become 85/15 by mass rather than by molar fraction.
Compute the enriched-xenon molar mass, form the Xe/He mixture molar mass from the requested molar fractions, and derive the mass fractions passed to Geant4 from those molar fractions. Use the same mixture molar mass for the gas density calculation so the material density and composition are internally consistent.
Add a regression test for an 85/15 Xe/He mixture that checks the Geant4 mass fractions, the inferred molar fraction, and the density calculation.