I got the original distribution MUCAT9.zip to compile under Linux
with the following steps (working in tcsh).
i) unzip to directory
ii) I copied Mucat/fort/scr9 to Mucat/fort/scr9a
and did my modifications on the latter directory.
(this readme is located the scr9a directory)
iii) I defined symbolic links to cover all variations of
the inc file spelling. This is done in script up.
source up
iv) I had to fix the string definition for the FCN files in
FCNLIB1.FOR from \ to / (for unix file system).
v) wrote an updated makefile
vi) I compiled the program at PSI llc using the pgf90, because
the code contained some fortran 90 structures.
vii) For convenience I installed the IBM free linux fortran compiler
on my pc FC = /opt/intel_fc_80/bin/ifort and continued
to work locally
viii) For running the program I moved to Mucat/run/test.
I wrote a csh equivalent to the original dos script
runV9.bat, called r_mucat9
ix) I tested with
r_mucat9 Cold
After changing the fcn extensions to FCN on the data files
in Mucat/fcn/fcn_4/ they program executes successfully.
x) I zipped the current version, so that it can be downloaded from
the scat.html webpage.
As a next step we have to check whether the program runs correctly.
Alas, it does NOT.
This MC is a sort of "ever-growing" program. First, I wrote a code for studying muonic-atom thermalization. Then I added transfer to higher-Z elements and muonic-molecule formation. This worked for infinite single-hydrogen-isotope targets, so that the rates did not depend on scattering angle. The MC calculation schema was similar to that of Manfred's program, with a finer interpolation of the scattering rates. I also used this code for simulations for a solid, with simple scattering rates, but eventually I decided to develop a separate program for condensed targets.
Concerning diffusion of muonic atoms, I performed first calculations for your muCap proposal, which of course required double differential rates. In my code, this is still an infinite target and muon stop is given at a fixed point. So that it would be necessary to add your TPC geometry and a realistic muon-stop distribution from another code or write such a stuff ab initio, maybe in a beautiful c++. Or maybe even write a new and better MC code using only the molecular scattering rates, as it has been done by Jan Wozniak for multilayered solid or by Randolf Pohl for their diffusion experiment.
The diffusion calculations for the proposal were performed for pure H2. After the Ascona conference, as you had asked me, I extended the code for a H2+D2_Z target. All necessary scattering rates are included, so that one can change D2 or Z admixture in a wide range of concentrations. In fact, I made only a few runs, to see the dependence of the muonic-atom diffusion range on a D2 admixture. The result was reasonable and agreed well with Valery's calculations. I did not performed further runs and the code was waiting until now. Certainly it needs further tests, but I still do not have enough time for that. Therefore I think that it is better to send this program as is, and let your students to work on it, and maybe write something better.
The energy and angular grids used for the double differential scattering rates were a compromise between the MC accuracy and accessible RAM (I perform calculations on PCs). Now, one has more RAM, so that finer grids can be used. If your simulations were sensitive to such parameters, I would recalculate the scattering rates for finer grids. But I guess, at the moment, it is most important for you to have all physics and geometry included.
I enclose a description of input parameters and some remarks in the README file. I wrote many comments in the code, while writing it, so I hope most of things will be clear for you. If not - ask me. There is an example of the input file - TEST.INP . I also enclose an output obtained for 10^6 stopped muons. I hope that the output is sufficiently commented. It shows muonic-atom energy and spin population versus time.
Concerning diffusion, the mean diffusion radius is saved for various time bins. One can obtain other information, depending on the input parameters. I guess, you will not be interested in x-ray time spectra from muon transfer to higher-Z elements, but this was used by the Fribourg guys. I also made some runs for Bob Siegel -- he was interested in the pm(F=0) and pm(F=1) diffusion distance at different times. This is connected with the idea of measurement of muon capture in pm(F=1), using a large difference between the magnitudes of the scattering xsections for F=0 and F=1. A spin-dependent diffusion radius is saved in separate files, when the input parameter IFBOB is set to YES. Well, I saw the results, made some pictures, but never studied deeper this problem. Do you think that your present experiment could be sensitive at short times to such a diffusion-vs-spin observable and give some informationon on muon nuclear capture in the triplet pm?