madgraph如何在取消权重时将权重应用于事件?

提问者马可·罗西

嗨,我正试图利用madgraph 2.8.3中定义的EventFile类的unweight方法/各种各样的/lhe_parser。第440行为py。

我想在一个自定义编写的加权事件Les Houches事件文件上使用unweight函数,用于一个简单的过程g g>t t ~,以LHE格式输出未加权事件。
到目前为止,在将加权LHE事件文件加载到EventFile对象中后,我对其调用unweight,这很好。唯一的一点是,该方法没有将未加权的事件权重替换为横截面值(我使用默认的标准化=“avarage”选项),与通常的madgraph生成管道一样。相反,我得到了加权文件中遇到的最大权重。

这应该是意料之中的,因为我阅读了lhe_parser.py的第561-568行(特别是第563行):

561:elif wgt>0:
562:nb_keep+=1
563:event.wgt=已写入_重量(最大值(wgt,max_wgt))
564:如果abs(wgt)>max_wgt:
565:躯干交叉+=abs(wgt)-最大wgt
566:如果事件目标==0或nb_keep<=事件目标:
567:如果输出路径:
568:outfile(输出文件)。写入(str(事件))

我的目标是检索madgraph行为,但我不想在EventFile中手动存储覆盖每个event.wgt的权重。

我想知道在生成管道中,madgraph将横截面值分配给未加权的事件权重。

谢谢

问题信息

语言:
英语编辑问题
状态:
回答
对于:
MadGraph5_aMC@NLO 编辑问题
受让人:
无受让人编辑问题
上次查询:
上次答复:
此消息的修订历史记录
奥利维埃·马特勒(奥利维耶·马特勒尔):
#1个

当我们决定将事件数量截断为用户请求的数量时,这是手动完成的。

干杯,

奥利维尔

此消息的修订历史记录
马可·罗西(罗马):
#2

你好,奥利维尔,

你能告诉我在哪里完成这项工作的相关代码吗?

谢谢

马尔科

此消息的修订历史记录
奥利维埃·马特勒(奥利维耶·马特勒尔):
#3

应该位于madgraph中类MultiEventFile的函数unweight中/各种各样的/lhe_parser。第页

在这里我们定义了新的重量(自写_weight=new_wgt)将取决于选择的归一化。

干杯,

奥利维尔

你能帮我解决这个问题吗?

提供自己的答案,或询问马可·罗西如有必要,了解更多信息。

要发布消息,您必须登录.