%====================================================================%
%                  sprocl.tex     27-Feb-1995                        %
% This latex file rewritten from various sources for use in the      %
% preparation of the standard proceedings Volume, latest version     %
% by Susan Hezlet with acknowledgments to Lukas Nellen.              %
% Some changes are due to David Cassel.                              %
%====================================================================%

\documentstyle[sprocl]{article}

\font\eightrm=cmr8

\input{psfig.tex}

\bibliographystyle{unsrt} %for BibTeX - sorted numerical labels by
                          %order of first citation.

\arraycolsep1.5pt

% A useful Journal macro
\def\Journal#1#2#3#4{{#1} {\bf #2}, #3 (#4)}

% Some useful journal names
\def\NCA{\em Nuovo Cimento}
\def\NIM{\em Nucl. Instrum. Methods}
\def\NIMA{{\em Nucl. Instrum. Methods} A}
\def\NPB{{\em Nucl. Phys.} B}
\def\PLB{{\em Phys. Lett.}  B}
\def\PRL{\em Phys. Rev. Lett.}
\def\PRD{{\em Phys. Rev.} D}
\def\ZPC{{\em Z. Phys.} C}

% Some other macros used in the sample text
\def\st{\scriptstyle}
\def\sst{\scriptscriptstyle}
\def\mco{\multicolumn}
\def\epp{\epsilon^{\prime}}
\def\vep{\varepsilon}
\def\ra{\rightarrow}
\def\ppg{\pi^+\pi^-\gamma}
\def\vp{{\bf p}}
\def\ko{K^0}
\def\kb{\bar{K^0}}
\def\al{\alpha}
\def\ab{\bar{\alpha}}
\def\be{\begin{equation}}
\def\ee{\end{equation}}
\def\bea{\begin{eqnarray}}
\def\eea{\end{eqnarray}}
\def\CPbar{\hbox{{\rm CP}\hskip-1.80em{/}}}%temp replacemt due to no font

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%BEGINNING OF TEXT                           
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{document}

\title{HADRONIC ELECTROMAGNETIC FORM FACTORS AND COLOR TRANSPARENCY }

\author{BIJOY KUNDU, PANKAJ JAIN}

\address{ Department of Physics, IIT Kanpur, Kanpur-208 016, India }

\author{JOHN P. RALSTON}

\address{
Department of Physics and Astronomy, University of Kansas, Lawrence,
KS 66045, USA }

\author{JIM SAMUELSSON} \address{Department of Theoretical Physics,
Lund University, Lund, Sweden}


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% You may repeat \author \address as often as necessary %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\maketitle\abstracts{ We review the current status of electromagnetic
form factor calculations in perturbative QCD. There is growing
evidence that factorization prescriptions involving a transverse
coordinate integration, such as that of Li and Sterman, are more
appropriate than the prescription of LePage and Brodsky.  Color
transparency is naturally described within the formalism.  We report
the first explicit calculations of color transparency and nuclear
filtering as perturbatively calculable phenomena.}

%\vskip 1.0cm PACS number(s): 13.40.Fn, 12.38.Bx, 14.20.Dh \vskip 2.0


\section{Introduction}
The applicability of perturbative QCD to exclusive processes
has always been controversial.  Despite the remarkable agreement with
data of the quark-counting scaling laws of Brodsky and Farrar, the
helicity conservation selection rules of Lepage and Brodsky tend not
to agree with data \cite{GRF,GPL,CZ}.

It has not been clear how to interpret this conflict.  By
dimensional analysis, scaling indicates that a finite, minimal number
of quarks is being probed.  However, the failure of hadronic helicity
conservation is a direct test of the factorization scheme, and the
failure cannot be repaired by appealing to models of distribution
amplitudes or their normalizations.  Failure of hadron helicity
conservation apparently rules out dominance by the short distance
formalism.  It has been common to identify the short-distance
formulation as being ``the same as'' perturbative QCD ($pQCD$) itself.  Then
the agreement of the scaling laws with experiments appears to be
rather mysterious.

Theoretical criticisms focus on calculations found to include regions
where the internal momentum transfers are too small for leading order
$pQCD$ to apply reliably \cite{Isg,Rad}.  For even the simplest model
calculations, the case of hadronic form factors, it is found that
large contributions come from the components of quark wave functions
involving large quark spatial separations.

A reasonable resolution of the conflict observes that a factorization
scheme is merely a tool, in which different amplitudes are
re-arranged for the purpose of calculation.  Hence if one factorization
scheme is inapplicable to experiment, one can always try another,
and the underlying applicability of the approximations may be
improved.  Li and Sterman \cite{LS,L} gave an improved factorization
formula for calculating the pion and the proton form factor, which
included Sudakov suppression.  The Sudakov form factor tends to
suppress the regions of large quark spatial separations, thereby
extending the applicability of $pQCD$. We will review the mechanism and
our calculations in detail below.

Unfortunately the Sudakov effect is not sufficiently dramatic to
resolve all the issues in the region of current momentum transfers
($Q^{2}$).  This provides an additional strong motivation for
extending the experimental scope, and in particular for studying
quasi-exclusive reactions in nuclear targets.

The early conception of color transparency \cite{brodMuell} was based
on having large momentum transfer $Q^{2}$ select short distance
regions, freed with color coherence to propagate through a passive nuclear
probe.  Given
the controversies over short-distance dominance, it has not been clear
whether large enough $Q^{2}$ would be obtained to make the basic
assumptions apply at laboratory energies. However, large quark separations
should tend to be absorbed in the
strongly interacting nuclear medium, while small quark separations
should penetrate freely\cite{JB,RP90,PBJ}.  This is the phenomenon
called ``nuclear filtering'', which acts somewhat like Sudakov
suppression.  Instead of $Q^{2}$ as the large dimensionful scale,
there is the large nuclear radius of order $A^{1/3} fm$.

Both Sudakov effects and nuclear
filtering depend directly on the transverse coordinate.  In fact, the
transverse-position space factorization in which color transparency
and nuclear filtering is described \cite{RP90} pre-dates the very similar
factorization of Li and
Sterman \cite{LS,L}.  Both hearken to the proton-proton
scattering work of Botts and Sterman \cite{BS}, which was
constructed to address the inability of Lepage-Brodsky factorization
to describe independent scattering.  Because all of the ideas spring from a
common
factorization prescription, the explicit calculations dovetail
together perfectly, and they can be presented in the same format.

\section{Hadronic Form Factors}

LePage and Brodsky \cite{GPL} calculate the pion electromagnetic form
factor at momentum transfer $q^{2} = -Q^{2}$ with a factorization
method written as
\begin{equation}
F_\pi(Q^2) = \int dx_1 dx_2 \phi(x_2,Q) H(x_1,x_2,Q) \phi(x_1,Q).
\end{equation}
Here $\phi(x,Q) $ are the distribution amplitudes, which can be
expressed in terms of the pion wave function $\psi(x,\vec k_T)$ as
\begin{equation}
 \phi(x,Q) = \int^Q d^2k_T\psi(x,\vec k_T) .
\end{equation}
We use $x$ for the longitudinal momentum fraction and $\vec k_T$ for
the transverse momentum carried by the quark.  The factorization is
justified provided the external photon momentum $Q^2$ is
{\it asymptotically large}.  Then the $k_T$ integrals decouple, and the
$k_T$ dependence of the hard scattering $H$ can be expanded in a power
series, retaining the trivial, constant term.  One directly obtains the
power-law
scaling of the quark-counting method, with logarithmic corrections.

Unfortunately, several authors \cite{Isg,Rad} have found that much of
the numerical weight of explicit calculations comes from the end point
regions.  The proposed decoupling of the transverse integrations is
not a numerically accurate approximation, making application of
the method suspect.  We reiterate that this legitimate source of doubt
has often been extended to the whole application of $pQCD$
\cite{Isg,Rad} to hard exclusive processes.  Since $pQCD$ and the
factorization scheme are separate concepts, it is unjustified to jump
to such a conclusion.

The Li-Sterman factorization \cite{LS,BS} retains coupling of the
$k_T$ dependence of the wave functions and the hard scattering.  In
some sense the concept is less ambitious theoretically, by including a
broader integration region than the zero-distance LePage-Brodsky
method. The calculation is simplified by dropping the weak
$k_T$ dependence of quark propagators in a hard scattering kernel $H$.
No loss of consistency occurs, because the rest of the $k_{T}$
dependence is sufficient to justify this step.  Working in
configuration space \cite{LS} the usual convolutions become a product:
\begin{equation}
F_\pi(Q^2) = \int dx_1 dx_2 {d^2\vec b\over (2\pi)^2} {\cal
P}(x_2,b,P_2,\mu) \tilde H(x_1,x_2,Q^2,\vec b,\mu) {\cal
P}(x_1,b,P_1,\mu),
\end{equation}
where ${\cal P}(x,b,P,\mu)$ and $\tilde H(x_1,x_2,Q^2,\vec b,\mu)$ are
the Fourier transforms of the wave function, including Sudakov
factors, and hard scattering respectively; $\vec b$ is conjugate to
$\vec k_{T1} - \vec k_{T2}$, $\mu$ is the renormalization scale and
$P_1$, $P_2$ are the initial and final momenta of the pion.

The leading-order Li-Sterman method is marginally consistent in
practice.  If the
dependence on a transverse separation cutoff \cite{LS} is studied at
$Q^{2}$ of a few $GeV^{2}$,
then nearly 50\% of the form factor comes from a region where
$\alpha_s/\pi < 0.7$.  This indicates that higher order contributions
in $\alpha_s$ may not be negligible, but this is a separate issue from
the factorization scheme.  Certainly the leading order predictions for
the normalization of the form factor cannot be regarded as accurate.
Next to leading order calculation \cite{passek} of the pion form
factor confirm this conclusion.  Numerically, the fact that results of
the calculations (described in detail elsewhere \cite{Jain}) lie
below the experimental data cannot be given great weight; in fact, the
agreement is actually quite acceptable.

\subsection{The Proton}
The proton Dirac form factor $F^p_1(Q^2)$\cite{L} is considerably more
complicated.  In contrast to the pion, there is no natural choice for the
infrared cutoff in the Sudakov exponent, due to the presence of three
quarks and resulting three distances.

Bolz et. al \cite{JKB} pointed out that the infra-red
cut-off $b_c$ used by Li \cite{L} does not suppress the soft
divergences as $b_c \rightarrow 1/\Lambda_{QCD}$. A modified choice
of the cutoffs was proposed by them \cite{JKB}.  Subsequently the
form factor was found to saturate as $b_c \rightarrow
1/\Lambda_{QCD}$.  The normalization of the resulting $Q^4F_1$ was
found to be less than half of that of the data for all the
distribution amplitudes explored \cite{JKB}.  Bolz et al \cite{JKB}
then concluded that $pQCD$ is unable to fit the experimental form
factor.

Kundu et al \cite{KLSJ} re-examined the situation.  Considerably more
complete calculations were performed\cite{KLSJ}, incorporating the
full two-loop correction to the Sudakov effects.  A physical choice of
the infra-red cutoff parameter was also incorporated.  This cut-off
prescription treats the proton as a quark-diquark
configuration at the extreme point of quark separation.

As a result, Kundu et al \cite{KLSJ} find that the
calculation is in good agreement with data using the King-Sachrajda
(KS) \cite{KS} distribution amplitude.  The fact that the
normalization of the proton form factor can be fit makes an important
conceptual point: the method in principle can explain the data, if
higher order corrections in $\alpha_{s}$ were under control.  Again
this is supported by examination of the contributing integration
regions, or $b_c$ dependence \cite{KLSJ}.  Saturation occurs at about
$b_c = 0.8/\Lambda_{QCD}$, so about 50\% of the calculation comes from
the soft or the large $b$ regions.  Scaling is postponed to beyond
$Q^2=10 GeV^2$, but is inevitable after that.

The pion and the proton form factor calculations reveal that
short-distance regions, required to be dominant in the basic
LePage-Brodsky factorization, do not dominate in practice.  Other
prescriptions (such as Li and Sterman) are capable of incorporating
long-distance regions.  The $Q^2$ scaling dependence of the proton
form factor above about $10
GeV^2$ appears to be quite robust. The calculations are sufficiently
independent of
the theoretical uncertainties such as distribution amplitude models,
the infra-red cut-off parameters, and higher-order corrections, to
indicate that current large $Q^2$ experimental scaling is truly
fundamental.

\section{Color Transparency and Nuclear Filtering}

Color transparency is a natural
prediction of $pQCD$. However, if the asymptotic limit is taken prematurely
(as
in LePage-Brodsky factorization) then all targets have perfect
transparency, and there is nothing left to calculate. Taking $Q^{2}$
indefinitely large (but fixed), one might think all targets
become transparent. But then taking $A \rightarrow \infty$ all
targets become opaque.  Thus there is a limit interchange problem in
the LePage-Brodsky factorization, because the limit of large $Q^{2}$
and large $A$ do not commute. The scheme is limited to asymptotic
$Q^{2}$, and fundamentally unable to describe the
phenomena at laboratory energies.

A correct description of the phenomenon follows from a
factorization scheme incorporating the transverse degrees of freedom
\cite{RP90}.  It is very useful that we do not have to rely on
extremely
large $Q^{2}$ to motivate $pQCD$, but instead large $A$ serves as an
infrared cutoff.  The ``filtering limit'' takes $A>>1$ with $Q^{2}$
fixed and large enough to motivate a $pQCD$ approach to attenuation:
this requires merely $Q^{2} >$ a few $GeV^{2}$.  On this basis it has
been predicted that perturbative QCD calculations are more reliable in
a nuclear target.

These concepts have experimental support.  Experimentally one
finds that the fixed-angle free space process $pp'\rightarrow p''p'''$
\cite{Car} shows significant oscillations at 90 degrees as a function
of energy.  The energy region of oscillations extends over the whole
range of high energy measurements that exist, from $s=6 GeV^{2}$ to
$s=40 GeV^{2}$.  The oscillations are large, making up roughly 50\% of
the $1/s^{10}$ behavior, and are interpreted as coming from
interference of long- and short-distance amplitudes.  The corresponding
process in a nuclear environment $pA\rightarrow p'p''(A-1)$ shows no
oscillations, and obeys the $pQCD$ scaling power law far better than the
free-space data\cite{JB,BT88,PBJ}.  The $A$ dependence, when analyzed
at fixed $Q^2$, shows statistically significant evidence of reduced
attenuation\cite{JainRalPRD}.

While the formalism and model calculations have existed for a while,
the calculations to verify it are quite complex.  Only with the
completion of the work by Li et. al \cite{LS} were all the pieces to make the
complete perturbative calculation laid out in ordered form.  The
calculations require Monte Carlo integrations of very high order (up
to 9 dimensions after taking into account all symmetries) which have
never before been attempted.  The results, however, are encouraging
and show that the nuclear interactions do substantially eliminate the
soft region \cite{KJ}.
\begin{figure} [t] \hbox{\hspace{6em}
\hbox{\psfig{figure=protonQ.ps,height=2in}}} \caption{The calculated
transparency ratio for the proton for different nuclei.  The experimental
points are taken from Ref. [29,30].
The solid curves are calculated with $k=5$ and the
dashed curves with $k=6$.} \label{fig1}
\end{figure}

\begin{figure} [t] \hbox{\hspace{6em}
\hbox{\psfig{figure=protonA.ps,height=2in}}} \caption{The calculated
transparency ratio for the proton as a function of $A$ for different $Q^2$. The
solid, dashed and dotted curves correspond to $Q^2=36,\ 16$ and 9 GeV$^2$
respectively. The value of the parameter $k=6$.} \label{fig2} \end{figure}

\begin{figure} [t] \hbox{\hspace{6em}
\hbox{\psfig{figure=protonbc.ps,height=2in}}} \caption{The transverse
separation cutoff $b_c$ dependence of the proton amplitude ratio.
Curves are drawn for $A=197$. The solid, short dashed and the dotted
curves are calculated for $Q^2=$ $6.8$, $16$ and $36$ GeV$^2$ respectively. The
long dashed curve corresponds to the free space calculation for $Q^2 = 16 $
GeV$^2$, which contains
substantially more long-distance contamination.} \label{fig3} \end{figure}


\begin{figure} [t] \hbox{\hspace{6em}
\hbox{\psfig{figure=atten.ps,height=2in}}}
\bigskip
\caption{
Extracted effective attenuation cross sections $\sigma_{eff} (Q^2)$ as a
function of $Q^2$ exhibit color transparency.  The calculations fit the
curvature of the $A$ dependence
using the same model of nuclear structure and correlations as
other calculations.  The decrease of $\sigma_{eff} (Q^2)$ with $Q^2$ is
sufficiently large that conventional nuclear physics might be ruled out
with sufficiently large $Q^2$ or sufficiently precise experimental data.
} \label{fig4} \end{figure}


\subsection{\it The Pion: Nuclear Medium Effects}

The nuclear medium modifies the quark wave function such that
\cite{RP90} \begin{eqnarray} {\cal P}_A(x,b,P,\mu) = f_A(b; B){\cal
P}(x,b,P,\mu), \end{eqnarray} where ${\cal P}_A$ is the wave function
inside the medium and $f_A$ is the nuclear filtering amplitude.  An
eikonal form \cite{GL,durand}
appropriate for $f_A$ is:

\begin{eqnarray} f_A(b; B) = exp(-\int_{z}^{\infty} dz' \sigma(b)
\rho(B, z')/2) .
\end{eqnarray} Here $\rho(B, z')$ is the nuclear number density
\cite{Vries} at
longitudinal distance $z$ and impact parameter $B$ relative to the nuclear
center.
We have used the fact that the imaginary part of the eikonal amplitude
for forward scattering is related to the total cross section,
explaining our use of the symbol $\sigma(b)/2$.  Finally, we must
include the probability to find a pion at position $B, z$ inside the
nucleus, which we take to be a constant times the probability to find
a nucleon.  Putting together the factors, the process of knocking out
a pion inside a nuclear target has an amplitude $M$ given by

\begin{eqnarray}
M &=& \int_{0}^{\infty} d^2 B \int_{-\infty}^{+\infty} dz \rho(B,z)
\times F_{\pi}(x_1,x_2,b,Q^2) \times f_A(b,B)
\end{eqnarray} The inelastic cross section $\sigma$ is known to scale like
$b^2$ in
QCD \cite{lonus,gunsop}.  We parametrize $\sigma(b)$ as $k b^2$ and adjust
the value of $k$ to
find a reasonable fit to the experimental data.

\subsection{\it The Proton: Nuclear Medium Effects}

For the proton the important transverse scale is the maximum of the
three quark separation distances, $b_{max} = max(b_1,b_2,b_3)$.
The calculation of the process in the nuclear target needs a 9
dimensional integration, which is performed by Monte Carlo.  The
effects of short-range correlations were included approximately by
replacing \cite{LM} \begin{eqnarray} \rho(z',b)\rightarrow
\rho(z',b)C(|z-z'|), \end{eqnarray} where $C(u)$ is a correlation
function estimated in \cite{MS} to be $C(u) = [g(u)]^{1/2}$ with
\begin{eqnarray} g(u) = \left[1-{h(u)^2\over 4}\right] [1+f(u)]^2
\end{eqnarray} where \begin{eqnarray} h(u) = 3{j_1(k_Fu)\over k_Fu}\ ,
\end{eqnarray} \begin{eqnarray} f(u) = -e^{-\alpha u^2}(1-\beta u^2)
\end{eqnarray} with $\alpha=1.1$, $\beta=0.68$ fm$^{-2}$ and the Fermi
momentum $k_F=1.36$ fm$^{-1}$.

\section {Results and Discussions}
Results for the $Q^{2}$ dependence of the proton transparency ratio are
given in Fig. \ref{fig1}
and \ref{fig2}. The parameter $k$ in the attenuation cross section
$\sigma=kb^2$
was chosen so as to provide a reasonable fit to the experimental data
\cite{Mak,Neill}.

The quark transverse separation cutoff  $b_c$ dependence of the amplitude
ratio is shown in Fig. \ref{fig3}.
It is clear from this figure that the
large distance contributions are significantly reduced in the nuclear
environment. We find that for a heavy nucleus at 36 GeV$^2$, 90\% of
the contribution comes from a region where $\alpha_s/\pi$ is less than 0.7.

We have also checked the dependence of our result on the infrared cutoff
parameter $c$ and the choice of the wave function.
We find that the results for transparency ratio change very little if we
use the CZ
wave
function instead of the KS.
This merits further study.
The result shows some dependence on the parameter $c$, but this dependence
is significantly reduced compared to the case of the free form factor 
\cite{KLSJ}.

Finally, following \cite{JainRalPRD}, we have extracted the effective
attenuation
cross section
$\sigma_{eff} (Q^2)$, which serve as a litmus test of whether ``color
transparency" has actually been achieved.
Our calculations of $\sigma_{eff} (Q^2)$
were done using the same model of correlations and nuclear density as the
rest of our calculations.  The results (Fig. \ref{fig4})
show a significant decrease of $\sigma_{eff} (Q^2)$ with increasing $Q^2$
to values well below the Glauber model attenuation cross section, which
indicates color transparency.

\section *{Acknowledgments}
PJ and BK thank the staff of ICTP, Trieste, for hospitality during a
visit where this paper was written. This work was supported by
BRNS grant No. DAE/PHY/96152,
the Crafoord Foundation, the Helge Ax:son Johnson Foundation, DOE Grant number
DE-FGO2-98ER41079,
the KU General Research Fund and NSF-K*STAR
Program under the Kansas Institute for Theoretical and Computational
Science.

\section *{References} \begin{thebibliography}{99}
\bibitem {GRF} S. J. Brodsky and G. R. Farrar, \Journal{\PRD}{11} 
{1309}{1975}.
\bibitem {GPL} S. J. Brodsky and G. P. Lepage, \Journal{\PRD}{24} 
{2848}{1981}.
\bibitem {CZ}  V. L. Chernyak and A. R. Zitnitsky, \Journal{\em Phys. Rep.}
{112}{173}
 {1984};
\Journal{\em Nucl. Phys.}{B246}{52}{1984}.
\bibitem {Isg} N. Isgur and C. Llewelyn-Smith,
\Journal{\PRL}{52}{1080}{1984}.
\bibitem {Rad} A. V. Radyushkin, \Journal{\em Acta Phys.
Polonica}{B15}{403}{1984}; A. P. Bakulev and A. V. Radyushkin, \Journal
{\PLB}{271}{223}{1991}.
\bibitem{LS} H-n. Li and G. Sterman, \Journal{\em Nucl. Phys.}{B381}
{129}{1992}.
\bibitem{L} H-n. Li, \Journal{\PRD}{48}{4243}{1993}.
\bibitem {brodMuell} S. J. Brodsky and A. H. Mueller, \Journal{\PLB}
{206}{685}{1988}.
\bibitem {JB} J. P. Ralston and B. Pire, \Journal{\PRL}{61}{1823}
{1988}.
\bibitem {RP90} J. P. Ralston and B. Pire, \Journal{\PRL}{65}
{2343}{1990}.
\bibitem {PBJ} P. Jain, B. Pire and J. P. Ralston, \Journal{\em Phys. Rep.}{271}
{67}{1996}.
\bibitem{BS} J. Botts and G. Sterman, \Journal{\em Nucl. Phys.}{B325}{62}{1989}.
\bibitem{Bebek} C. J. Bebek et al., \Journal{\PRD}{17}{1693}{1978}.
\bibitem{passek} B. Melic, B. Nizic, K. Passek, ,
.
\bibitem{JKB} J. Bolz, R. Jakob, P. Kroll, M. Bergmann, and N.G. Stefanis, \Journal
{\em Z.
Phys.}
{C 66}{267}{1995}.
\bibitem{KLSJ} B. Kundu, H. N. Li, J. Samuelsson and P. Jain,
\Journal{\em Eur. Phys. Jour.}{C8}{637}{1999}; .
\bibitem{KS} I.D. King and C.T. Sachrajda, \Journal{\em Nucl. Phys.}{B279}{785}
 {1987}.
\bibitem{Arnold} G. Arnold {\em et al.}, \Journal{\PRL}{57}{174}{1986}.
\bibitem {Car} A. S. Carroll et. al., \Journal{\PRL}{61}
{1698}
{1988}.
\bibitem {BT88} S. J. Brodsky and G. F. de Teramond, \Journal{\PRL}
{60}{1924}{1988}.
\bibitem {JainRalPRD} P. Jain and J. P. Ralston, \Journal{\PRD}
{48}{1104}{1993}.
\bibitem{KJ} B. Kundu, J. Samuelsson, P. Jain and J. P. Ralston,

\bibitem {GL} R.
J. Glauber, in: {\em Lectures in Theoretical Physics}, eds. W. E. Brittin 
and L. G.
Dunham (Interscience, New York, 1959).
\bibitem{durand} L. Durand and H. Pi, \Journal{\PRD}{40}{1436}{1989}.
\bibitem {lonus} F. E. Low, \Journal{\PRD}{12}{163}{1975}
; S. Nussinov, \Journal{\PRL}
{34}{1286}{1975}.
\bibitem {gunsop} J. F. Gunion and D. E. Soper, \Journal{\PRD}{15} 
{2617}{1977}.
\bibitem {Vries} H. De Vries, C. W. De
Jager and C. De Vries, \Journal{\em Atomic data and Nuclear Data Tables}{36}
{495}{1987}.
\bibitem {LM} T.-S. H. Lee and G. A. Miller, \Journal{\em Phy. Rev. C}{45}{1863}{1992}.
\bibitem
{MS} G. A. Miller and J. E. Spencer, \Journal{\em Ann. Phys.}{100}
{562}{1976}.
\bibitem {Mak} N. Makins et. al, \Journal{\PRD}{12}{163}{1994}.
\bibitem {Neill} T. G. O ' Neill et. al, \Journal{\PLB}{351}{87}
{1995}.
\bibitem{Jain} P. Jain, B. Kundu, H.-n. Li, J. P. Ralston and J. Samuelsson,
to appear in {\em Nucl. Phys. A}, {\em Proceedings of NUCLEON 99},
 Frascati, Italy, June 7th-10th, (1999);.
\end{thebibliography}
\end{document}
% Psfig/TeX 
\def\PsfigVersion{1.9}
% dvips version
%
% All psfig/tex software, documentation, and related files
% in this distribution of psfig/tex are 
% Copyright 1987, 1988, 1991 Trevor J. Darrell
%
% Permission is granted for use and non-profit distribution of psfig/tex 
% providing that this notice is clearly maintained. The right to
% distribute any portion of psfig/tex for profit or as part of any commercial
% product is specifically reserved for the author(s) of that portion.
%
% *** Feel free to make local modifications of psfig as you wish,
% *** but DO NOT post any changed or modified versions of ``psfig''
% *** directly to the net. Send them to me and I'll try to incorporate
% *** them into future versions. If you want to take the psfig code 
% *** and make a new program (subject to the copyright above), distribute it, 
% *** (and maintain it) that's fine, just don't call it psfig.
%
% Bugs and improvements to trevor@media.mit.edu.
%
% Thanks to Greg Hager (GDH) and Ned Batchelder for their contributions
% to the original version of this project.
%
% Modified by J. Daniel Smith on 9 October 1990 to accept the
% %%BoundingBox: comment with or without a space after the colon.  Stole
% file reading code from Tom Rokicki's EPSF.TEX file (see below).
%
% More modifications by J. Daniel Smith on 29 March 1991 to allow the
% the included PostScript figure to be rotated.  The amount of
% rotation is specified by the "angle=" parameter of the \psfig command.
%
% Modified by Robert Russell on June 25, 1991 to allow users to specify
% .ps filenames which don't yet exist, provided they explicitly provide
% boundingbox information via the \psfig command. Note: This will only work
% if the "file=" parameter follows all four "bb???=" parameters in the
% command. This is due to the order in which psfig interprets these params.
%
%  3 Jul 1991	JDS	check if file already read in once
%  4 Sep 1991	JDS	fixed incorrect computation of rotated
%			bounding box
% 25 Sep 1991	GVR	expanded synopsis of \psfig
% 14 Oct 1991	JDS	\fbox code from LaTeX so \psdraft works with TeX
%			changed \typeout to \ps@typeout
% 17 Oct 1991	JDS	added \psscalefirst and \psrotatefirst
%

% From: gvr@cs.brown.edu (George V. Reilly)
%
% \psdraft	draws an outline box, but doesn't include the figure
%		in the DVI file.  Useful for previewing.
%
% \psfull	includes the figure in the DVI file (default).
%
% \psscalefirst width= or height= specifies the size of the figure
% 		before rotation.
% \psrotatefirst (default) width= or height= specifies the size of the
% 		 figure after rotation.  Asymetric figures will
% 		 appear to shrink.
%
% \psfigurepath#1	sets the path to search for the figure
%
% \psfig
% usage: \psfig{file=, figure=, height=, width=,
%			bbllx=, bblly=, bburx=, bbury=,
%			rheight=, rwidth=, clip=, angle=, silent=}
%
%	"file" is the filename.  If no path name is specified and the
%		file is not found in the current directory,
%		it will be looked for in directory \psfigurepath.
%	"figure" is a synonym for "file".
%	By default, the width and height of the figure are taken from
%		the BoundingBox of the figure.
%	If "width" is specified, the figure is scaled so that it has
%		the specified width.  Its height changes proportionately.
%	If "height" is specified, the figure is scaled so that it has
%		the specified height.  Its width changes proportionately.
%	If both "width" and "height" are specified, the figure is scaled
%		anamorphically.
%	"bbllx", "bblly", "bburx", and "bbury" control the PostScript
%		BoundingBox.  If these four values are specified
%               *before* the "file" option, the PSFIG will not try to
%               open the PostScript file.
%	"rheight" and "rwidth" are the reserved height and width
%		of the figure, i.e., how big TeX actually thinks
%		the figure is.  They default to "width" and "height".
%	The "clip" option ensures that no portion of the figure will
%		appear outside its BoundingBox.  "clip=" is a switch and
%		takes no value, but the `=' must be present.
%	The "angle" option specifies the angle of rotation (degrees, ccw).
%	The "silent" option makes \psfig work silently.
%

% check to see if macros already loaded in (maybe some other file says
% "\input psfig") ...
\ifx\undefined\psfig\else\endinput\fi

%
% from a suggestion by eijkhout@csrd.uiuc.edu to allow
% loading as a style file. Changed to avoid problems
% with amstex per suggestion by jbence@math.ucla.edu

\let\LaTeXAtSign=\@
\let\@=\relax
\edef\psfigRestoreAt{\catcode`\@=\number\catcode`@\relax}
%\edef\psfigRestoreAt{\catcode`@=\number\catcode`@\relax}
\catcode`\@=11\relax
\newwrite\@unused
\def\ps@typeout#1{{\let\protect\string\immediate\write\@unused{#1}}}
\ps@typeout{psfig/tex \PsfigVersion}

%% Here's how you define your figure path.  Should be set up with null
%% default and a user useable definition.

\def\figurepath{./}
\def\psfigurepath#1{\edef\figurepath{#1}}

%
% @psdo control structure -- similar to Latex @for.
% I redefined these with different names so that psfig can
% be used with TeX as well as LaTeX, and so that it will not 
% be vunerable to future changes in LaTeX's internal
% control structure,
%
\def\@nnil{\@nil}
\def\@empty{}
\def\@psdonoop#1\@@#2#3{}
\def\@psdo#1:=#2\do#3{\edef\@psdotmp{#2}\ifx\@psdotmp\@empty \else
    \expandafter\@psdoloop#2,\@nil,\@nil\@@#1{#3}\fi}
\def\@psdoloop#1,#2,#3\@@#4#5{\def#4{#1}\ifx #4\@nnil \else
       #5\def#4{#2}\ifx #4\@nnil \else#5\@ipsdoloop #3\@@#4{#5}\fi\fi}
\def\@ipsdoloop#1,#2\@@#3#4{\def#3{#1}\ifx #3\@nnil 
       \let\@nextwhile=\@psdonoop \else
      #4\relax\let\@nextwhile=\@ipsdoloop\fi\@nextwhile#2\@@#3{#4}}
\def\@tpsdo#1:=#2\do#3{\xdef\@psdotmp{#2}\ifx\@psdotmp\@empty \else
    \@tpsdoloop#2\@nil\@nil\@@#1{#3}\fi}
\def\@tpsdoloop#1#2\@@#3#4{\def#3{#1}\ifx #3\@nnil 
       \let\@nextwhile=\@psdonoop \else
      #4\relax\let\@nextwhile=\@tpsdoloop\fi\@nextwhile#2\@@#3{#4}}
% 
% \fbox is defined in latex.tex; so if \fbox is undefined, assume that
% we are not in LaTeX.
% Perhaps this could be done better???
\ifx\undefined\fbox
% \fbox code from modified slightly from LaTeX
\newdimen\fboxrule
\newdimen\fboxsep
\newdimen\ps@tempdima
\newbox\ps@tempboxa
\fboxsep = 3pt
\fboxrule = .4pt
\long\def\fbox#1{\leavevmode\setbox\ps@tempboxa\hbox{#1}\ps@tempdima\fboxrule
    \advance\ps@tempdima \fboxsep \advance\ps@tempdima \dp\ps@tempboxa
   \hbox{\lower \ps@tempdima\hbox
  {\vbox{\hrule height \fboxrule
          \hbox{\vrule width \fboxrule \hskip\fboxsep
          \vbox{\vskip\fboxsep \box\ps@tempboxa\vskip\fboxsep}\hskip 
                 \fboxsep\vrule width \fboxrule}
                 \hrule height \fboxrule}}}}
\fi
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% file reading stuff from epsf.tex
%   EPSF.TEX macro file:
%   Written by Tomas Rokicki of Radical Eye Software, 29 Mar 1989.
%   Revised by Don Knuth, 3 Jan 1990.
%   Revised by Tomas Rokicki to accept bounding boxes with no
%      space after the colon, 18 Jul 1990.
%   Portions modified/removed for use in PSFIG package by
%      J. Daniel Smith, 9 October 1990.
%
\newread\ps@stream
\newif\ifnot@eof       % continue looking for the bounding box?
\newif\if@noisy        % report what you're making?
\newif\if@atend        % %%BoundingBox: has (at end) specification
\newif\if@psfile       % does this look like a PostScript file?
%
% PostScript files should start with `%!'
%
{\catcode`\%=12\global\gdef\epsf@start{%!}}
\def\epsf@PS{PS}
%
\def\epsf@getbb#1{%
%
%   The first thing we need to do is to open the
%   PostScript file, if possible.
%
\openin\ps@stream=#1
\ifeof\ps@stream\ps@typeout{Error, File #1 not found}\else
%
%   Okay, we got it. Now we'll scan lines until we find one that doesn't
%   start with %. We're looking for the bounding box comment.
%
   {\not@eoftrue \chardef\other=12
    \def\do##1{\catcode`##1=\other}\dospecials \catcode`\ =10
    \loop
       \if@psfile
	  \read\ps@stream to \epsf@fileline
       \else{
	  \obeyspaces
          \read\ps@stream to \epsf@tmp\global\let\epsf@fileline\epsf@tmp}
       \fi
       \ifeof\ps@stream\not@eoffalse\else
%
%   Check the first line for `%!'.  Issue a warning message if its not
%   there, since the file might not be a PostScript file.
%
       \if@psfile\else
       \expandafter\epsf@test\epsf@fileline:. \\%
       \fi
%
%   We check to see if the first character is a % sign;
%   if so, we look further and stop only if the line begins with
%   `%%BoundingBox:' and the `(atend)' specification was not found.
%   That is, the only way to stop is when the end of file is reached,
%   or a `%%BoundingBox: llx lly urx ury' line is found.
%
          \expandafter\epsf@aux\epsf@fileline:. \\%
       \fi
   \ifnot@eof\repeat
   }\closein\ps@stream\fi}%
%
% This tests if the file we are reading looks like a PostScript file.
%
\long\def\epsf@test#1#2#3:#4\\{\def\epsf@testit{#1#2}
			\ifx\epsf@testit\epsf@start\else
\ps@typeout{Warning! File does not start with `\epsf@start'.  It may not be a PostScript file.}
			\fi
			\@psfiletrue} % don't test after 1st line
%
%   We still need to define the tricky \epsf@aux macro. This requires
%   a couple of magic constants for comparison purposes.
%
{\catcode`\%=12\global\let\epsf@percent=%\global\def\epsf@bblit{%BoundingBox}}
%
%
%   So we're ready to check for `%BoundingBox:' and to grab the
%   values if they are found.  We continue searching if `(at end)'
%   was found after the `%BoundingBox:'.
%
\long\def\epsf@aux#1#2:#3\\{\ifx#1\epsf@percent
   \def\epsf@testit{#2}\ifx\epsf@testit\epsf@bblit
	\@atendfalse
        \epsf@atend #3 . \\%
	\if@atend	
	   \if@verbose{
		\ps@typeout{psfig: found `(atend)'; continuing search}
	   }\fi
        \else
        \epsf@grab #3 . . . \\%
        \not@eoffalse
        \global\no@bbfalse
        \fi
   \fi\fi}%
%
%   Here we grab the values and stuff them in the appropriate definitions.
%
\def\epsf@grab #1 #2 #3 #4 #5\\{%
   \global\def\epsf@llx{#1}\ifx\epsf@llx\empty
      \epsf@grab #2 #3 #4 #5 .\\\else
   \global\def\epsf@lly{#2}%
   \global\def\epsf@urx{#3}\global\def\epsf@ury{#4}\fi}%
%
% Determine if the stuff following the %%BoundingBox is `(atend)'
% J. Daniel Smith.  Copied from \epsf@grab above.
%
\def\epsf@atendlit{(atend)} 
\def\epsf@atend #1 #2 #3\\{%
   \def\epsf@tmp{#1}\ifx\epsf@tmp\empty
      \epsf@atend #2 #3 .\\\else
   \ifx\epsf@tmp\epsf@atendlit\@atendtrue\fi\fi}


% End of file reading stuff from epsf.tex
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% trigonometry stuff from "trig.tex"
\chardef\psletter = 11 % won't conflict with \begin{letter} now...
\chardef\other = 12

\newif \ifdebug %%% turn me on to see TeX hard at work ...
\newif\ifc@mpute %%% don't need to compute some values
\c@mputetrue % but assume that we do

\let\then = \relax
\def\r@dian{pt }
\let\r@dians = \r@dian
\let\dimensionless@nit = \r@dian
\let\dimensionless@nits = \dimensionless@nit
\def\internal@nit{sp }
\let\internal@nits = \internal@nit
\newif\ifstillc@nverging
\def \Mess@ge #1{\ifdebug \then \message {#1} \fi}

{ %%% Things that need abnormal catcodes %%%
	\catcode `\@ = \psletter
	\gdef \nodimen {\expandafter \n@dimen \the \dimen}
	\gdef \term #1 #2 #3%
	       {\edef \t@ {\the #1}%%% freeze parameter 1 (count, by value)
		\edef \t@@ {\expandafter \n@dimen \the #2\r@dian}%
				   %%% freeze parameter 2 (dimen, by value)
		\t@rm {\t@} {\t@@} {#3}%
	       }
	\gdef \t@rm #1 #2 #3%
	       {{%
		\count 0 = 0
		\dimen 0 = 1 \dimensionless@nit
		\dimen 2 = #2\relax
		\Mess@ge {Calculating term #1 of \nodimen 2}%
		\loop
		\ifnum	\count 0 < #1
		\then	\advance \count 0 by 1
			\Mess@ge {Iteration \the \count 0 \space}%
			\Multiply \dimen 0 by {\dimen 2}%
			\Mess@ge {After multiplication, term = \nodimen 0}%
			\Divide \dimen 0 by {\count 0}%
			\Mess@ge {After division, term = \nodimen 0}%
		\repeat
		\Mess@ge {Final value for term #1 of 
				\nodimen 2 \space is \nodimen 0}%
		\xdef \Term {#3 = \nodimen 0 \r@dians}%
		\aftergroup \Term
	       }}
	\catcode `\p = \other
	\catcode `\t = \other
	\gdef \n@dimen #1pt{#1} %%% throw away the ``pt''
}

\def \Divide #1by #2{\divide #1 by #2} %%% just a synonym

\def \Multiply #1by #2%%% allows division of a dimen by a dimen
       {{%%% should really freeze parameter 2 (dimen, passed by value)
	\count 0 = #1\relax
	\count 2 = #2\relax
	\count 4 = 65536
	\Mess@ge {Before scaling, count 0 = \the \count 0 \space and
			count 2 = \the \count 2}%
	\ifnum	\count 0 > 32767 %%% do our best to avoid overflow
	\then	\divide \count 0 by 4
		\divide \count 4 by 4
	\else	\ifnum	\count 0 < -32767
		\then	\divide \count 0 by 4
			\divide \count 4 by 4
		\else
		\fi
	\fi
	\ifnum	\count 2 > 32767 %%% while retaining reasonable accuracy
	\then	\divide \count 2 by 4
		\divide \count 4 by 4
	\else	\ifnum	\count 2 < -32767
		\then	\divide \count 2 by 4
			\divide \count 4 by 4
		\else
		\fi
	\fi
	\multiply \count 0 by \count 2
	\divide \count 0 by \count 4
	\xdef \product {#1 = \the \count 0 \internal@nits}%
	\aftergroup \product
       }}

\def\r@duce{\ifdim\dimen0 > 90\r@dian \then   % sin(x+90) = sin(180-x)
		\multiply\dimen0 by -1
		\advance\dimen0 by 180\r@dian
		\r@duce
	    \else \ifdim\dimen0 < -90\r@dian \then  % sin(-x) = sin(360+x)
		\advance\dimen0 by 360\r@dian
		\r@duce
		\fi
	    \fi}

\def\Sine#1%
       {{%
	\dimen 0 = #1 \r@dian
	\r@duce
	\ifdim\dimen0 = -90\r@dian \then
	   \dimen4 = -1\r@dian
	   \c@mputefalse
	\fi
	\ifdim\dimen0 = 90\r@dian \then
	   \dimen4 = 1\r@dian
	   \c@mputefalse
	\fi
	\ifdim\dimen0 = 0\r@dian \then
	   \dimen4 = 0\r@dian
	   \c@mputefalse
	\fi
%
	\ifc@mpute \then
        	% convert degrees to radians
		\divide\dimen0 by 180
		\dimen0=3.141592654\dimen0
%
		\dimen 2 = 3.1415926535897963\r@dian %%% a well-known constant
		\divide\dimen 2 by 2 %%% we only deal with -pi/2 : pi/2
		\Mess@ge {Sin: calculating Sin of \nodimen 0}%
		\count 0 = 1 %%% see power-series expansion for sine
		\dimen 2 = 1 \r@dian %%% ditto
		\dimen 4 = 0 \r@dian %%% ditto
		\loop
			\ifnum	\dimen 2 = 0 %%% then we've done
			\then	\stillc@nvergingfalse 
			\else	\stillc@nvergingtrue
			\fi
			\ifstillc@nverging %%% then calculate next term
			\then	\term {\count 0} {\dimen 0} {\dimen 2}%
				\advance \count 0 by 2
				\count 2 = \count 0
				\divide \count 2 by 2
				\ifodd	\count 2 %%% signs alternate
				\then	\advance \dimen 4 by \dimen 2
				\else	\advance \dimen 4 by -\dimen 2
				\fi
		\repeat
	\fi		
			\xdef \sine {\nodimen 4}%
       }}

% Now the Cosine can be calculated easily by calling \Sine
\def\Cosine#1{\ifx\sine\UnDefined\edef\Savesine{\relax}\else
		             \edef\Savesine{\sine}\fi
	{\dimen0=#1\r@dian\advance\dimen0 by 90\r@dian
	 \Sine{\nodimen 0}
	 \xdef\cosine{\sine}
	 \xdef\sine{\Savesine}}}	      
% end of trig stuff
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\def\psdraft{
	\def\@psdraft{0}
	%\ps@typeout{draft level now is \@psdraft \space . }
}
\def\psfull{
	\def\@psdraft{100}
	%\ps@typeout{draft level now is \@psdraft \space . }
}

\psfull

\newif\if@scalefirst
\def\psscalefirst{\@scalefirsttrue}
\def\psrotatefirst{\@scalefirstfalse}
\psrotatefirst

\newif\if@draftbox
\def\psnodraftbox{
	\@draftboxfalse
}
\def\psdraftbox{
	\@draftboxtrue
}
\@draftboxtrue

\newif\if@prologfile
\newif\if@postlogfile
\def\pssilent{
	\@noisyfalse
}
\def\psnoisy{
	\@noisytrue
}
\psnoisy
%%% These are for the option list.
%%% A specification of the form a = b maps to calling \@p@@sa{b}
\newif\if@bbllx
\newif\if@bblly
\newif\if@bburx
\newif\if@bbury
\newif\if@height
\newif\if@width
\newif\if@rheight
\newif\if@rwidth
\newif\if@angle
\newif\if@clip
\newif\if@verbose
\def\@p@@sclip#1{\@cliptrue}


\newif\if@decmpr

%%% GDH 7/26/87 -- changed so that it first looks in the local directory,
%%% then in a specified global directory for the ps file.
%%% RPR 6/25/91 -- changed so that it defaults to user-supplied name if
%%% boundingbox info is specified, assuming graphic will be created by
%%% print time.
%%% TJD 10/19/91 -- added bbfile vs. file distinction, and @decmpr flag

\def\@p@@sfigure#1{\def\@p@sfile{null}\def\@p@sbbfile{null}
	        \openin1=#1.bb
		\ifeof1\closein1
	        	\openin1=\figurepath#1.bb
			\ifeof1\closein1
			        \openin1=#1
				\ifeof1\closein1%
				       \openin1=\figurepath#1
					\ifeof1
					   \ps@typeout{Error, File #1 not found}
						\if@bbllx\if@bblly
				   		\if@bburx\if@bbury
			      				\def\@p@sfile{#1}%
			      				\def\@p@sbbfile{#1}%
							\@decmprfalse
				  	   	\fi\fi\fi\fi
					\else\closein1
				    		\def\@p@sfile{\figurepath#1}%
				    		\def\@p@sbbfile{\figurepath#1}%
						\@decmprfalse
	                       		\fi%
			 	\else\closein1%
					\def\@p@sfile{#1}
					\def\@p@sbbfile{#1}
					\@decmprfalse
			 	\fi
			\else
				\def\@p@sfile{\figurepath#1}
				\def\@p@sbbfile{\figurepath#1.bb}
				\@decmprtrue
			\fi
		\else
			\def\@p@sfile{#1}
			\def\@p@sbbfile{#1.bb}
			\@decmprtrue
		\fi}

\def\@p@@sfile#1{\@p@@sfigure{#1}}

\def\@p@@sbbllx#1{
		%\ps@typeout{bbllx is #1}
		\@bbllxtrue
		\dimen100=#1
		\edef\@p@sbbllx{\number\dimen100}
}
\def\@p@@sbblly#1{
		%\ps@typeout{bblly is #1}
		\@bbllytrue
		\dimen100=#1
		\edef\@p@sbblly{\number\dimen100}
}
\def\@p@@sbburx#1{
		%\ps@typeout{bburx is #1}
		\@bburxtrue
		\dimen100=#1
		\edef\@p@sbburx{\number\dimen100}
}
\def\@p@@sbbury#1{
		%\ps@typeout{bbury is #1}
		\@bburytrue
		\dimen100=#1
		\edef\@p@sbbury{\number\dimen100}
}
\def\@p@@sheight#1{
		\@heighttrue
		\dimen100=#1
   		\edef\@p@sheight{\number\dimen100}
		%\ps@typeout{Height is \@p@sheight}
}
\def\@p@@swidth#1{
		%\ps@typeout{Width is #1}
		\@widthtrue
		\dimen100=#1
		\edef\@p@swidth{\number\dimen100}
}
\def\@p@@srheight#1{
		%\ps@typeout{Reserved height is #1}
		\@rheighttrue
		\dimen100=#1
		\edef\@p@srheight{\number\dimen100}
}
\def\@p@@srwidth#1{
		%\ps@typeout{Reserved width is #1}
		\@rwidthtrue
		\dimen100=#1
		\edef\@p@srwidth{\number\dimen100}
}
\def\@p@@sangle#1{
		%\ps@typeout{Rotation is #1}
		\@angletrue
%		\dimen100=#1
		\edef\@p@sangle{#1} %\number\dimen100}
}
\def\@p@@ssilent#1{ 
		\@verbosefalse
}
\def\@p@@sprolog#1{\@prologfiletrue\def\@prologfileval{#1}}
\def\@p@@spostlog#1{\@postlogfiletrue\def\@postlogfileval{#1}}
\def\@cs@name#1{\csname #1\endcsname}
\def\@setparms#1=#2,{\@cs@name{@p@@s#1}{#2}}
%
% initialize the defaults (size the size of the figure)
%
\def\ps@init@parms{
		\@bbllxfalse \@bbllyfalse
		\@bburxfalse \@bburyfalse
		\@heightfalse \@widthfalse
		\@rheightfalse \@rwidthfalse
		\def\@p@sbbllx{}\def\@p@sbblly{}
		\def\@p@sbburx{}\def\@p@sbbury{}
		\def\@p@sheight{}\def\@p@swidth{}
		\def\@p@srheight{}\def\@p@srwidth{}
		\def\@p@sangle{0}
		\def\@p@sfile{} \def\@p@sbbfile{}
		\def\@p@scost{10}
		\def\@sc{}
		\@prologfilefalse
		\@postlogfilefalse
		\@clipfalse
		\if@noisy
			\@verbosetrue
		\else
			\@verbosefalse
		\fi
}
%
% Go through the options setting things up.
%
\def\parse@ps@parms#1{
	 	\@psdo\@psfiga:=#1\do
		   {\expandafter\@setparms\@psfiga,}}
%
% Compute bb height and width
%
\newif\ifno@bb
\def\bb@missing{
	\if@verbose{
		\ps@typeout{psfig: searching \@p@sbbfile \space  for bounding box}
	}\fi
	\no@bbtrue
	\epsf@getbb{\@p@sbbfile}
        \ifno@bb \else \bb@cull\epsf@llx\epsf@lly\epsf@urx\epsf@ury\fi
}	
\def\bb@cull#1#2#3#4{
	\dimen100=#1 bp\edef\@p@sbbllx{\number\dimen100}
	\dimen100=#2 bp\edef\@p@sbblly{\number\dimen100}
	\dimen100=#3 bp\edef\@p@sbburx{\number\dimen100}
	\dimen100=#4 bp\edef\@p@sbbury{\number\dimen100}
	\no@bbfalse
}
% rotate point (#1,#2) about (0,0).
% The sine and cosine of the angle are already stored in \sine and
% \cosine.  The result is placed in (\p@intvaluex, \p@intvaluey).
\newdimen\p@intvaluex
\newdimen\p@intvaluey
\def\rotate@#1#2{{\dimen0=#1 sp\dimen1=#2 sp
%            	calculate x' = x \cos\theta - y \sin\theta
		  \global\p@intvaluex=\cosine\dimen0
		  \dimen3=\sine\dimen1
		  \global\advance\p@intvaluex by -\dimen3
% 		calculate y' = x \sin\theta + y \cos\theta
		  \global\p@intvaluey=\sine\dimen0
		  \dimen3=\cosine\dimen1
		  \global\advance\p@intvaluey by \dimen3
		  }}
\def\compute@bb{
		\no@bbfalse
		\if@bbllx \else \no@bbtrue \fi
		\if@bblly \else \no@bbtrue \fi
		\if@bburx \else \no@bbtrue \fi
		\if@bbury \else \no@bbtrue \fi
		\ifno@bb \bb@missing \fi
		\ifno@bb \ps@typeout{FATAL ERROR: no bb supplied or found}
			\no-bb-error
		\fi
		%
%\ps@typeout{BB: \@p@sbbllx, \@p@sbblly, \@p@sbburx, \@p@sbbury} 
%
% store height/width of original (unrotated) bounding box
		\count203=\@p@sbburx
		\count204=\@p@sbbury
		\advance\count203 by -\@p@sbbllx
		\advance\count204 by -\@p@sbblly
		\edef\ps@bbw{\number\count203}
		\edef\ps@bbh{\number\count204}
		%\ps@typeout{ psbbh = \ps@bbh, psbbw = \ps@bbw }
		\if@angle 
			\Sine{\@p@sangle}\Cosine{\@p@sangle}
	        	{\dimen100=\maxdimen\xdef\r@p@sbbllx{\number\dimen100}
					    \xdef\r@p@sbblly{\number\dimen100}
			                    \xdef\r@p@sbburx{-\number\dimen100}
					    \xdef\r@p@sbbury{-\number\dimen100}}
%
% Need to rotate all four points and take the X-Y extremes of the new
% points as the new bounding box.
                        \def\minmaxtest{
			   \ifnum\number\p@intvaluex<\r@p@sbbllx
			      \xdef\r@p@sbbllx{\number\p@intvaluex}\fi
			   \ifnum\number\p@intvaluex>\r@p@sbburx
			      \xdef\r@p@sbburx{\number\p@intvaluex}\fi
			   \ifnum\number\p@intvaluey<\r@p@sbblly
			      \xdef\r@p@sbblly{\number\p@intvaluey}\fi
			   \ifnum\number\p@intvaluey>\r@p@sbbury
			      \xdef\r@p@sbbury{\number\p@intvaluey}\fi
			   }
%			lower left
			\rotate@{\@p@sbbllx}{\@p@sbblly}
			\minmaxtest
%			upper left
			\rotate@{\@p@sbbllx}{\@p@sbbury}
			\minmaxtest
%			lower right
			\rotate@{\@p@sbburx}{\@p@sbblly}
			\minmaxtest
%			upper right
			\rotate@{\@p@sbburx}{\@p@sbbury}
			\minmaxtest
			\edef\@p@sbbllx{\r@p@sbbllx}\edef\@p@sbblly{\r@p@sbblly}
			\edef\@p@sbburx{\r@p@sbburx}\edef\@p@sbbury{\r@p@sbbury}
%\ps@typeout{rotated BB: \r@p@sbbllx, \r@p@sbblly, \r@p@sbburx, \r@p@sbbury}
		\fi
		\count203=\@p@sbburx
		\count204=\@p@sbbury
		\advance\count203 by -\@p@sbbllx
		\advance\count204 by -\@p@sbblly
		\edef\@bbw{\number\count203}
		\edef\@bbh{\number\count204}
		%\ps@typeout{ bbh = \@bbh, bbw = \@bbw }
}
%
% \in@hundreds performs #1 * (#2 / #3) correct to the hundreds,
%	then leaves the result in @result
%
\def\in@hundreds#1#2#3{\count240=#2 \count241=#3
		     \count100=\count240	% 100 is first digit #2/#3
		     \divide\count100 by \count241
		     \count101=\count100
		     \multiply\count101 by \count241
		     \advance\count240 by -\count101
		     \multiply\count240 by 10
		     \count101=\count240	%101 is second digit of #2/#3
		     \divide\count101 by \count241
		     \count102=\count101
		     \multiply\count102 by \count241
		     \advance\count240 by -\count102
		     \multiply\count240 by 10
		     \count102=\count240	% 102 is the third digit
		     \divide\count102 by \count241
		     \count200=#1\count205=0
		     \count201=\count200
			\multiply\count201 by \count100
		 	\advance\count205 by \count201
		     \count201=\count200
			\divide\count201 by 10
			\multiply\count201 by \count101
			\advance\count205 by \count201
			%
		     \count201=\count200
			\divide\count201 by 100
			\multiply\count201 by \count102
			\advance\count205 by \count201
			%
		     \edef\@result{\number\count205}
}
\def\compute@wfromh{
		% computing : width = height * (bbw / bbh)
		\in@hundreds{\@p@sheight}{\@bbw}{\@bbh}
		%\ps@typeout{ \@p@sheight * \@bbw / \@bbh, = \@result }
		\edef\@p@swidth{\@result}
		%\ps@typeout{w from h: width is \@p@swidth}
}
\def\compute@hfromw{
		% computing : height = width * (bbh / bbw)
	        \in@hundreds{\@p@swidth}{\@bbh}{\@bbw}
		%\ps@typeout{ \@p@swidth * \@bbh / \@bbw = \@result }
		\edef\@p@sheight{\@result}
		%\ps@typeout{h from w : height is \@p@sheight}
}
\def\compute@handw{
		\if@height 
			\if@width
			\else
				\compute@wfromh
			\fi
		\else 
			\if@width
				\compute@hfromw
			\else
				\edef\@p@sheight{\@bbh}
				\edef\@p@swidth{\@bbw}
			\fi
		\fi
}
\def\compute@resv{
		\if@rheight \else \edef\@p@srheight{\@p@sheight} \fi
		\if@rwidth \else \edef\@p@srwidth{\@p@swidth} \fi
		%\ps@typeout{rheight = \@p@srheight, rwidth = \@p@srwidth}
}
%		
% Compute any missing values
\def\compute@sizes{
	\compute@bb
	\if@scalefirst\if@angle
% at this point the bounding box has been adjsuted correctly for
% rotation.  PSFIG does all of its scaling using \@bbh and \@bbw.  If
% a width= or height= was specified along with \psscalefirst, then the
% width=/height= value needs to be adjusted to match the new (rotated)
% bounding box size (specifed in \@bbw and \@bbh).
%    \ps@bbw       width=
%    -------  =  ---------- 
%    \@bbw       new width=
% so `new width=' = (width= * \@bbw) / \ps@bbw; where \ps@bbw is the
% width of the original (unrotated) bounding box.
	\if@width
	   \in@hundreds{\@p@swidth}{\@bbw}{\ps@bbw}
	   \edef\@p@swidth{\@result}
	\fi
	\if@height
	   \in@hundreds{\@p@sheight}{\@bbh}{\ps@bbh}
	   \edef\@p@sheight{\@result}
	\fi
	\fi\fi
	\compute@handw
	\compute@resv}

%
% \psfig
% usage : \psfig{file=, height=, width=, bbllx=, bblly=, bburx=, bbury=,
%			rheight=, rwidth=, clip=}
%
% "clip=" is a switch and takes no value, but the `=' must be present.
\def\psfig#1{\vbox {
	% do a zero width hard space so that a single
	% \psfig in a centering enviornment will behave nicely
	%{\setbox0=\hbox{\ }\ \hskip-\wd0}
	%
	\ps@init@parms
	\parse@ps@parms{#1}
	\compute@sizes
	%
	\ifnum\@p@scost<\@psdraft{
		%
		\special{ps::[begin] 	\@p@swidth \space \@p@sheight \space
				\@p@sbbllx \space \@p@sbblly \space
				\@p@sbburx \space \@p@sbbury \space
				startTexFig \space }
		\if@angle
			\special {ps:: \@p@sangle \space rotate \space} 
		\fi
		\if@clip{
			\if@verbose{
				\ps@typeout{(clip)}
			}\fi
			\special{ps:: doclip \space }
		}\fi
		\if@prologfile
		    \special{ps: plotfile \@prologfileval \space } \fi
		\if@decmpr{
			\if@verbose{
				\ps@typeout{psfig: including \@p@sfile.Z \space }
			}\fi
			\special{ps: plotfile "`zcat \@p@sfile.Z" \space }
		}\else{
			\if@verbose{
				\ps@typeout{psfig: including \@p@sfile \space }
			}\fi
			\special{ps: plotfile \@p@sfile \space }
		}\fi
		\if@postlogfile
		    \special{ps: plotfile \@postlogfileval \space } \fi
		\special{ps::[end] endTexFig \space }
		% Create the vbox to reserve the space for the figure.
		\vbox to \@p@srheight sp{
		% 1/92 TJD Changed from "true sp" to "sp" for magnification.
			\hbox to \@p@srwidth sp{
				\hss
			}
		\vss
		}
	}\else{
		% draft figure, just reserve the space and print the
		% path name.
		\if@draftbox{		
			% Verbose draft: print file name in box
			\hbox{\frame{\vbox to \@p@srheight sp{
			\vss
			\hbox to \@p@srwidth sp{ \hss \@p@sfile \hss }
			\vss
			}}}
		}\else{
			% Non-verbose draft
			\vbox to \@p@srheight sp{
			\vss
			\hbox to \@p@srwidth sp{\hss}
			\vss
			}
		}\fi	



	}\fi
}}
\psfigRestoreAt
\let\@=\LaTeXAtSign

