Physics Notes

From Sven Kreiss

Installing the root binaries seemed like a clever idea at the time. Though installing ExRootAnalysis seems to be pretty hard now. It needs some variables from test/Makefile.arch in the root source tree. I now downloaded this file from http://root.cern.ch/viewcvs/trunk/test/Makefile.arch?revision=25546&view=markup and try to apply changes to the ExRootAnalysis makefile.

Update: Simplest solution seems to be to drop this file into the ExRootAnalysis folder and change the first include in the makefile to ./Makefile.arch. Now it compiles. Lots of warnings but I think this has nothing to do with this. A permanent fix would be to use root-config in the Makefile directly, but I am not going to touch it for now.

Contents

[edit] MadGraphII

These are my personal notes. I hope that I can create a patch at some point that will make all of MadGraph/MadEvent play nicely under Ubuntu 8.10 with just gfortran.

It appeared everything was working apart from processes with gg in the initial state. The ./bin/newprocess already hangs. I traced down the bug to MadGraph and from there to the file lapack.f. As I knew that I had lapack installed as a shared library, I went to the makefile and removed all occurences of lapack.o and added to the FFLAGS -llapack. It is working now! My suspicion is that this version of lapack (it says copyright 1993 ... I was eight at the time) does not play nicely with gfortran.

MadGraphII/gencolor.f, line 317: "zero" is defined as float/double but the print statement is integer. Just replace "zero" by 0.

[edit] MadEvent / MadGraph

Seems hopeless to try to substitute all f77 commands in all makefiles with gfortran. Surprisingly, a simple symlink from f77 and g77 to gfortran seems to work in Intrepid.

lhapdf replaced by version 5.6 (compiles with gfortran). pgs: add extra command line option: "-ffixed-form".

me2pythia.f: I gave up on trying to port this. The steps below are not sufficient to get it running.

         mainloop: do i=3,NUP
            if(ISTUP(i).ne.1) cycle
            NPART=NPART+1
            IPART(NPART)=i
            if(iabs(IDUP(i)).gt.nqmatch.and.IDUP(i).ne.21) cycle
            if(MOTHUP(1,i).gt.2) cycle
C     Remove final-state partons that combine to color singlets
            IF((ABS(IDBMUP(1)).NE.11.OR.IDBMUP(1).NE.-IDBMUP(2)).AND.
     $           nosingrad) THEN
               DO II=3,NUP
                  IF(II.NE.i.AND.ISTUP(II).EQ.1)THEN
                     IF((IDUP(II).EQ.-IDUP(i).OR.
     $                    IDUP(i).EQ.21.AND.IDUP(II).EQ.21).AND.
     $                    ICOLUP(1,II).EQ.ICOLUP(2,i).AND.
     $                    ICOLUP(2,II).EQ.ICOLUP(1,i))then
c                        print *,'Found color singlet'
                        CALL PYLIST(7)
                        exit mainloop
                     endif
                  ENDIF
               ENDDO
            ENDIF
            NLJETS=NLJETS+1
            PTCLUS(NLJETS)=PTPART(NPART)
 140     enddo mainloop

The difference is the "named" mainloop and the statement "exit mainloop" instead of "GOTO 140".


mcfio: in the file arch_mcfio remove the -fdebug-kludge option

stdhep: in arch_stdhep add -fd-lines-as-comments

[edit] ExRootAnalysis

cd /usr/lib/root/5.18
sudo ln -s /home/zween/physics/MG_ME_V4.4.7/ExRootAnalysis/lib/libExRootAnalysis.so ./libExRootAnalysis.so

[edit] mT2

  • makefile.include: do not use ROOTHOME, rather replace the two minuit include and minuit lib variables with $(shell root-config --libdir) etc.; also: create symlink from /usr/lib/root/libMinuit2.so to the file in the subfolder 5.18 (or similar); if you can run sudo ldconfig then this should also do it
  • ExampleEvent.h is missing an include to stdlib.h