Skip to content

API Reference

Plugin Interface

Spectral Analysis plugin entry point.

Lightweight module: importing it must not pull in the heavy analysis implementation or the scientific stack. All heavy imports are deferred to the accessor methods.

Attributes

ANALYSIS_NAME module-attribute

Python
ANALYSIS_NAME = 'spectra'

Classes

SpectralAnalysisPlugin

Spectral Analysis plugin.

Attributes

version class-attribute instance-attribute
Python
version = __version__
short_help class-attribute instance-attribute
Python
short_help = 'Point and Distributed Target Spectral Analysis.'

Methods:

get_cli classmethod
Python
get_cli() -> Typer | Callable
get_handlers classmethod
Python
get_handlers() -> dict[str, AnalysisHandler]

Main API entry point

Spectral Analysis implementation.

Classes

Functions:

full_spectral_analysis

Python
full_spectral_analysis(product: Path, point_target_source: Path | None, output_directory: Path, config: SCTSpectralAnalysisConfig | None, graphs: bool) -> Path

Full implementation of Spectral Analysis, both distributed and point target.

Parameters:

Name Type Description Default
product Path

Path to the product to be analyzed

required
point_target_source Path | None

Path to the point target source file, if not provided the analysis will be a Distributed Spectral Analysis

required
output_directory Path

Path to the output directory

required
config SCTSpectralAnalysisConfig | None

analysis configuration parameters, if needed

required
graphs bool

flag to enable graphs generation

required

Returns:

Type Description
Path

Path to the NetCDF file containing the results

CLI commands

Command Line Interface for Spectral Analysis.

Classes

Functions:

spectral_analysis

Python
spectral_analysis(ctx: Context, product: InputProductOption, output_directory: OutputDirectoryOption, point_target_source: InputPointTargetSource = None, graphs: GraphsOption = False) -> None

Point and Distributed Target Spectral Analysis.

 It can be performed: - at each visible target location providing a point target source file -pt/--point-target-source - on distributed targets by partitioning the data into azimuth blocks/bursts

spectral_analysis_implementation

Python
spectral_analysis_implementation(product: Path, point_target_source: Path | None, output_directory: Path, config: SCTSpectralAnalysisConfig, graphs: bool, dump_config: bool) -> None

Implement the spectral analysis command.

Configuration

Spectral Analysis Configuration.

Attributes

Classes

SCTSpectralAnalysisConfig dataclass

Bases: AnalysisConfigABC

SCT Spectral Analysis configuration

Attributes

cropping_size class-attribute instance-attribute
Python
cropping_size: tuple[int, int] = (128, 128)
azimuth_block_size class-attribute instance-attribute
Python
azimuth_block_size: int = 2000
config_group_name class-attribute instance-attribute
Python
config_group_name = 'spectral_analysis'
validation_schema class-attribute instance-attribute
Python
validation_schema = Path(config_schema)

Methods:

__init__
Python
__init__(cropping_size: tuple[int, int] = (128, 128), azimuth_block_size: int = 2000) -> None
from_dict classmethod
Python
from_dict(arg: dict) -> SCTSpectralAnalysisConfig

Convert from dict

to_dict
Python
to_dict()

Convert to dict