Broadcasting operations on arrays
Using RVec it's perfectly possible to do:
root [3] ROOT::RVec<double> v {1., 2., 3.};
root [4] v - 2.
(ROOT::VecOps::RVec<decltype(v[0] - y)>) { -1.0000000, 0.0000000, 1.0000000 }
But this behaviour is not reproduced by the proxies:
In [4]: tree.LHEPdfWeight - tree.LHEPdfWeight[0]
Out[4]: FloatProxy(MathOp(subtract, GetArrayColumn('Float_t[]', 'LHEPdfWeight', GetColumn('UInt_t', 'nLHEPdfWeight')), GetItem(GetArrayColumn('Float_t[]', 'LHEPdfWeight', GetColumn('UInt_t', 'nLHEPdfWeight')), 'Float_t', Const('std::size_t', 0)), outType='float'))
(I assume the result should still be an ArrayProxy
)