MCFM process 280: f(p1)+f(p2)->γ(p3)+f(p4)

Install mcfm-6.0-0.0.8

./configure --prefix=$HOME

Need to modify gridwrap.cxx and mcfm_grid.cxx for process 280 and appl_pdf.cxx (to use basic pdf)

run mcfm twice:

./mcfm input.DAT

grids produced with weights[alpha0, Nptbins]. weights[alpha1, Nptbins] each containing weight[120 subprocesses]

Code Changes Required for Process 280

mcfm-6.0-0.0.8/src/User/standSimple.cxx

make standSimple
./standSimple grid-30-Suegammajet_pt3.root

Modifications previously made to gridwrap.cxx now mcfm-bridge-0.0.9/src/mcfm-interface.cxx

mcfm-6.0-0.0.8/src/User/gridwrap.cxx

else if ( nproc_.nproc == 280 ) 
    {
      pdf_function = "basic"; 
      glabel+="-Suegammajet";
      q2Low = std::pow(1.,2), q2Up = std::pow(3500.,2);
    }  

define double eta[] and pt[] and ensure nObsBins[_Ngrids] correct

mcfm-6.0-0.0.8/src/User/mcfm_grid.cxx

in decideSubProcess()

else if ( nproc_.nproc == 280 ){
      factor = 1.0;
      if      ( iflav2 == -5)  iProcess = 0;
      else if (iflav2 ==  -4)  iProcess = 1;
      else if (iflav2 ==  -3)  iProcess = 2;
      else if (iflav2 ==  -2)  iProcess = 3;
      else if (iflav2 ==  -1)  iProcess = 4;
      else if (iflav2 ==   0)  iProcess = 5;
      else if (iflav2 ==   1)  iProcess = 6;
      else if (iflav2 ==   2)  iProcess = 7;
      else if (iflav2 ==   3)  iProcess = 8;
      else if (iflav2 ==   4)  iProcess = 9;
      else if (iflav2 ==   5)  iProcess = 10;
      if      (iflav1 ==-4) iProcess= iProcess+11;
      else if (iflav1 ==-3) iProcess= iProcess+22;
      else if (iflav1 ==-2) iProcess= iProcess+33;
      else if (iflav1 ==-1) iProcess= iProcess+44;
      else if (iflav1 == 0) iProcess= iProcess+55;
      else if (iflav1 == 1) iProcess= iProcess+66;
      else if (iflav1 == 2) iProcess= iProcess+77;
      else if (iflav1 == 3) iProcess= iProcess+88;
      else if (iflav1 == 4) iProcess= iProcess+99;
      else if (iflav1 == 5) iProcess= iProcess+110;     
}      

applgrid-1.4.27/src/appl_pdf.cxx

#include "appl_grid/basic_pdf.h"
basic_pdf basicpdf;

mcfm-6.6-0.0.5

mcfmbridge-config --ldflags
export FFLAGS="`mcfmbridge-config --ldflags`"
export LDFLAGS="$FFLAGS"
export LDFLAGS="$LDFLAGS `lhapdf-config --ldflags`"


export FASTJETPATH=/afs/cern.ch/sw/lcg/external/fastjet/3.0.3/x86_64-slc5-gcc43-opt
export PATH=$PATH:$FASTJETPATH/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$FASTJETPATH/lib

Modifications previously made in gridwrap.cxx for process 280 now already in place in mcfm-bridge-0.0.9/src/mcfm-interface.cxx

Only changes now in mcfm-interface.cxx

q2Low = std::pow(1.,2), q2Up = std::pow(3500.,2);

Define grid binning in mcfm-bridge-0.0.9/src/mcfm_grid.cxx

static const double pt[] = 
  //{100,105,110,115,120,125,130,135,140,145,150,155,160,165,170,175,180,185,190,195,200,225,250,275,300,325,350,375,400,450,500};
  {100,125,150,175,200,250,300,350,400,500};
const Int_t etaBinnum = sizeof(eta)/sizeof(Double_t) - 1;
const Int_t ptBinnum = sizeof(pt)/sizeof(Double_t) - 1;int nObsBins[_Ngrids] = {etaBinnum, ptBinnum, etaBinnum, ptBinnum, etaBinnum, ptBinnum};

Just need to change pt and eta plot max/min: src/User/nplotter_generic.f and nplotter_dirgam.f

example-0.0.1

export LHAPATH=/afs/cern.ch/sw/lcg/external/MCGenerators/lhapdf/5.8.9/share/PDFsets 
./stand /afs/cern.ch/user/c/cheatham/mcfm-6.6-0.0.5/Bin/grid-40-6-15-3-Suegammajet_pt3.root

packages

wget http://www.hepforge.org/archive/applgrid/applgrid-1.4.36.tgz

wget http://www.hepforge.org/archive/applgrid/mcfm-bridge-0.0.15.tgz

wget http://www.hepforge.org/archive/applgrid/mcfm-6.6-0.0.8.tgz

svn checkout http://hoppet.hepforge.org/svn/trunk hoppet

and then untar,

tar -xzf applgrid-1.4.28.tgz

source setup.sh which is

export BASEDIR=DIR111

export ARCH=-m64

export CXXFLAGS=$ARCH

export F90FLAGS=$ARCH

export CFLAGS=$ARCH

export FFLAGS=$ARCH

export LDFLAGS=$ARCH

export PATH=${BASEDIR}/bin:${PATH}

export LD_LIBRARY_PATH=${BASEDIR}/lib:${LD_LIBRARY_PATH}

##export LDFLAGS="`root-config --ldflags` ` mcfmbridge-config --ldflags` `applgrid-config --ldflags` -lstdc++ `root-config --libs`"

the last line should be commented for the first compilation round. Then, one should uncomment it and compile bridge and mcfm once again.

./configure --prefix=$HOME/PAVEL

make install

///also needed

ln -s `lhapdf-config --pdfsets-path` .

//// if wish to set dswhisto=true in steering file (.DAT) then

edit mcfm-6.6-0.0.8/makefile

#CERNLIB = /cern/pro/lib

export CERNLIB=/afs/cern.ch/sw/lcg/external/cernlib/2006a/x86_64-slc5-gcc43-opt/lib/

NTUPLES = YES

make

//slc6

. /afs/cern.ch/sw/lcg/external/gcc/4.6/x86_64-slc6/setup.sh

. /afs/cern.ch/sw/lcg/app/releases/ROOT/5.34.00/ x86_64-slc6-gcc46-opt/root/bin/thisroot.sh

Edit | Attach | Watch | Print version | History: r11 < r10 < r9 < r8 < r7 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r11 - 2013-11-16 - SueCheatham
 
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    Sandbox All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2020 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
or Ideas, requests, problems regarding TWiki? use Discourse or Send feedback