environmentaltools.spatiotemporal.raster.analysis

environmentaltools.spatiotemporal.raster.analysis(info=None)[source]

Execute the complete spatiotemporal raster analysis workflow.

This is the main entry point for the spatiotemporal raster processing pipeline. It orchestrates configuration loading, input validation, simulation and index processing, and output generation. The function supports multi-simulation and multi-index workflows for environmental and coastal analysis.

Parameters:

info (dict) – Configuration dictionary containing all project parameters, input/output paths, and analysis settings. Expected structure matches the validated configuration (see check_inputs docstring).

Returns:

info – Updated configuration dictionary, including processed results, output file paths, and metadata.

Return type:

dict

Notes

The analysis workflow includes:
  1. Configuration loading and validation

  2. Input data verification and preprocessing

  3. Binary matrix and contour generation for each simulation and index

  4. NetCDF output file creation with metadata

  5. Progress logging and error handling

The function processes all simulations and analysis indices as specified in the configuration, creating separate output files for each combination. Results and metadata are stored in the returned info dict.

Examples

>>> from pathlib import Path
>>> import json
>>> with open("config/coastal_analysis.json") as f:
...     config = json.load(f)
>>> results = analysis(config)
>>> print(f"Processed {len(results['datacube_filenames'])} simulations")