Skip to content

Conversation

searscr
Copy link
Contributor

@searscr searscr commented Apr 22, 2025

Description of work

Update Absorption Concept page to explain about Gauge Volume and include work done in #39210 and #39208

Summary of work

Relates to EWM 10072

The concept page needs a section describing the calculation of the gauge volume from the beam plus sample information. It
also should annotate the two algorithms that support the functionality.

The two algorithms that are modified as part of this epic will have updates to their documentation that links to this new
section.

Further detail of work

The HTML document can be seen below
Screenshot from 2025-04-23 09-30-24

To test:


Reviewer

Please comment on the points listed below (full description).
Your comments will be used as part of the gatekeeper process, so please comment clearly on what you have checked during your review. If changes are made to the PR during the review process then your final comment will be the most important for gatekeepers. In this comment you should make it clear why any earlier review is still valid, or confirm that all requested changes have been addressed.

Code Review

  • Is the code of an acceptable quality?
  • Does the code conform to the coding standards?
  • Are the unit tests small and test the class in isolation?
  • If there is GUI work does it follow the GUI standards?
  • If there are changes in the release notes then do they describe the changes appropriately?
  • Do the release notes conform to the release notes guide?

Functional Tests

  • Do changes function as described? Add comments below that describe the tests performed?
  • Do the changes handle unexpected situations, e.g. bad input?
  • Has the relevant (user and developer) documentation been added/updated?

Does everything look good? Mark the review as Approve. A member of @mantidproject/gatekeepers will take care of it.

Gatekeeper

If you need to request changes to a PR then please add a comment and set the review status to "Request changes". This will stop the PR from showing up in the list for other gatekeepers.

@searscr searscr added this to the Release 6.13 milestone Apr 22, 2025
@searscr searscr added Documentation Issues and pull requests related to documentation Absorption Corrections Issues and pull requests related to absorption corrections ORNL Team Issues and pull requests managed by the ORNL development team labels Apr 22, 2025
Copy link
Contributor

@Kvieta1990 Kvieta1990 left a comment

Choose a reason for hiding this comment

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

I think this generally looks good to me. Thank you! I have some minor comments.


The gauge volume refers to the region of the sample that is both illuminated by the incident neutron beam and visible to the detector. Only neutrons that are scattered within this volume and reach the detector contribute to the measured signal. Therefore, accurate absorption corrections must account for the size and shape of the gauge volume to avoid over- or under-estimating path lengths through absorbing material.

In many experimental setups, especially for complex geometries or partial beam coverage, the gauge volume may be significantly smaller than the full sample volume. To accommodate this, Mantid provides multiple methods for defining the gauge volume. These methods are prioritized in the following order:
Copy link
Contributor

Choose a reason for hiding this comment

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

The gauge volume refers to the region of the sample that is both illuminated by the incident neutron beam and visible to the detector. Only neutrons that are scattered within this volume and reach the detector contribute to the measured signal. Therefore, accurate absorption corrections must account for the size and shape of the gauge volume to avoid over- or under-estimating the absorption evaluation.

In normal experimental setups, the neutron beam only partially covers the sample and therefore the gauge volume has to be defined to be smaller than the sample volume. To accommodate this, Mantid provides multiple methods for defining the gauge volume. These methods are prioritized in the following order:

Copy link
Contributor

@Kvieta1990 Kvieta1990 left a comment

Choose a reason for hiding this comment

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

this looks perfect to me. Thank you!

@AndreiSavici AndreiSavici enabled auto-merge (squash) April 24, 2025 21:01
@AndreiSavici AndreiSavici merged commit 739d8f4 into main Apr 24, 2025
10 checks passed
@AndreiSavici AndreiSavici deleted the Update_Absorption_conceptPage branch April 24, 2025 22:01
searscr added a commit that referenced this pull request Apr 25, 2025
* Update Absorption Concept Page

* update doc
glass-ships pushed a commit that referenced this pull request Apr 25, 2025
* Update Absorption Concept Page

* update doc
searscr added a commit that referenced this pull request Apr 25, 2025
* Update BeamProfileFactory (#39135)

* Update BeamProfileFactory

* Make requested changes

* Add Gauge Volume to Monte Carlo Absorption (#39158)

* optional gauge volume passed to interaction vol

* added initial test that nothing has broken and gv is used

* ensure point generated in gauge vol

* adjust sptr behaviour and scoped variables

* updated mc-strategy tests

* now check gv point in sample + added tests

* fixed cylinder orientation in test

* added release note

* amended so gauge volume overrides active region

* made scattering sample only when gv and updated docs

* changed information to conditional warning

* fix cpp check?

* fix incorrect virtual method construction

* fix new cppcheck fail

* create factory init

* fix docs warning

* revert number of samples to 1 as changes powder references

* added comments explaining 'create' change

* add bullet point to release note

* add nodiscard and compact setActiveRegion

* move nodiscard before virtual

* warn to check gauge vol if attempts fail

* AnyShapeAbsorption uses beam description to determine volume (#39208)

* Update BeamProfileFactory

* Make requested changes

* Added use of IBeamProfile in AnyShapeAbsorption as an option to
determine gauge volume. Updated getIntersectionWithSample in
IBeamProfile to not need beam direction. Added unit test for
AnyShapeAbsorption

* Swapped integration volume and sample object when doing
Rasterize::calculate()

* Fixed IBeamProfileTest

* Added release notes

* Fixed release notes

* Updated function comment

* Addressed PR comments

* Undid change making raster object const ref

* Address PR comments

* Undid small change

---------

Co-authored-by: Carson Sears <searscr@ornl.gov>

* Update Absorption Concept Page (#39232)

* Update Absorption Concept Page

* update doc

* Update PaalmanPingsAbsorptionCorrection (#39210)

* Update BeamProfileFactory

* Make requested changes

* Swapped integration volume and sample object when doing
Rasterize::calculate()

* Update PaalmanPings

* cppCheck and release notes

* fix whole sample illuminated by beam

* fix cppcheck

* address review comments

* fix cppcheck

* correct Raster::Calculate call

* fix cppcheck

* add comment for V3D comparison

* remove unused variable

---------

Co-authored-by: Daniel Caballero <dlcaballero16@gmail.com>

---------

Co-authored-by: andy-bridger <71634246+andy-bridger@users.noreply.github.com>
Co-authored-by: Daniel Caballero <132241327+dlcaballero16@users.noreply.github.com>
Co-authored-by: Daniel Caballero <dlcaballero16@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Absorption Corrections Issues and pull requests related to absorption corrections Documentation Issues and pull requests related to documentation ORNL Team Issues and pull requests managed by the ORNL development team
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants