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 - 15:45:18 CEST
- application/pgp-signature attachment: stored
This archive was generated by hypermail 2.2.0 : Tue Apr 12 2011 - 17:50:01 CEST