Data Types and Dictionary Mapping

Introduction

Since most of the backend of Analysis-G is built in C++ and interfaced via Cython, multiple data types were used to simplify passing arguments between layers. Luckily, Cython and C++ can share py:type:struct types, which can be mapped into dictionaries and back. This section of the documentation outlines these types with their respective key and value pairs.

code_t
Variables:
  • input_params (list[str])

  • co_vars (list[str])

  • param_space (dict[str, str])

  • trace (dict[str, list[str]])

  • extern_imports (dict[str, list[str]])

  • dependency_hashes (list[str])

  • function_name (str)

  • class_name (str)

  • hash (str)

  • source_code (str)

  • object_code (str)

  • defaults (str)

  • is_class (bool)

  • is_function (bool)

  • is_callable (bool)

  • is_initialized (bool)

  • has_param_variable (bool)

leaf_t
Variables:
  • requested (str)

  • matched (str)

  • branch_name (str)

  • tree_name (str)

  • path (str)

branch_t
Variables:
  • requested (str)

  • matched (str)

  • tree_name (str)

  • leaves (list[leaf_t])

tree_t
Variables:
  • size (int)

  • requested (str)

  • matched (str)

  • branches (list[branch_t])

  • leaves (list[leaf_t])

meta_t
Variables:
  • hash (str)

  • original_input (str)

  • original_path (str)

  • original_name (str)

  • req_trees (list[str])

  • req_branches (list[str])

  • req_leaves (list[str])

  • mis_trees (list[str])

  • mis_branches (list[str])

  • mis_leaves (list[str])

  • dsid (int)

  • AMITag (str)

  • generators (str)

  • isMC (bool)

  • derivationFormat (str)

  • inputrange (dict[int, int])

  • inputfiles (dict[int, str])

  • config (dict[str, str])

  • eventNumber (int)

  • event_index (int)

  • found (bool)

  • DatasetName (str)

  • ecmEnergy (float)

  • genFiltEff (float)

  • completion (float)

  • beam_energy (float)

  • crossSection (float)

  • crossSection_mean (float)

  • totalSize (float)

  • nFiles (int)

  • run_number (int)

  • totalEvents (int)

  • datasetNumber (int)

  • identifier (str)

  • prodsysStatus (str)

  • dataType (str)

  • version (str)

  • PDF (str)

  • AtlasRelease (str)

  • principalPhysicsGroup (str)

  • physicsShort (str)

  • generatorName (str)

  • geometryVersion (str)

  • conditionsTag (str)

  • generatorTune (str)

  • amiStatus (str)

  • beamType (str)

  • productionStep (str)

  • projectName (str)

  • statsAlgorithm (str)

  • genFilterNames (str)

  • file_type (str)

  • sample_name (str)

  • keywords (list[str])

  • weights (list[str])

  • keyword (list[str])

  • LFN (dict[str, int])

  • fileGUID (list[st])

  • events (list[int])

  • fileSize (list[float])

particle_t
Variables:
  • e (float)

  • mass (float)

  • px (float)

  • py (float)

  • pz (float)

  • pt (float)

  • eta (float)

  • phi (float)

  • cartesian (bool)

  • polar (bool)

  • charge (float)

  • pdgid (int)

  • index (int)

  • type (str)

  • hash (str)

  • symbol (str)

  • lepdef (list[int])

  • nudef (list[int])

event_t
Variables:
  • event_name (str)

  • commit_hash (str)

  • code_hash (str)

  • deprecated (bool)

  • cached (bool)

  • weight (float)

  • event_index (int)

  • event_hash (str)

  • event_tagging (str)

  • event_tree (str)

  • event_root (str)

  • pickled_data (str)

  • graph (bool)

  • selection (bool)

  • event (bool)

graph_t
Variables:
  • event_name (str)

  • code_hash (str)

  • errors (dict[str, str])

  • presel (dict[str, int])

  • cached (bool)

  • event_index (int)

  • weight (float)

  • event_hash (str)

  • event_tagging (str)

  • event_tree (str)

  • event_root (str)

  • pickled_data (str)

  • train (bool)

  • evaluation (bool)

  • validation (bool)

  • empty_graph (bool) – bool

  • skip_graph (bool) – bool

  • src_dst (dict[str, list[int]])

  • hash_particle (dict[str, int])

  • self_loops (bool)

  • graph_feature (dict[str, str])

  • node_feature (dict[str, str])

  • edge_feature (dict[str, str])

  • pre_sel_feature (dict[str, str])

  • topo_hash (str)

  • graph (bool)

  • selection (bool)

  • event (bool)

selection_t
Variables:
  • event_name (str)

  • code_hash (str)

  • errors (dict[str, int])

  • cached (bool)

  • event_index (int)

  • weight (float)

  • event_hash (str)

  • event_tagging (str)

  • event_tree (str)

  • event_root (str)

  • pickled_data (str)

  • pickled_strategy_data (str)

  • strat_merge (dict[str, str])

  • data_merge (dict[str, str])

  • cutflow (dict[str, int])

  • timestats (list[float])

  • all_weights (list[float])

  • selection_weights (list[float])

  • allow_failure (bool)

  • _params_ (str)

  • graph (bool)

  • selection (bool)

  • event (bool)

batch_t
Variables:
  • events (dict[str, event_t])

  • graphs (dict[str, graph_t])

  • selections (dict[str, selection_t])

  • code_hashes (dict[str, code_t])

  • meta (meta_t)

  • hash (str)

folds_t
Variables:
  • test (bool)

  • train (bool)

  • evaluation (bool)

  • kfold (int)

  • event_hash (str)

data_t
Variables:
  • name (str) – str

  • truth (list[list[float]])

  • pred (list[list[float]])

  • index (list[list[float]])

  • nodes (list[list[float]])

  • loss (list[list[float]])

  • accuracy (list[list[float]])

  • mass_truth (map[int, list[list[float]]])

  • mass_pred (map[int, list[list[float]]])

metric_t
Variables:
  • truth (dict[str, list[list[float]])

  • pred (dict[str, list[list[float]])

  • acc_average (dict[str, float])

  • loss_average (dict[str, float])

  • num_nodes (dict[str, int])

root_t
Variables:
  • batches (dict[str, batch_t])

  • n_events (dict[str, int])

  • n_graphs (dict[str, int])

  • n_selections (dict[str, int])

tracer_t
Variables:
  • root_names (dict[str, root_t])

  • root_meta (dict[str, meta_t])

  • hashed_code (dict[str, code_t])

  • event_trees (dict[str, int ])

  • link_event_code (dict[str, str])

  • link_graph_code (dict[str, str])

export_t
Variables:
  • root_meta (dict[str, meta_t]) – dict[str, meta_t]

  • hashed_code (dict[str, code_t]) – dict[str, code_t]

  • link_event_code (dict[str, str]) – dict[str, str]

  • link_graph_code (dict[str, str]) – dict[str, str]

  • link_selection_code (dict[str, str]) – dict[str, str]

  • event_name_hash (dict[str, list[str]])

  • graph_name_hash (dict[str, list[str]])

  • selection_name_hash (dict[str, list[str]])

  • event_dir (dict[str, str])

  • graph_dir (dict[str, str])

  • selection_dir (dict[str, str])

settings_t
Variables:
  • projectname (str)

  • outputdirectory (str)

  • files (dict[str, list[str]])

  • samplemap (dict[str, list[str]])

  • verbose (int)

  • chunks (int)

  • threads (int)

  • enable_pyami (bool)

  • tree (str)

  • eventname (str)

  • graphname (str)

  • selectionname (str)

  • event_start (int)

  • event_stop (int)

  • training_name (str)

  • run_name (str)

  • device (str)

  • optimizer_name (str)

  • optimizer_params (dict[str, str])

  • scheduler_name (str)

  • scheduler_params (dict[str, str])

  • kfolds (int)

  • batch_size (int)

  • epochs (int)

  • epoch (dict[int, int])

  • kfold (list[int])

  • model (code_t)

  • model_params (dict[str, str])

  • kinematic_map (dict[str, str])

  • debug_mode (bool)

  • continue_training (bool)

  • runplotting (bool)

  • sort_by_nodes (bool)

  • enable_reconstruction (bool)

  • kinematic_map

  • getgraph (bool)

  • getevent (bool)

  • getselection (bool)

  • eventcache (bool)

  • graphcache (bool)

  • search (list[str])

  • get_all (bool)

  • hashed_code (dict[str, code_t])

  • link_event_code (dict[str, str])

  • link_graph_code (dict[str, str])

  • link_selection_code (dict[str, str])