Complete chart of sprit.run() workflow - RJbalikian/SPRIT-HVSR GitHub Wiki

SpRIT Intended Workflow

These steps and functions are the suggested workflow, as well as the workflow used for the sprit.run() function.

All of the parameters for each of the functions used in sprit.run() are also shown in this diagram. These parameters can be set directly from the sprit.run() and they will be passed to the appropriate functions.

Workflow Diagram


flowchart TD

    subgraph inst_inputs["Instrument Paramaters"]
        direction TB

        site
        network
        station
        loc
        channels
        instrument
        metapath
    end

    subgraph acqDT["Acquisition Date/time Parameters"]
        direction TB

        acq_date
        starttime
        endtime
        tzone
    end

    subgraph acqLoc["Acquisition Location Parameters"]
        direction TB

        xcoord
        ycoord
        elevation
        input_crs
        output_crs
        elev_unit
        depth
    end

    subgraph procParams["Processing Parameters"]
        direction TB

        hvsr_band
        peak_freq_range
        processing_parameters
    end

    subgraph IP["Input Parameters [input_params()]"]
        direction LR
        
        inst_inputs
        acqDT
        acqLoc
        procParams
    end

    subgraph FD["Fetch Data [fetch_data()]"]
        direction TB

        source
        data_export_path
        data_export_format
        detrend
        detrend_options
        update_metadata
        plot_input_stream
    end

    subgraph CA["Calculate Azimuth [calculate_azimuth()]"]
        azimuth_angle
        azimuth_type
        azimuth_unit
        show_az_plot
    end

    subgraph RN["Remove Noise [remove_noise()]"]
        remove_method
        processing_window
        sat_percent
        noise_percent
        sta
        lta
        stalta_thresh
        std_ratio_thresh
        std_window_size
        min_std_win
        warmup_time
        cooldown_time
        min_win_size
        remove_raw_noise
        show_stalta_plot
    end

    subgraph PPSD["obspy...PPSD Arguments"]
        direction TB

        stats
        metadata
        skip_on_gaps
        db_bins
        ppsd_length
        overlap
        special_handling
        period_smoothing_width_octaves
        period_step_octaves
        period_limits
    end

    subgraph GP["Generate PSDs [generate_psds()]"]
        direction LR

        window_length
        overlap_pct
        window_type
        window_length_method
        skip_on_gaps
        num_freq_bins
        obspy_ppsds
        azimuthal_psds
        plot_psds
        obspy_ppsd_kwargs
        PPSD
    end

    subgraph PH["Process HVSR [process_hvsr()]"]
        direction TB

        horizontal_method
        smooth
        freq_smooth
        f_smooth_width
        resample
        outlier_curve_rmse_percentile
    end

    subgraph ROC["Remove Outlier Curves [remove_outlier_curves()]"]
        rmse_thresh
        use_percentile
        use_hv_curve
        show_outlier_plot
    end

    subgraph CP["Check Peaks [check_peaks()]"]
        hvsr_band_cp["hvsr_band"]
        peak_selection
        peak_freq_range_cp["peak_freq_range"]
        azimuth
    end

    subgraph GR["Get Report [get_report()]"]
        plot_type
        azimuth_gr["azimuth"]
        csv_overwrite_opt
        no_output
        report_format
        export_path_GR["export_path"]
    end

    subgraph EX["Exports [export()]"]
        ext
        export_path_EX["export_path"]
        
    end

    subgraph reportTypes["Report Types"]
        HV_Plot[("HV Plot")]
        CSV_Report[("CSV Table")]
        Print_Report[("Print Report")]
    end

    data[("Data\n(Ambient Seismic Data)")]
    instResp[("Metadata\n(Instrument Response)")]

    data-->IP
    instResp-->IP

    IP-->FD
    FD-.Optional.->CA
    FD-.Optional.->RN
    CA-.Optional.->RN
    CA-.->GP
    RN-.->GP
    FD-.->GP
    GP-->PH
    PH-.Optional.->ROC
    ROC-.->CP
    PH-.->CP
    CP-->GR
    GR-.->EX
    EX-.->exportedData[("'Pickled' Data File")]
    EX-.->expProcSettings[("Processing Settings")]
    EX-.->expInstSettings[("Instrument Settings")]
    EX-.->reportTypes
    export_path_GR-.->reportTypes
    report_format-.->reportTypes