Re: copy selected entries of subset of chain

From: Margar Simonyan <margar.simonyan_at_gmail.com>
Date: Tue, 12 Apr 2011 16:01:56 +0200


Hi Sebastien

I tried that, but it didn't satisfies my requirements. I wrapped my selection code inside a python function, but didn't get it working as expected. Another issues is handling the trigger, I would like to add new branches corresponding to some trigger items, read values via trigger dpd tool, and write them.

Margar

On Tue, Apr 12, 2011 at 3:44 PM, Sebastien Binet <binet_at_cern.ch> wrote:
> Margar,
>
> On Tue, 12 Apr 2011 15:18:05 +0200, Margar Simonyan <margar.simonyan_at_gmail.com> wrote:
>> Hi Philippe
>>
>> when the second file is opened and, if I understand well, ROOT changes
>> branch addresses of chain, it also forwards the changes to newTree.
>> Since all branches of chain are active at that point, it tries to set
>> address for newTree for branches that newTree does not have. This is
>> at least one problem.
>
> as I suspect this is for filtering atlas d3pds, you could perhaps give a
> spin to the "wonderful and amazing" filter-and-merge-d3pd.py script...
>
> $ filter-and-merge-dp3d.py -h
> Accepted command line options:
>  -i, --in=<INFNAME>                   ...  file containing the list of input files
>  -o, --out=<OUTFNAME>                 ...  output file name
>  -t, --tree=<TREENAME>                ...  name of the tree to be filtered.
>                                           other trees won't be copied by default
>                                           (except if you pass --keep-all-trees)
>     --var=<VARSFNAME>                ...  path to file listing the branch names
>                                           to be kept in the output file.
>     --grl=<GRLFNAME>                 ...  path to a GRL XML file or a list of
>                                           comma-separated GRL XML files
>  -m, --maxsize=<sz>                   ...  maximum zip size of the main tree (in Mb.)
>     --fakeout                        ...  create fake output file if empty or
>                                           non valid input tree is found (ease
>                                           the pain on the GRID)
>  -s, --selection=<PYTHON_CODE>        ...  a python snippet to select events
>                                           or the path to python file holding
>                                           the definition of a 'filter_fct'.
>                                           ex:
>                                             t.eg_px[0] > 10000 and t.eg_py[0] > 10000
>                                           NOTE: the tree must be named 't' in your code.
>                                           or:
>                                            file:foo.py
>                                            where foo.py contains:
>                                            def filter_fct(t):
>                                                return t.eg_px[0] > 10000
>                                           NOTE: the function must be named 'filter_fct' and take the tree as a parameter
>     --keep-all-trees                 ...  keep, filter and merge all other trees.
>
> hth,
> -s
>
> --
> #########################################
> # Dr. Sebastien Binet
> # Laboratoire de l'Accelerateur Lineaire
> # Universite Paris-Sud XI
> # Batiment 200
> # 91898 Orsay
> #########################################
>
Received on Tue Apr 12 2011 - 16:02:33 CEST

This archive was generated by hypermail 2.2.0 : Tue Apr 12 2011 - 17:50:01 CEST