Version:

salvus.project.configuration.processing

salvus.project.configuration.processing salvus project configuration processing
Processing configurations.

Classes

ProcessingConfiguration

Keeps track of the initial arguments passed to an objects and can later on serialize them to JSON document.
It will only consider whatever is passed in the init.
Define processing within SalvusProject with a function. Any function with a suitable signature is acceptable.
For block processing, the function must take the following arguments:
  • data_array: An xarray.DataArray object with the data.
  • event: The corresponding event.
Or, if the processing should be applied per receiver:
  • st: An obspy.Stream object with the data.
  • receiver: The receiver object for the receiver.
  • sources: All sources for the event.
In the case of seismological data it can also optionally take:
  • inv: An obspy.Inventory object for the station in case it is stored in an ASDF file. Might be None.
The function must return the processed xarray.DataArray or obspy.Stream object which must contain exactly the same number of traces.
SIGNATURE
class ProcessingConfiguration(
    salvus.flow.utils.serialization_helpers.SerializationMixin
):
    def __init__(
        self,
        name: str,
        data_source_name: str,
        processing_function: str | typing.Callable,
    ): ...
ARGUMENTS
Required
name
Type:str
Description:
Name of the processing configuration.
Required
data_source_name
Type:str
Description:
Name of the original data source.
Required
processing_function
Type:str | typing.Callable
Description:
The actual function.

Class Methods

ProcessingConfiguration.from_json()
Recreate the object from a dictionary serialization of its initialization parameters.
SIGNATURE
def from_json(d: builtins.dict) -> Any: ...
ARGUMENTS
Required
d
Type:builtins.dict
Description:
Dictionary containing its init parameters and a few other things.

Methods

ProcessingConfiguration.to_json()
Convert object to a JSON-serializable dictionary.
SIGNATURE
def to_json(
    self,
    external_file_hash: str | None = None,
    timer: Timer | None = None,
    log_to_logger: bool = False,
    comm: int | None = None,
) -> dict: ...
ARGUMENTS
Optional
external_file_hash
Type:str | None
Default value:None
Description:
Hash of any external files associated with this object. Can be passed here in which case it will be stored in a centralized location in the JSON file.
Optional
timer
Type:Timer | None
Default value:None
Description:
Execution timer.
Optional
log_to_logger
Type:bool
Default value:False
Description:
Log timings to the logger.
Optional
comm
Type:int | None
Default value:None
Description:
MPI communicator, if any.

Submodules

PAGE CONTENTS