DaVinci.config
DaVinci configured using PyConf components.
Attributes
Classes
Immutable object fully qualifying a DaVinci node. |
Functions
|
DaVinci control flow is split in a few sections as described in DaVinci/issue#2 (then simplified) |
|
This helper function takes as input a dictionary of user algorithms in the form |
|
Validate algorithms passed to the DaVinci job. |
|
Run the job adding the specific Davinci configurables to the standard PyConf ones. |
|
Module Contents
- class DVNode[source]
Bases:
namedtuple
('DVNode'
, ['node'
,'extra_outputs'
])Immutable object fully qualifying a DaVinci node. Copied from the
HltLine
class without the prescaler argument.- node
the control flow node of the line
- Type:
CompositeNode
- davinci_control_flow(options, user_analysis_nodes=[], fsr_nodes=[])[source]
DaVinci control flow is split in a few sections as described in DaVinci/issue#2 (then simplified)
DaVinci (LAZY_AND) ├── LuminosityNode (NONLAZY_OR) │ └── EventAccounting/EventAccount └── UserAnalysisNode (NONLAZY_OR) ├── DVUser1Node (LAZY_AND) │ ├── PVFilter │ ├── ParticlesFilter │ ├── Candidate1Combiner │ ├── AlgorithmsForTuple1 │ ├── Tuple1 └── DVUser2Node (LAZY_AND) ├── PVFilter ├── ParticlesFilter ├── Candidate2Combiner ├── AlgorithmsForTuple2 └── Tuple2
The main parts are
LuminosityNode
UserAnalysisNode
who are in AND among each other and can accommodate nodes (defined with the class DVNode) in OR among themselves.
To prepare the control flow there are a few options:
take a dictionary as input where all the nodes are listed in their categories
take a various lists as input each related to a specific category of nodes
This function is then used to fill the control flow
- prepare_davinci_nodes(user_algs)[source]
This helper function takes as input a dictionary of user algorithms in the form
{ 'DVNode1' : [<list of algs>], 'DVNode2' : [<list of algs>], }
and creates the node to send to
davinci_control_flow
.
- validate_algorithms(options, algs_dict)[source]
Validate algorithms passed to the DaVinci job.
- Parameters:
options (DaVinci.Options) – lbexec provided options object
algs_dict – dict containing the user algorithms to be validated.
- add_davinci_configurables(options, user_algorithms, public_tools)[source]
Run the job adding the specific Davinci configurables to the standard PyConf ones.
Algorithms developed by users are also included.
- Parameters:
options (DaVinci.Options) – lbexec provided options object
- Returns:
ComponentConfig instance, a dict of configured Gaudi and DaVinci Configurable instances and user algorithms.