aurora.config package

Subpackages

Submodules

aurora.config.config_creator module

This module contains a Helper class to make config files.

The processing config is still evolving and this class and its methods may change.

class aurora.config.config_creator.ConfigCreator(emtf_band_file: str | Path | None = None, band_edges: dict | None = None)[source]

Bases: object

Attributes:
band_specification_style

return a description of the scheme used to define the bands.

Methods

create_from_kernel_dataset(kernel_dataset[, ...])

This creates a processing config from a kernel dataset.

determine_band_specification_style()

Try to identify which scheme was used to define the bands

property band_specification_style

return a description of the scheme used to define the bands.

create_from_kernel_dataset(kernel_dataset, input_channels=None, output_channels=None, estimator: str | None = None, emtf_band_file: str | Path | None = None, band_edges: dict | None = None, decimation_factors: list | None = None, num_samples_window: int | None = None)[source]

This creates a processing config from a kernel dataset.

TODO: Make this a method of kernel_dataset.

Development Notes:

  1. 2022-09-10

The reading-in from EMTF band setup file used to be very terse, carried some baked in assumptions about decimation factors, and did not acknowledge specific frequency bands in Hz. I am adding some complexity to the method that populates bands from EMTF band setup file but am now explict about the assumption of decimation factors, and do provide the frequency bands in Hz.

  1. The number of decimation levels must be defined either by:

  • decimation_factors argument (normally accompanied by a bands_dict)

  • number of decimations implied by EMTF band setup file.

Theoretically, you could also use the number of decimations implied by bands_dict but this is sloppy, because it would assume the decimation factor.

Parameters:
  • kernel_dataset (aurora.transfer_function.kernel_dataset.KernelDataset) – An object that defines the data to be processed.

  • input_channels (list) – List of the input channels that will be used in TF estimation (usually “hx”, “hy”)

  • output_channels (list) – List of the output channels that will be estimated by TF (usually “ex”, “ey”, “hz”)

  • estimator (Optional[Union[str, None]]) – The name of the regression estimator to use for TF estimation.

  • emtf_band_file (Optional[Union[str, pathlib.Path, None]]) – The emtf and setup file if used.

  • band_edges (Optional[Union[dict, None]]) – The band edges if emtf_band_file not used

  • decimation_factors (Optional[Union[list, None]]) – List of decimation factors, normally [1, 4, 4, 4, … 4]

  • num_samples_window (Optional[Union[int, None]]) – The size of the window (usually for FFT)

Returns:

processing_obj – Object storing the processing parameters.

Return type:

aurora.config.metadata.processing.Processing

determine_band_specification_style() None[source]

Try to identify which scheme was used to define the bands

TODO: Should emtf_band_file path be stored in config to support reproducibility?

Module contents