Privacy and Security Notice

CELEG status

CELEG status

Introduction

CELEG is the CEbaf Large acceptance spectrometer Event Generator. It was originally written in 1989 by Don Joyce for VMS, and wasn't well-maintained when CLAS made the switch to Unix systems. Recently, it has been resurrected; click here for a review of its history and status as of about June 1997 or so, written by T.-Y. Tung.

As CLAS approaches serious data-taking, it will become necessary to simulate the response of the detector to the physics we'll be seeing. For this, we will need to generate events on a large scale, reproducing the actual physics involved as closely as possible. That's where CELEG comes in.

CELEG is primarily intended to be used to create BOS files that may be read in by GSIM, the GEANT simulation of the CLAS detector. However, the output files simply contain the 4-vectors and vertex positions for each event, and therefore could conceivably be used with any simulation. For those who can't read BOS-format files, an ASCII format is also available. Someday, maybe I'll document it.

How to use it

The description given by T.-Y. is still useful, so I won't bother updating it right now...

Current status

I've made three major changes to CELEG since taking the project over, which don't show up in T.-Y.'s document:
  1. There is no longer a problem with momentum non-conservation. This was due to a mistake that apparently existed since the original incarnation of CELEG. From basic electron scattering, one can calculate Q^2 and W from the electron incident and outgoing energies, and the outgoing electron angle. There was a bug in this calculation, resulting in the possibility to try to throw an event at a value of Q^2 that was too high.
  2. Fermi momentum is now handled properly. This one also seems to date back a bit, near as I can tell. Fermi momentum is implemented by first picking the magnitude for the fermi momentum, and then randomly determining the angle. (Note that in the original program, THETA was distributed uniformly from 0 to PI. Now, COS(THETA) is distributed uniformly from -1 to 1). However, when calculating the momentum of the outgoing particles, the momentum of the center-of-mass perpendicular to the beam was ignored. This has now been corrected. Here's a picture of the generated momentum differences using a deuterium target, just to show that I'm not cheating (the horizontal axes are in units of GeV/c): Looking at the picture on the screen, I see that I didn't document it well enough. The top left plot is the total momentum in the X-direction, the top right is Y, the bottom left is Z, and the bottom right is total. They really are different histograms. I'll redo the plot sometime and fix that...
  3. Also on the Fermi momentum implementation, there is now a switch you can put into the ftn15 file, called FIX_TGT. If you have a line in your file like
     
      FIX_TGT    YES     0.00000   0.00000   0.00000   0.00000
     
    then CELEG will work slightly differently then if you set it to NO (the default). By default, if a nuclear target is used, not only are the nucleons within the nucleus given Fermi momentum, but CELEG will randomly select what type of nucleon (neutron or proton) was struck on an event-by-event basis. Setting the switch to YES causes CELEG to always use the target type specified in the TARGET switch.
  4. The input file has been renamed from "ftn15" to "celeg.in". This is basically an aesthetic change; the real solution is to make the input file settable on the command line, which is on the to-do list...
  5. The PART bank has been implemented. This is a simple attempt to create a bank that has only the four-vectors of the particles, and is compatible with the rest of the software. It isn't perfect yet (see the to-do list).
  6. Default values are now assumed for the resonance parameters. This is the first step in modifying CELEG to be more flexible and stable. If the resonance parameters (mass, width, etc.) have default values, the user will be less likely to change them (I hope).

What's next?

My list of things to do with CELEG is growing. Any comments or queries about how it works or requests for bug fixes or new features should be directed to me. Currently on the list:

Last updated: 24 July 1998