Pythia8-3 Particle

Particlet 类

 mypythia.event 是每次产生事例的粒子集合。

mypythia.event[i].id();          // id

mypythia.event[i].name();   // name, string 类型

mypythia.event[i].tau();      // 寿命

mypythia.event[i].m();        // mass in GeV

mypythia.event[i].m0();      // nominal mass

mypythia.event[i].mt();       // 横质量

mypythia.event[i].mt2();     // 横质量平方

mypythia.event[i].e();          // energy

mypythia.event[i].px();        // 动量 px。还有 py, pz。

mypythia.event[i].pt();         // 横动量

mypythia.event[i].pt2();       // 横动量的平方

mypythia.event[i].pAbs();                 // 3-动量

mypythia.event[i].pAbs2();               // 3-动量平方

mypythia.event[i].theta();                  // 极角

mypythia.event[i].phi();                     // 方位角

mypythia.event[i].y();                         // 快度

mypythia.event[i].eta();                     // 赝快度

mypythia.event[i].spinType();          // 2s+1

mypythia.event[i].isCharged();       // 是否带电(布尔型)

mypythia.event[i].isNeutral();          // 是否中性(布尔型) 

mypythia.event[i].charge();              // 电荷

mypythia.event[i].chargeType();     // 电荷*3

mypythia.event[i].colType();             // 0: singlet; 1: triplet; -1: antitriplet; 2: octets.

 

Pythia8-1 Pythia 的使用

Pythia 的使用:

1、在主程序的开头:

#include "Pythia.h"

 或者

using namespace Pythia8;

2、生成对象:

Pythia mypythia;

生成的对象 mypythia 的一些属性或变量是按默认值初始化的,如果要改变一些设置或选项可以有两种方式(在mypythia.init()之前)

mypythia.readString(string); // 改变某个变量;

or 

mypythia.readFile(fileName); // 批量改变变量;

3、接下来初始化生成子。mypythia.init() 有几种不同的输入方式

mypythia.init(idA,idB,eA,eB);
mypythia.init(idA,idB,eCM);
mypythia.init(LHAini*,LHAevent*);
mypythia.init(fileName);
mypythia.init();

一旦 init() 运行过后,所有的变量都会传递到各个过程中去,这之后的 mypythia.readString() or readFile()是没用的。

4、生成事例:

mypythia.next();

结果可以用 mypythia.event 和 mypythia.process。

5、统计。

mypythia.statistics();

得出子过程的截面以及问题的数目(aborts, errors and warnings)。