Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
d1c4d7f
disable polarimetric symmetrization by default
gshiroma Jul 3, 2025
0ef09a8
Merge branch 'isce-framework:develop' into develop
gshiroma Jul 9, 2025
2ac2694
revert changes to `symmetrize_cross_pol_channels`
gshiroma Jul 22, 2025
05d7fda
Update GCOV and GSLC specification XMLs
gshiroma Jul 22, 2025
749058d
Revert changes to the GCOV and GSLC specification XMLs
gshiroma Jul 23, 2025
fc8ac53
Merge branch 'isce-framework:develop' into develop
gshiroma Jul 24, 2025
064d073
Merge branch 'isce-framework:develop' into develop
gshiroma Aug 7, 2025
22464ef
Merge branch 'isce-framework:develop' into develop
gshiroma Aug 7, 2025
a75e7f1
Merge branch 'isce-framework:develop' into develop
gshiroma Aug 11, 2025
ab21d36
Merge branch 'isce-framework:develop' into develop
gshiroma Aug 12, 2025
d61d489
Merge branch 'isce-framework:develop' into develop
gshiroma Aug 18, 2025
0af53dd
Merge branch 'isce-framework:develop' into develop
gshiroma Aug 20, 2025
d454e6a
Merge branch 'isce-framework:develop' into develop
gshiroma Aug 21, 2025
6e7e9d1
Merge branch 'isce-framework:develop' into develop
gshiroma Aug 28, 2025
dd80c38
Merge branch 'isce-framework:develop' into develop
gshiroma Aug 29, 2025
63853b2
Merge branch 'isce-framework:develop' into develop
gshiroma Aug 29, 2025
7c7272f
Merge branch 'isce-framework:develop' into develop
gshiroma Sep 2, 2025
dd18a84
Merge branch 'isce-framework:develop' into develop
gshiroma Sep 17, 2025
d43ca22
Merge branch 'isce-framework:develop' into develop
gshiroma Oct 6, 2025
fa38bc0
Make the radar grid azimuth and range spacing parameters configurable…
gshiroma Oct 6, 2025
7b88217
Make the radar grid azimuth and range spacing parameters configurable…
gshiroma Oct 7, 2025
fd7453b
Make the radar grid azimuth and range spacing parameters configurable…
gshiroma Nov 10, 2025
f41f100
improve messages to the user
gshiroma Jan 29, 2026
12ff92d
Update share/nisar/defaults/static.yaml
gshiroma Apr 22, 2026
e3c3661
Validate runconfig az/rg spacing
gshiroma Apr 23, 2026
70faafb
Merge branch 'isce-framework:develop' into improve_static_layers_work…
gshiroma Apr 23, 2026
9365988
Merge branch 'develop' into improve_static_layers_workflow_expose_az_…
gshiroma Apr 23, 2026
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
46 changes: 35 additions & 11 deletions python/packages/nisar/workflows/static.py
Original file line number Diff line number Diff line change
Expand Up @@ -110,20 +110,44 @@ def run_static_layers_workflow(config_file: os.PathLike | str) -> None:
# parameters than the legacy `geo2rdr` routine that's used by most of the
# workflow. Exposing both sets of parameters would introduce a lot of
# additional bookkeeping for seemingly little benefit.
logger.info("Estimate maximum required radar grid spacing")
radar_grid_params = processing_params["radar_grid"]
look_side = radar_grid_params["look_side"]
wavelength = radar_grid_params["wavelength"]
az_spacing, rg_spacing = \
isce3.geometry.infer_radar_grid_spacing_from_geo_grid(
geo_grid=geo_grid,
dem=dem_interp,
orbit=orbit,
doppler=img_grid_doppler,
look_side=look_side,
wavelength=wavelength,
**radar_grid_params["spacing"],
)

radar_grid_spacing_params = radar_grid_params["spacing"]
az_spacing = radar_grid_spacing_params["az_spacing"]
rg_spacing = radar_grid_spacing_params["rg_spacing"]
pts_per_side = radar_grid_spacing_params["pts_per_side"]

Comment thread
gshiroma marked this conversation as resolved.
if az_spacing is not None and not (az_spacing > 0.0):
raise ValueError(f"Runconfig {az_spacing=}, must be > 0")

if rg_spacing is not None and not (rg_spacing > 0.0):
raise ValueError(f"Runconfig {rg_spacing=}, must be > 0")

logger.info("Estimate radar grid spacing")
if rg_spacing is not None:
logger.info(f' range spacing: {rg_spacing}')
if az_spacing is not None:
logger.info(f' azimuth time interval: {az_spacing}')

if rg_spacing is None or az_spacing is None:
az_spacing_inferred, rg_spacing_inferred = \
isce3.geometry.infer_radar_grid_spacing_from_geo_grid(
geo_grid=geo_grid,
dem=dem_interp,
orbit=orbit,
doppler=img_grid_doppler,
look_side=look_side,
wavelength=wavelength,
pts_per_side=pts_per_side
)
if rg_spacing is None:
logger.info(f' inferred range spacing: {rg_spacing}')
rg_spacing = rg_spacing_inferred
if az_spacing is None:
logger.info(f' inferred azimuth time interval: {az_spacing}')
az_spacing = az_spacing_inferred

# Compute a radar grid whose footprint on the ground encloses the geocoded
# grid on which each output layer is defined.
Expand Down
10 changes: 10 additions & 0 deletions share/nisar/defaults/static.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -225,6 +225,16 @@ runconfig:
# Defaults to 0.24.
wavelength: 0.24
spacing:
# [OPTIONAL] Azimuth time interval, in seconds. Equivalent to the Pulse
# Repetition Interval (PRI).
# If not provided, it will be inferred from the specified geographic
# grid. If provided, must be a positive value.
az_spacing:
# [OPTIONAL] Slant-range spacing, in meters, of the radar grid.
# Must be a positive value.
# If not provided, it will be inferred from the specified geographic
# grid. If provided, must be a positive value.
rg_spacing:
# [OPTIONAL] Side length of the NxN grid of samples used to estimate the
# required radar grid pixel spacing necessary to avoid undersampling the
# output geocoded grid.
Expand Down
2 changes: 2 additions & 0 deletions share/nisar/schemas/static.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,8 @@ radar_grid_options:
bounding_box: include('radar_grid_bounding_box_options', required=False)

radar_grid_spacing_options:
az_spacing: num(min=0.0, required=False)
rg_spacing: num(min=0.0, required=False)
pts_per_side: int(min=2, required=False)

radar_grid_bounding_box_options:
Expand Down
Loading