Skip to content
Marcel Rieger edited this page May 31, 2024 · 17 revisions

Default task graph

(please find the legend below)

graph TD
    classDef WF stroke: #83b, stroke-width: 3px
    classDef TODO fill: #f17925
    classDef DEC fill: #0aacfc

    GetDatasetLFNs(GetDatasetLFNs)
    CalibrateEvents(CalibrateEvents)
    SelectEvents(SelectEvents)
    MergeSelectionMasks(MergeSelectionMasks)
    MergeSelectionStats(MergeSelectionStats)
    CreateCutflowHistograms(CreateCutflowHistograms)
    ReduceEvents(ReduceEvents)
    MergeReductionStats(MergeReductionStats)
    MergeReducedEvents(MergedReducedEvents)
    ProvideReducedEvents(ProvideReducedEvents)
    ProduceColumns(ProduceColumns)
    UniteColumns(UniteColumns)
    CreateHistograms(CreateHistograms)
    TrainDataSwitch{Used in<br />training?}
    PrepareMLEvents(PrepareMLEvents)
    MergeMLEvents(MergeMLEvents)
    MergeMLStats(MergeMLStats)
    MLTraining(MLTraining)
    MLEvaluation(MLEvaluation)
    MergeHistograms(MergeHistograms)
    MergeShiftedHistograms(MergeShiftedHistograms)
    MergeMLEvaluation(MergeMLEvaluation)
    CreateDatacards(CreateDatacards)
    WritePyhfWorkspace(WritePyhfWorkspace)
    CreateYieldTable(CreateYieldTable)
    PlotVariables1D(PlotVariables1D)
    PlotVariables2D(PlotVariables2D)
    PlotVariablesPerProcess2D(PlotVariablesPerProcess2D)
    PlotShiftedVariables1D(PlotShiftedVariables1D)
    PlotShiftedVariablesPerProcess1D(PlotShiftedVariablesPerProcess1D)
    PlotCutflow(PlotCutflow)
    PlotCutflowVariables1D(PlotCutflowVariables1D)
    PlotCutflowVariables2D(PlotCutflowVariables2D)
    PlotCutflowVariablesPerProcess2D(PlotCutflowVariablesPerProcess2D)
    PlotMLResults(PlotMLResults)

    class CalibrateEvents WF
    class SelectEvents WF
    class ReduceEvents WF
    class MergeReducedEvents WF
    class ProvideReducedEvents WF
    class ProduceColumns WF
    class UniteColumns WF
    class CreateHistograms WF
    class MergeHistograms WF
    class MergeShiftedHistograms WF
    class PlotVariables1D WF
    class PlotVariables2D WF
    class PlotVariablesPerProcess2D WF
    class PlotShiftedVariables1D WF
    class PlotShiftedVariablesPerProcess1D WF
    class PrepareMLEvents WF
    class MergeMLEvents WF
    class MLEvaluation WF
    class MLTraining WF
    class MergeSelectionMasks WF
    class CreateCutflowHistograms WF
    class PlotCutflow WF
    class PlotCutflowVariables1D WF
    class PlotCutflowVariables2D WF
    class PlotCutflowVariablesPerProcess2D WF
    class CreateDatacards WF
    class TrainDataSwitch DEC
    class WritePyhfWorkspace TODO
    class MergeMLEvaluation WF

    %% top part
    GetDatasetLFNs -- lfns --> SelectEvents
    GetDatasetLFNs -- lfns --> CalibrateEvents
    CalibrateEvents -. cols .-> SelectEvents
    SelectEvents -- masks --> ReduceEvents
    SelectEvents -. cols .-> ReduceEvents
    CalibrateEvents -. cols .-> ReduceEvents
    GetDatasetLFNs -- lfns --> ReduceEvents

    %% merging 1 left
    SelectEvents == stats ==> MergeSelectionStats
    MergeSelectionStats -- stats --> MergeSelectionMasks
    SelectEvents == masks ==> MergeSelectionMasks
    SelectEvents == cols ==> MergeSelectionMasks

    %% merging 1 right
    ReduceEvents == sizes ==> MergeReductionStats
    MergeReductionStats -- factors --> MergeReducedEvents
    ReduceEvents == events ==> MergeReducedEvents
    ReduceEvents == "optional<br />events" ==> ProvideReducedEvents
    MergeReducedEvents == events ==> ProvideReducedEvents

    %% cutflow tasks
    MergeSelectionMasks -- masks ---> CreateCutflowHistograms
    CreateCutflowHistograms -- hists --> PlotCutflow
    CreateCutflowHistograms -- hists --> PlotCutflowVariables1D
    CreateCutflowHistograms -- hists --> PlotCutflowVariables2D
    PlotCutflowVariables2D -. wrapper .-> PlotCutflowVariablesPerProcess2D

    %% additional columns
    ProvideReducedEvents -- events --> CreateHistograms
    ProvideReducedEvents -- events --> UniteColumns
    ProvideReducedEvents -- events --> ProduceColumns
    ProduceColumns -. cols .-> CreateHistograms
    ProduceColumns -. cols .-> UniteColumns
    ProduceColumns -. cols .-> TrainDataSwitch
    ProvideReducedEvents -- events --> TrainDataSwitch
    TrainDataSwitch -- yes --> PrepareMLEvents
    PrepareMLEvents == mlcols ==> MergeMLEvents
    PrepareMLEvents == stats ==> MergeMLStats
    MergeMLEvents -. mlcols .-> MLTraining
    MergeMLStats -. stats .-> MLTraining
    MLTraining -- model --> MLEvaluation
    TrainDataSwitch -- "either<br />way" --> MLEvaluation
    MLEvaluation -. cols .-> CreateHistograms
    MLEvaluation -. cols .-> UniteColumns

    %% merging 2
    CreateHistograms == hists ==> MergeHistograms
    MergeHistograms == hists ==> MergeShiftedHistograms
    MLEvaluation == cols ==> MergeMLEvaluation

    %% inference
    MergeHistograms -- data hists --> CreateDatacards
    MergeShiftedHistograms -- mc hists ---> CreateDatacards
    MergeHistograms -- data hists --> WritePyhfWorkspace
    MergeShiftedHistograms -- mc hists --> WritePyhfWorkspace

    %% tables
    MergeHistograms -- data hists ----> CreateYieldTable

    %% plots
    MergeShiftedHistograms -- hists --> PlotShiftedVariables1D
    PlotShiftedVariables1D -. wrapper .-> PlotShiftedVariablesPerProcess1D
    MergeHistograms -- hists --> PlotVariables2D
    PlotVariables2D -. wrapper .-> PlotVariablesPerProcess2D
    MergeHistograms -- hists --> PlotVariables1D
    MergeMLEvaluation -. cols ...-> PlotMLResults

    subgraph Merging 1
        MergeSelectionStats
        MergeSelectionMasks
        MergeReductionStats
        MergeReducedEvents
        ProvideReducedEvents
    end

    subgraph ML Training
        PrepareMLEvents
        MergeMLEvents
        MergeMLStats
        MLTraining
    end

    subgraph Merging 2
        MergeHistograms
        MergeShiftedHistograms
        MergeMLEvaluation
    end

    subgraph Cutflow plots
        PlotCutflow
        PlotCutflowVariables1D
        PlotCutflowVariables2D
        PlotCutflowVariablesPerProcess2D
    end

    subgraph Results1
        subgraph Inference
            CreateDatacards
            WritePyhfWorkspace
        end

        subgraph Tables
            CreateYieldTable
        end

        subgraph Plots
        PlotShiftedVariables1D
        PlotShiftedVariablesPerProcess1D
        PlotVariables2D
        PlotVariablesPerProcess2D
        PlotVariables1D
        PlotMLResults
        end
    end
Loading

Legend

graph TD
    classDef WF stroke: #83b, stroke-width: 3px
    classDef TODO fill: #f17925
    classDef DEC fill: #0aacfc
    
    subgraph Legend
        Task(Task) --> Workflow(Workflow)
        Workflow --> TODO(TODO)
        class TODO TODO
        class Workflow WF
        
        X0(X) --> D0{Decision}
        D0 -- yes --> Y0s(Y)
        D0 -- no --> Z0(Z)
        class D0 DEC
    
        X1(X) -- "single<br />dep." ---> Y1(Y)
        X2(X) -. "many<br />deps" ..-> Y2(Y)
        X3(X) == merges<br />many ===> Y3(Y)
    end
Loading
Clone this wiki locally