Skip to content

Jeff add rst#322

Merged
jehsharp merged 31 commits into
sandialabs:developfrom
jehsharp:jeff_add_rst
Jan 27, 2026
Merged

Jeff add rst#322
jehsharp merged 31 commits into
sandialabs:developfrom
jehsharp:jeff_add_rst

Conversation

@jehsharp
Copy link
Copy Markdown
Collaborator

@jehsharp jehsharp commented Jan 27, 2026

Purpose

This extends the example_scene_reconstruction.py and example_process_single_facet.py example scripts to support:

One-button running in the Visual Studio Code debugger, using internal downsampled data.
Automatic pytest execution, using internal downsampled data.
Command-line execution, using internal downsampled data.
Using an input settings file, to specify input and output paths to new data, and adjustment of run-time control parameters. This in turn enables:
- Running against published full-size data.
- Running against user data.
- Keeping a log of run output, with different selected run-time parameters and options.
- This enables these examples to support automatic testing, education, and user execution on their data.
- The pull request include sample settings configuration files, illustrating several use cases.

Summary of changes

1. Made example_scene_reconstruction.py and example_proces_single_facet.py generic.
2. Added optional command-line arguments.
3. Added configuration file control of which plots to generate, and many (not all) plot options.
4. Developed file storage and naming scheme to allow systematic identification of both measurement conditions including instrument, mirror, data capture time, data capture mode, processing mode, and processing script.
5. Added astigmatic paraboloid for reference mirror.
6. Added interpolation control.

Implementation notes

Several example settings configuration files were developed to exercise different usage scenarios. These scripts were included in the repo as examples, with in-file comment instructions.

Submission checklist

  • Target branch is develop, not main
  • Existing tests are updated or new tests were added
  • opencsp/test/test_DocStringsExist.py are verified to include this change or have been updated accordingly
  • .rst file(s) under doc/ are verified to include this change or have been updated accordingly

Additional information

This is needed to enable users to run SOFAST with a structured example, and it avoids the problems associated with copying and editing an example script.

This information is copied from Randy Brost, in PR #321. I, Jeff, built off of that PR to fix the failing doc check. My fixes involved updating config.rst to include the new location of example_process_single_facet (example.sofast_fringe.single_facet.example_process_single_facet). I also worked on updating the docstrings in a few files to meet NumPY doc standards. (example_scene_reconstruction.py, example_process_single_facet.py, & SelectImagePoints.py). I did notice a spurious error, a circular import, that only shows up from time to time. I will get this merged in and create an issue for that error. I will track that down soon.

rcbrost and others added 30 commits January 23, 2026 10:14
…ough rough example_scene_reconstruction.py working from the command line.
…ough rough example_scene_reconstruction.py working from the command line.
…Fixed example_process_single_facet_README.txt file.
…e. Included checks for missing parameters, true/false strings, contiguous tokens.
…y. Moved .py files and two example settings configuration files into example/sofast_fringe/single_facet directory.
…ef 25 m, ref plano cases, extended control to allow switching off fringe image output.
@jehsharp jehsharp merged commit 42720cc into sandialabs:develop Jan 27, 2026
4 of 5 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.

2 participants