Ravi Shekhar
Email: <ravi.shekhar AT SPAMFREE duke DOT edu>
2km Muon Detector Work
Temporarily leaving behind the last project, I am moving on to running the 18m Nuance format kin files through the 2km-geant4 simulation.
As a preliminary check, I have made plots of vertex and energy data from the kin files using a python script (part1 , part2) and plotting library. Please email me if you would like to see the script or need help setting it up.
Plots are for muons and muonic events only:
The peak looks to be in the right place.
This is in accordance with what we would guess given the off center nature of the beam. This means we can proceed to the next step, which is actually running these kin files through the simulation and observing the results
2km Software and Fedora Core 4
As a background task while waiting for compilations, programs to run etc., I have been looking into getting the 2km software to run on Fedora Core 4 with it's updated gcc and fortran compilers. At this point it does not look good for any fortran 77 specific code. These are the issues.
The fortran compiler has been updated to a Fortran 95 compliant gfortran.
GCC 3.2 and the accompanying fortran compiler, g77 are still available through compatibility packages
Any code that does not compile with gfortran will need to be compiled with g77
The problem is that g77 does not mix well with the rest of the system. It can be mixed with code compiled by gfortran with a few command line switches, on the condition that I/O is only done in one language or the other
gfortran can link against system libraries, but g77 cannot outside of the g77 fortran standard library
Basically this limits g77 to isolated programs only. It cannot interoperate with gcc 4.0 compiled code (the entire system libraries), and it barely interoperates with gfortran. It does however interoperate with the compatibility gcc version 3.2. And gcc32 can call system libraries with the correct command line switches.
So there are two options. First update any Fortran code that interoperates with C so it can be compiled with gcc4 and gfortran. Clearly not a trivial undertaking for programs like PAW and Cernlib.
Or jump through hoops as follows. This will require the gcc4 C code interface layer to be written, and some tricky work with the gfortran compiler. The condition on I/O between g77 and gfortran still applies.
g77 -> gfortran -> gcc4 -> system libraries
Alternatively, this is possible, although it will probably more difficult than the other way because of gcc32 not being aware of gcc4 calling conventions. Similar I/O issues are expected.
g77 -> gcc32 -> system libraries
On the postive side, ROOT compiles flawlessly with GCC 4.0. Geant4 and CLHEP should compile with a little bit of work on the makefile and Imakefile, because some options accepted by GCC 3 are no longer accepted or necessary with GCC 4.0.
A transcript from a cern meeting that is relevant is here Simulation Leaders Project Meeting

