nathalysns / LiuSIDIS

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

LiuSIDIS

A sidis event generator

Authors

Tianbo Liu, Zhiwen Zhao, Weizhi Xiong, Haiyan Gao

How to use it

A quick start to use this generator

Latest version v3.0 (9 April 2019)

Dependence

  • ROOT, tested with v5.34.21
  • LHAPDF, tested with v6.1, v6.2

Initialization

  • #include "Lsidis.h" //including the head file
  • Lsidis mysidis; //create an object
  • mysidis.SetNucleus(double Np, double Nn); //set proton and neutron numbers
  • mysidis.SetHadron(char * hadron); //set the final state hadron
  • mysidis.SetInitialState(TLorentzVector l, TLorentzVector P); //set initial state kinematics
  • mysidis.SetPDFset("CJ15lo"); //choose a PDF set
  • mysidis.SetFFset("DSSFFlo"); //choose a FF set
  • mysidis.SetRange(double Xmin[6], double Xmax[6]); //set the generating kinematics range, x, y(Q2), z, Pt, phih, phiS

Generate event

  • mysidis.GenerateEvent(int mode, int method); //generate an event and return the weight, (0, 0) in y space, (0, 1) in Q2 space
  • mysidis.GetVariable(char * variable); //return kinematic variable for this event (if it pass a physical condition), e.g. "W", "Q2"
  • mysidis.GetLorentzVector(char * lp); //return the final state Lorentz vector "lp" or "Ph"

About


Languages

Language:Jupyter Notebook 82.6%Language:C++ 8.1%Language:C 7.1%Language:Fortran 0.8%Language:POV-Ray SDL 0.6%Language:Python 0.6%Language:Makefile 0.2%