Code review comment for lp:~maddevelopers/mg5amcnlo/nlo_reweighting

Revision history for this message
Olivier Mattelaer (olivier-mattelaer) wrote :

Hi Rik,

> Sorry. I had a typo. It's line 1130. I’m using revision 367.

Ok, thanks, I will secure that part (This is just to have a nice html output and removing some fake entry).

> I don't think there is any freedom in doing the reweighting. There can only be one correct way, I think.

That’s just not True. Let’s take a simple example (no physics in mind here)

\int(b+v) and you want to reweight to get \int(B+V)
you can easily check that (at least) two reweighting procedure are valid
1)
b term reweighted by B/b
v term reweighted by V/v

2)
b term reweighted by (B+V)/(b+v)
v term reweighted by (B+V)/(b+v)

Both are theoritically correct (in infinite statistic limit).
Only a detail study on how fast they converge (which is likely to be function dependent) can determine which of those two method is the most appropriate.
My feeling is that the second method is more efficient but I actually do not know for sure.

> 1. use the ratio of the Borns for the Born and the counter terms.
> 2. use the ratio of the virtual for the virtual and the approximated virtual.

To take the kind of example above you are trying to reweight:
\int{b+a}+ \int{v-a} = \int(b+v-a+a) and we want to get \int(B+V)
so you can reweight “a” by any factor that you like since the integral does not depend on it at the end.
(So you actually have an infinite number of possible reweighting method)

if we take “a” proportional to “b” then for me the two most natural method are the one I have implemented.
b term reweighted by B/b
v term reweighted by V/v
a term reweighted by A/a=B/b
and
b term reweighted by (B+V)/(b+v)
v term reweighted by (B+V)/(b+v)
a term reweighted by (B+V)/(b+v)

The one that you propose is
b term reweighted by B/b
v term reweighted by V/v
a term reweighted by V/v

The advantage of the first method (which is actually NLO_basic) is that you have \int{b+a} which is re-weighted to \int{B+A} and \int{v+a} which is re-weighted to \int{V+A}.
The second advantage of that method is that this is the most natural one (to my point of view).

The advantage of the two other methods (which can be called NLO_VT and NLO_Rik) is to have “v” and “a” are reweighted by the same factor. Which is arguably an interesting property to avoid the contribution of \int{v-a} to blow up after the reweighting procedure.
I do not think this is that interesting to have both of them implemented in the code (so three NLO accurate one). I would argue that having NLO_VT is slightly more interesting since it applies a global factor to all of them.
Which correspond to the second reweighting method of my first example. Since I have a feeling that it can have some nice mathematical property, I think it is legitimate to prefer that one over the other one.

Cheers,

Olivier

> On Feb 25, 2016, at 12:18, Rikkert Frederix <email address hidden> wrote:
>
> Hi Olivier,
>
> Sorry. I had a typo. It's line 1130. I'm using revision 367.
>
> I don't think there is any freedom in doing the reweighting. There can only be one correct way, I think. I believe it is:
>
> 1. use the ratio of the Borns for the Born and the counter terms.
> 2. use the ratio of the virtuals for the virtual and the approximated virtual.
>
> Cheers,
> Rik
> --
> https://code.launchpad.net/~maddevelopers/mg5amcnlo/nlo_reweighting/+merge/283769
> Your team MadDevelopers is subscribed to branch lp:~maddevelopers/mg5amcnlo/2.3.4.

« Back to merge proposal