Skip to content

Conversation

KedoKudo
Copy link
Contributor

@KedoKudo KedoKudo commented Aug 18, 2025

This PR introduces the following changes:

  • update previous existing notebook to ensure that can run again (this resolves check all notebooks to make them run again #1)
  • add new derivation for tof cylindrical geometry correction
  • add new development notebook to showcase tof cylindrical geometry correction plus wavelet filter based denoising.

Testing instructions

  • Checkout the branch and setup environment with pixi
  • Run pixi run test to ensure unit test runs
  • Check 00_development.ipynb in notebooks folder, change the data path to local tof neutron transmission radiograph data.
  • Check derivation.md in the documentation folder.

Summary [AI]

This pull request introduces several improvements and cleanups to the neutron geometry correction project. The main changes include significant updates to documentation (including a new derivation document and improved README), removal of obsolete or redundant code and files, and the addition of a .gitignore for notebook-generated data. There are also configuration tweaks to pre-commit hooks and code coverage. These updates improve the usability, maintainability, and clarity of the project for both users and developers.

Documentation improvements:

  • Added a comprehensive derivation document (documentation/derivation.md) explaining the cylindrical geometry correction methodology, including the Beer-Lambert law and robust attenuation coefficient estimation methods.
  • Major reorganization and enhancement of the README.md for clarity, including clearer installation, usage, and development instructions, and improved formatting. [1] [2] [3] [4]

Code and notebook cleanup:

  • Removed unused or obsolete Python utility scripts: notebooks/file_handler.py and notebooks/geometry_correction.py. [1] [2]
  • Removed the archived notebook documentation/source/archived_notebooks_backup/tutorial_inhomogeneous_tiff.ipynb and renamed/updated the homogeneous tutorial notebook for clarity and improved code structure. [1] [2] [3]

Repository and configuration updates:

  • Added a .gitignore for notebook-generated data files to prevent accidental commits of large or unnecessary files.
  • Increased the maximum allowed file size for the check-added-large-files pre-commit hook from 8 MB to 30 MB to accommodate larger data files. (.pre-commit-config.yaml)
  • Removed the codecov token from codecov.yml for improved security.

@Copilot Copilot AI review requested due to automatic review settings August 18, 2025 14:51
Copilot

This comment was marked as outdated.

KedoKudo and others added 4 commits August 18, 2025 12:24
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@KedoKudo KedoKudo changed the title [WIP] Add artifact removal capability Add artifact removal capability Aug 21, 2025
@KedoKudo KedoKudo requested a review from JeanBilheux August 21, 2025 15:56
@KedoKudo KedoKudo self-assigned this Aug 21, 2025
@KedoKudo KedoKudo requested a review from Copilot August 21, 2025 15:56
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR introduces comprehensive file I/O capabilities for neutron imaging data, supporting both FITS and TIFF formats. It also includes artifact removal by cleaning up outdated files and reorganizing the repository structure.

  • Adds a new file_handler module with robust FITS and TIFF file operations
  • Removes legacy notebook files and outdated artifacts from the repository
  • Updates project dependencies and notebook structure for better organization

Reviewed Changes

Copilot reviewed 17 out of 41 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
src/neutron_geomcorr/file_handler.py New comprehensive file I/O module with FITS/TIFF support and validation
tests/test_file_handler.py Extensive test suite covering all file operations and error conditions
src/neutron_geomcorr/init.py Exports file handler functions for public API
src/neutron_geomcorr/geometry_correction.py Minor import cleanup and comment removal
pyproject.toml Adds multiple new dependencies for enhanced functionality
notebooks/*.ipynb Updates tutorial notebooks with modern structure and removes obsolete ones
documentation/derivation.md Adds mathematical derivation documentation

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Copy link
Contributor

@JeanBilheux JeanBilheux left a comment

Choose a reason for hiding this comment

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

I just added a few minor doc changed just for my understanding of some of the filters used.

@JeanBilheux JeanBilheux merged commit 6cb39d1 into next Aug 29, 2025
8 checks passed
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.

check all notebooks to make them run again

2 participants