Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -32,19 +32,12 @@ To run this on the published OpenCSP full-size example input:
--> SceneReconstruction
--> SceneReconstructionData_v1.1.zip

2. Unzip and place the enclosed directory within the directory:
2. Unzip and place the enclosed "scene_reconstruction" directory within the
"OpenCSP_example" directory, producing:

C:\ctemp\OpenCSP_example_data\enclosed_energy\
C:\ctemp\OpenCSP_example_data\scene_reconstruction\

3. This will produce a directory structure:

C:\ctemp\OpenCSP_example_data\enclosed_energy\EnclosedEnergyData_v1.1\

4. Then rename "EnclosedEnergyData_v1.1" to "input", producing:

C:\ctemp\OpenCSP_example_data\enclosed_energy\input\

5. After this, the "example_scene_reconstruction.py" script should run without modification,
3. After this, the "example_scene_reconstruction.py" script should run without modification,
by executing the following:
5.1. Start a powershell.
5.2. Ensure the OpenCSP virtual environment is activated.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,75 +9,75 @@
#
# To use this file, copy it to a new filename and update the values below to point at your data source.
# Original file:
# <OpenCSP_code_dir>/example/sofast_fringe/example_process_single_facet_Q.ini
# <OpenCSP_code_dir>/example/sofast_fringe/example_process_single_facet_ctemp.ini
#
# To run the standard example using the values within this file, create a directory heirarchy:
#
# Directory containing mirror measurement results
# Q:\Mirrors\
# C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Mirrors\
#
# Results for Sandia Tower Heliostat Facets
# Q:\Mirrors\SNLTF\
# C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Mirrors\SNLTF\
#
# Results for Sandia Tower Heliostat Facet "A"
# Q:\Mirrors\SNLTF\SNLTF-A\
# C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Mirrors\SNLTF\SNLTF-A\
#
# Measurement of facet "A" with the Optics Lab SOFAST Landscape setup, measuring in fringe mode, square image projection, white screen
# Q:\Mirrors\SNLTF\SNLTF-A\20250818_163443_OLSLrsqw\
# C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Results\OLSL\20250818_163443\
#
# Directory containing SOFAST calibration files, constant and applicable to all measurement modes.
# Q:\Instruments\OLSL_OpticsLabSofastLandscape\
# C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Instruments\OLSL_OpticsLabSofastLandscape\
# Contains:
# camera_sofast_optics_lab_landscape_2025_02.h5 # Camera lens calibration
# spatial_orientation_optics_lab_landscape.h5 # Relative positions of camera and screen
#
# Directory containing SOFAST calibration files, constant and used by the fringe measurement mode, square projection, white screen.
# Q:\Instruments\OLSL_OpticsLabSofastLandscape\OLSLrsqw_OpticsLabSofastLandscapeFringeSquareWhite\
# C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Instruments\OLSL_OpticsLabSofastLandscape\OLSLrsqw_OpticsLabSofastLandscapeFringeSquareWhite\
# Contains:
# display_shape_optics_lab_landscape_square_distorted_3d_100x100.h5 # Screen 3-d shape (waves, ripples,...)
#
# Directory containing files defining the mirror to measure.
# Q:\Mirrors\SNLTF\0_Common\Facet_NSTTF.json
# C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Mirrors\SNLTF\0_Common\Facet_NSTTF.json
# Contains:
# Facet_NSTTF.json # Facet design (x,y,z) corners, centroid
#
# Files resulting from a specific measurement at a specific time.
# Q:\Mirrors\SNLTF\SNLTF-A\20250818_163443_OLSLrsqw\
# C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Results\OLSL\20250818_163443\
# Contains:
# A_Collect\ # Data collection results
# B_Post_p001_default\ # Post-processing results, assumption set #1
# 20250818_163443_SNLTF-A_OLSLrsqw_p001_default_process_single_facet_settings_Q.ini
# 20250818_163443_SNLTF-A_OLSLrsqw_p001_default_process_single_facet_settings_ctemp.ini
# Control file for producing B_Post_p001_default\
# Note that "p001_default" is the post_process_id linking the control file and results.
# ...
# <other control files and output directories>
#
# Files resulting from a specific measurement at a specific time.
# Q:\Mirrors\SNLTF\SNLTF-A\20250818_163443_OLSLrsqw\A_Collect\
# C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Results\OLSL\20250818_163443\A_Collect\
# Contains:
# A1_intensity_response\ # Results of light-response check
# A2_collection_result\ # Results of fringe data capture
#
# Files resulting from a specific measurement at a specific time.
# Q:\Mirrors\SNLTF\SNLTF-A\20250818_163443_OLSLrsqw\A_Collect\A1_intensity_response\
# C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Results\OLSL\20250818_163443\A_Collect\A1_intensity_response\
# Contains:
# image_calibration_scaling_20250818_163358.h5 # Projector-to-camera response curve
#
# Files resulting from a specific measurement at a specific time.
# Q:\Mirrors\SNLTF\SNLTF-A\20250818_163443_OLSLrsqw\A_Collect\A2_collection_result\
# C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Results\OLSL\20250818_163443\A_Collect\A2_collection_result\
# Contains:
# 20250818_163443_measurement_fringe.h5 # Captured fringe images, plus distance-to-mirror, etc.
# 20250818_163443_slope_magnitude_fringe_xy.png # (optional) Slope magnitude plot quickly generated at data capture time.
#
# Directory containing measurement postprocessing results
# Q:\Mirrors\SNLTF\SNLTF-A\20250818_163443_OLSLrsqw\B_Post_p001_default\
# C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Results\OLSL\20250818_163443\B_Post_p001_default\
# Contains:
# This file "20250818_163443_SNLTF-A_OLSLrsqw_p001_default_process_single_facet_settings_Q.ini"
# This file "20250818_163443_SNLTF-A_OLSLrsqw_p001_default_process_single_facet_settings_ctemp.ini"
#
#
# Then navigate to the directory containing the file "example_process_single_facet,py" and execute:
#
# python example_process_single_facet.py --verbose -s Q:\Mirrors\SNLTF\SNLTF-A\20250818_163443_OLSLrsqw\B_Post_p001_default\20250818_163443_SNLTF-A_OLSLrsqw_p001_default_process_single_facet_settings_Q.ini
# python example_process_single_facet.py --verbose -s C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Results\OLSL\20250818_163443\B_Post_p001_default\20250818_163443_SNLTF-A_OLSLrsqw_p001_default_process_single_facet_settings_ctemp.ini
#
#
# You can modify the parameters to accomplish different purposes. For example, suppose you want a version
Expand All @@ -87,10 +87,10 @@
# 1. Create a new postprocess id, for example "p002_fast".
#
# 2. Create a new directory for the postprocessing results
# Q:\Mirrors\SNLTF\SNLTF-A\20250818_163443_OLSLrsqw\B_Post_p002_fast\
# C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Results\OLSL\20250818_163443\B_Post_p002_fast\
#
# 3. Copy this file into the new directory, with a new name:
# 20250818_163443_SNLTF-A_OLSLrsqw_p002_fast_process_single_facet_settings_Q.ini
# 20250818_163443_SNLTF-A_OLSLrsqw_p002_fast_process_single_facet_settings_ctemp.ini
# Note it contains the new "p002_fast" postprocess id.
#
# 4. Edit the new file:
Expand All @@ -105,7 +105,7 @@
#
# 6. Execute, pointing to the new .ini file:
#
# python example_process_single_facet.py --verbose -s Q:\Mirrors\SNLTF\SNLTF-A\20250818_163443_OLSLrsqw\B_Post_p002_fast\20250818_163443_SNLTF-A_OLSLrsqw_p002_fast_process_single_facet_settings_Q.ini
# python example_process_single_facet.py --verbose -s C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Results\OLSL\20250818_163443\20250818_163443_SNLTF-A_OLSLrsqw_p002_fast_process_single_facet_settings_ctemp.ini
#
# You can use a similar approach to develop post-processing commands for producing higher resolution
# slope maps, ray-tracing from different light source positions, different ray-tracing resolution, etc.
Expand All @@ -121,20 +121,20 @@
verbose = True

# Strings to denote this computation. Must be contiguous, with no space, tabs or line feeds.
measurement_id = 20250818_163443_SLTF-A_OLSLrsqw
measurement_id = 20250818_163443_SNLTF-A_OLSLrsqw
post_process_id = p001_default

# Input
file_camera = Q:\Instruments\OLSL_OpticsLabSofastLandscape\camera_sofast_optics_lab_landscape_2025_02.h5
file_orientation = Q:\Instruments\OLSL_OpticsLabSofastLandscape\spatial_orientation_optics_lab_landscape.h5
file_display = Q:\Instruments\OLSL_OpticsLabSofastLandscape\OLSLrsqw_OpticsLabSofastLandscapeFringeSquareWhite\display_shape_optics_lab_landscape_square_distorted_3d_100x100.h5
file_facet = Q:\Mirrors\SNLTF\0_Common\Facet_NSTTF.json
file_calibration = Q:\Mirrors\SNLTF\SNLTF-A\20250818_163443_OLSLrsqw\A_Collect\A1_intensity_response\image_calibration_scaling_20250818_163358.h5
file_measurement = Q:\Mirrors\SNLTF\SNLTF-A\20250818_163443_OLSLrsqw\A_Collect\A2_collection_result\20250818_163443_measurement_fringe.h5
file_camera = C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Instruments\OLSL_OpticsLabSofastLandscape\camera_sofast_optics_lab_landscape_2025_02.h5
file_orientation = C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Instruments\OLSL_OpticsLabSofastLandscape\spatial_orientation_optics_lab_landscape.h5
file_display = C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Instruments\OLSL_OpticsLabSofastLandscape\OLSLrsqw_OpticsLabSofastLandscapeFringeSquareWhite\display_shape_optics_lab_landscape_square_distorted_3d_100x100.h5
file_facet = C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Mirrors\SNLTF\0_Common\Facet_NSTTF.json
file_calibration = C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Results\OLSL\20250818_163443\A_Collect\A1_intensity_response\image_calibration_scaling_20250818_163358.h5
file_measurement = C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Results\OLSL\20250818_163443\A_Collect\A2_collection_result\20250818_163443_measurement_fringe.h5

# Directory to write output files.
# (The post_process_id below will be added as a suffix.)
dir_save_root = Q:\Mirrors\SNLTF\SNLTF-A\20250818_163443_OLSLrsqw\B_Post
dir_save_root = C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\output\Results\OLSL\20250818_163443\B_Post

# Analysis control parameters
# Distance values are meters.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
# and under multiple settings of analysis parameters and output control.
#
# For detailed instructions on the context, see the default processing file:
# 20250818_163443_SNLTF-A_OLSLrsqw_p001_default_process_single_facet_settings_Q.ini
# 20250818_163443_SNLTF-A_OLSLrsqw_p001_default_process_single_facet_settings_ctemp.ini
#
# This version is modified to run more quickly by skipping ray tracing and some of the plots.
#
Expand All @@ -15,20 +15,20 @@
verbose = True

# Strings to denote this computation. Must be contiguous, with no space, tabs or line feeds.
measurement_id = 20250818_163443_SLTF-A_OLSLrsqw
measurement_id = 20250818_163443_SNLTF-A_OLSLrsqw
post_process_id = p002_fast

# Input
file_camera = Q:\Instruments\OLSL_OpticsLabSofastLandscape\camera_sofast_optics_lab_landscape_2025_02.h5
file_orientation = Q:\Instruments\OLSL_OpticsLabSofastLandscape\spatial_orientation_optics_lab_landscape.h5
file_display = Q:\Instruments\OLSL_OpticsLabSofastLandscape\OLSLrsqw_OpticsLabSofastLandscapeFringeSquareWhite\display_shape_optics_lab_landscape_square_distorted_3d_100x100.h5
file_facet = Q:\Mirrors\SNLTF\0_Common\Facet_NSTTF.json
file_calibration = Q:\Mirrors\SNLTF\SNLTF-A\20250818_163443_OLSLrsqw\A_Collect\A1_intensity_response\image_calibration_scaling_20250818_163358.h5
file_measurement = Q:\Mirrors\SNLTF\SNLTF-A\20250818_163443_OLSLrsqw\A_Collect\A2_collection_result\20250818_163443_measurement_fringe.h5
file_camera = C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Instruments\OLSL_OpticsLabSofastLandscape\camera_sofast_optics_lab_landscape_2025_02.h5
file_orientation = C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Instruments\OLSL_OpticsLabSofastLandscape\spatial_orientation_optics_lab_landscape.h5
file_display = C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Instruments\OLSL_OpticsLabSofastLandscape\OLSLrsqw_OpticsLabSofastLandscapeFringeSquareWhite\display_shape_optics_lab_landscape_square_distorted_3d_100x100.h5
file_facet = C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Mirrors\SNLTF\0_Common\Facet_NSTTF.json
file_calibration = C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Results\OLSL\20250818_163443\A_Collect\A1_intensity_response\image_calibration_scaling_20250818_163358.h5
file_measurement = C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Results\OLSL\20250818_163443\A_Collect\A2_collection_result\20250818_163443_measurement_fringe.h5

# Directory to write output files.
# (The post_process_id below will be added as a suffix.)
dir_save_root = Q:\Mirrors\SNLTF\SNLTF-A\20250818_163443_OLSLrsqw\B_Post
dir_save_root = C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\output\Results\OLSL\20250818_163443\B_Post

# Analysis control parameters
# Distance values are meters.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
# and under multiple settings of analysis parameters and output control.
#
# For detailed instructions on the context, see the default processing file:
# 20250818_163443_SNLTF-A_OLSLrsqw_p001_default_process_single_facet_settings_Q.ini
# 20250818_163443_SNLTF-A_OLSLrsqw_p001_default_process_single_facet_settings_ctemp.ini
#
# This version is modified to compare against a reference mirror with a 25 m focal length.
#
Expand All @@ -15,20 +15,20 @@
verbose = True

# Strings to denote this computation. Must be contiguous, with no space, tabs or line feeds.
measurement_id = 20250818_163443_SLTF-A_OLSLrsqw
post_process_id = p003_refx25m_refy25m
measurement_id = 20250818_163443_SNLTF-A_OLSLrsqw
post_process_id = p003_rx25m_ry25m

# Input
file_camera = Q:\Instruments\OLSL_OpticsLabSofastLandscape\camera_sofast_optics_lab_landscape_2025_02.h5
file_orientation = Q:\Instruments\OLSL_OpticsLabSofastLandscape\spatial_orientation_optics_lab_landscape.h5
file_display = Q:\Instruments\OLSL_OpticsLabSofastLandscape\OLSLrsqw_OpticsLabSofastLandscapeFringeSquareWhite\display_shape_optics_lab_landscape_square_distorted_3d_100x100.h5
file_facet = Q:\Mirrors\SNLTF\0_Common\Facet_NSTTF.json
file_calibration = Q:\Mirrors\SNLTF\SNLTF-A\20250818_163443_OLSLrsqw\A_Collect\A1_intensity_response\image_calibration_scaling_20250818_163358.h5
file_measurement = Q:\Mirrors\SNLTF\SNLTF-A\20250818_163443_OLSLrsqw\A_Collect\A2_collection_result\20250818_163443_measurement_fringe.h5
file_camera = C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Instruments\OLSL_OpticsLabSofastLandscape\camera_sofast_optics_lab_landscape_2025_02.h5
file_orientation = C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Instruments\OLSL_OpticsLabSofastLandscape\spatial_orientation_optics_lab_landscape.h5
file_display = C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Instruments\OLSL_OpticsLabSofastLandscape\OLSLrsqw_OpticsLabSofastLandscapeFringeSquareWhite\display_shape_optics_lab_landscape_square_distorted_3d_100x100.h5
file_facet = C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Mirrors\SNLTF\0_Common\Facet_NSTTF.json
file_calibration = C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Results\OLSL\20250818_163443\A_Collect\A1_intensity_response\image_calibration_scaling_20250818_163358.h5
file_measurement = C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Results\OLSL\20250818_163443\A_Collect\A2_collection_result\20250818_163443_measurement_fringe.h5

# Directory to write output files.
# (The post_process_id below will be added as a suffix.)
dir_save_root = Q:\Mirrors\SNLTF\SNLTF-A\20250818_163443_OLSLrsqw\B_Post
dir_save_root = C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\output\Results\OLSL\20250818_163443\B_Post

# Analysis control parameters
# Distance values are meters.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
# and under multiple settings of analysis parameters and output control.
#
# For detailed instructions on the context, see the default processing file:
# 20250818_163443_SNLTF-A_OLSLrsqw_p001_default_process_single_facet_settings_Q.ini
# 20250818_163443_SNLTF-A_OLSLrsqw_p001_default_process_single_facet_settings_ctemp.ini
#
# This version is modified to compare against a plano reference mirror.
#
Expand All @@ -15,20 +15,20 @@
verbose = True

# Strings to denote this computation. Must be contiguous, with no space, tabs or line feeds.
measurement_id = 20250818_163443_SLTF-A_OLSLrsqw
post_process_id = p004_ref_plano
measurement_id = 20250818_163443_SNLTF-A_OLSLrsqw
post_process_id = p004_rplano

# Input
file_camera = Q:\Instruments\OLSL_OpticsLabSofastLandscape\camera_sofast_optics_lab_landscape_2025_02.h5
file_orientation = Q:\Instruments\OLSL_OpticsLabSofastLandscape\spatial_orientation_optics_lab_landscape.h5
file_display = Q:\Instruments\OLSL_OpticsLabSofastLandscape\OLSLrsqw_OpticsLabSofastLandscapeFringeSquareWhite\display_shape_optics_lab_landscape_square_distorted_3d_100x100.h5
file_facet = Q:\Mirrors\SNLTF\0_Common\Facet_NSTTF.json
file_calibration = Q:\Mirrors\SNLTF\SNLTF-A\20250818_163443_OLSLrsqw\A_Collect\A1_intensity_response\image_calibration_scaling_20250818_163358.h5
file_measurement = Q:\Mirrors\SNLTF\SNLTF-A\20250818_163443_OLSLrsqw\A_Collect\A2_collection_result\20250818_163443_measurement_fringe.h5
file_camera = C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Instruments\OLSL_OpticsLabSofastLandscape\camera_sofast_optics_lab_landscape_2025_02.h5
file_orientation = C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Instruments\OLSL_OpticsLabSofastLandscape\spatial_orientation_optics_lab_landscape.h5
file_display = C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Instruments\OLSL_OpticsLabSofastLandscape\OLSLrsqw_OpticsLabSofastLandscapeFringeSquareWhite\display_shape_optics_lab_landscape_square_distorted_3d_100x100.h5
file_facet = C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Mirrors\SNLTF\0_Common\Facet_NSTTF.json
file_calibration = C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Results\OLSL\20250818_163443\A_Collect\A1_intensity_response\image_calibration_scaling_20250818_163358.h5
file_measurement = C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\input\Results\OLSL\20250818_163443\A_Collect\A2_collection_result\20250818_163443_measurement_fringe.h5

# Directory to write output files.
# (The post_process_id below will be added as a suffix.)
dir_save_root = Q:\Mirrors\SNLTF\SNLTF-A\20250818_163443_OLSLrsqw\B_Post
dir_save_root = C:\ctemp\OpenCSP_example_data\sofast_fringe\single_facet\output\Results\OLSL\20250818_163443\B_Post

# Analysis control parameters
# Distance values are meters.
Expand Down
Loading