% This was epac96.cls, then epac98.cls, then JAC99.cls
%%
%%      MODIFIED BY J. POOLE FOR EPAC'98
%%      MODIFIED BY L. PIVETTA FOR ICALEPCS'99
%%
% This is the official style file of the
% 7th International conference on accelerator
% and large experimental physics control systems.
%
% Usage is:
%               \documentclass{ICALEPCS}
%
% Information for authors is provided in separate files -
% l2ea4.tex and l2eus.tex (for A4 and US Letter size papers resp.)
% - which can be used as a models for papers to be submitted.
% See also the WWW pages http://www.elettra.trieste.it/ICALEPCS99
%
% Modified 24/10/95 - moved Michel Goossens dense list code after
%                     the LoadClass
% Modified 18/04/96 - typeout text about graphics package added
%
% Modified 27/11/97 - New version for EPAC98 - different margins
%
% Modified 21/05/99 - set \textfraction 0.1
%                     set \floatpagefraction 0.8
%                     Make for joint accelerator conferences JAC99
%
% Modified 17/06/99 - Adapted for ICALEPCS99. Added 1cm of vspace
%                     between title and the body
%
\def\fileversion{1.0}
\def\filedate{1999/06/17}
\def\docdate {1999/06/17}

\newlength{\dsep}
\newlength{\dwid}
\newlength{\dht}
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{ICALEPCS}[\filedate\space Version \fileversion]
\DeclareOption{acus}
   {\setlength{\dwid}{6mm}%
    \setlength{\dht}{-18mm}
    \setlength{\paperheight}{11in}
    \setlength{\paperwidth}{8.5in}
    \typeout{Setup for US LETTER PAPER}}
\DeclareOption{aca4}
   {\setlength{\dwid}{0mm}%
    \setlength{\dht}{0mm}}
\DeclareOption{boxit}
%%
%%  This option draws a box on the output text with the correct margins
%%
   {\special{!userdict begin /bop-hook{
         gsave
         newpath
         58 55 moveto
         58 737 lineto
         539 737 lineto
         539 55 lineto
         closepath
         stroke
         grestore
         }def end}}
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}}

\ExecuteOptions{aca4}
\ProcessOptions

\LoadClass[10pt]{article}
\RequirePackage{times}

\typeout{------------------------------------------------------------------------}
\typeout{LaTeX2e Class file for ICALEPCS'99 Conference publication}
\typeout{Use the boxit option to draw a box on page showing the correct margins}
\typeout{Itemize, Enumerate and Description environments are compact versions}
\typeout{------------------------------------------------------------------------}
\typeout{ }

%
% DIMENSION OF TEXT:

\setlength{\textheight}{241mm}
\setlength{\textwidth}{170mm}
\setlength{\topmargin}{23mm}
\addtolength{\topmargin}{\dht}
\setlength{\oddsidemargin}{20mm}
\setlength{\evensidemargin}{20mm}
\setlength{\columnsep}{5mm}


\hoffset -25.4mm
\voffset -25.4mm

\columnseprule 0pt      %    Width of rule between columns.

% Use Michel Goossens' dense lists
% Prevent infinite loops

\let\Otemize =\itemize
\let\Onumerate =\enumerate
\let\Oescription =\description
% Zero the vertical spacing parameters
\def\Nospacing{\itemsep=0pt\topsep=0pt\partopsep=0pt\parskip=0pt\parsep=0pt}
% Redefine the environments in terms of the original values
\newenvironment{Itemize}{\Otemize\Nospacing}{\endlist}
\newenvironment{Enumerate}{\Onumerate\Nospacing}{\endlist}
\newenvironment{Description}{\Oescription\Nospacing}{\endlist}

\renewcommand{\topfraction}{.995}
\renewcommand{\bottomfraction}{.995}
\renewcommand{\textfraction}{0.01}
\renewcommand{\textfraction}{0.1}
\renewcommand{\floatpagefraction}{0.8}

\def\@oddhead{}\def\@evenhead{}
\def\@oddfoot{}
\def\@evenfoot{\@oddfoot}

%-----------------------------------------------------------------------
% We acknowledge the borrowing of the clever part of
% Steven Gildea's definition of \section
% from geophysi.sty.
%
% \section is tricky because we want to both support \section* and have
% the section title uppercased.

\def\section{\secdef\@sectionb\@sections}
\def\@sectionb[#1]#2{\@sections{#2}}
\def\@sections#1{\@startsection {section}{1}{\z@}
                {-2.8ex plus -0.8ex minus  -.1ex}{1.5ex plus .2ex}
                {\large\bf\centering}{\uppercase{#1}}}
% Should there be any problem with this, we can revert to the following
% but then the onus is on the user to type the argument of \section in
% uppercase in the input file.
%
%\def\section{\@startsection {section}{1}{\z@}{-2.8ex plus -0.8ex minus
%    -.1ex}{1.5ex plus .2ex}{\large\bf\centering}}

\def\subsection{\@startsection{subsection}{2}{\z@}{-2.6ex plus -.8ex minus
   -.17ex}{1.2ex plus .17ex}{\large\it}}
\def\subsubsection{\@startsection{subsubsection}{3}{\parindent}
 {-2.5ex plus -.7ex minus -.17ex}{-1em}{\normalsize\bf}}
\def\paragraph{\@startsection
     {paragraph}{4}{\z@}{2.5ex plus .7ex minus .17ex}{-1em}{\normalsize\it}}
\def\subparagraph{\@startsection
     {subparagraph}{4}{\parindent}{2.25ex plus .7ex minus
     .17ex}{-1em}{\normalsize\bf}}

\setcounter{secnumdepth}{2}

% This definition of \maketitle taken from article.sty, and has been
% somewhat modified.

\def\maketitle{\par
 \begingroup
   \def\thefootnote{\fnsymbol{footnote}}
   \def\@makefnmark{\hbox
       to 5pt{$^{\@thefnmark}$\hss}}
   \twocolumn[\@maketitle]
   \@thanks
 \endgroup
 \setcounter{footnote}{0}
 \let\maketitle\relax
 \let\@maketitle\relax
 \gdef\@thanks{}\gdef\@author{}\gdef\@title{}\let\thanks\relax}

\newlength{\titleblockheight}       % so user can change it if need be
\setlength{\titleblockheight}{4cm}


\def\@maketitle{\vbox to \titleblockheight {\hsize\textwidth
  \linewidth\hsize \vfil \centering
  {\Large\bf \@title \par}
  \vskip 2em                % Vertical space after title.
  {\large\begin{tabular}[t]{c}\@author \end{tabular}\par}
  \vfil}
  \vspace{1cm}}



% The \copyrightspace command is used to produce a blank space in the first
% column where a copyright notice may go.  It works by producing a
% blank footnote of the appropriate size.  Note that it should appear
% after any \footnote commands that produce footnotes for the first
% column.   Adjusted to leave just 1cm.

\def\copyrightspace{\footnotetext[0]{\mbox{}\vrule height 1cm width 0pt}}

\def\abstract{\subsection*{Abstract}}
\def\endabstract{\par}

% Redefine to use smaller fonts
\def\thebibliography#1{\setlength{\itemsep}{0pt}\setlength{\parsep}{0pt}
  \section*{REFERENCES\@mkboth
  {REFERENCES}{REFERENCES}}\small\list
  {[\arabic{enumi}]}{\settowidth\labelwidth{[#1]}\leftmargin\labelwidth
    \advance\leftmargin\labelsep
    \usecounter{enumi}}
    \def\newblock{\hskip .11em plus .33em minus .07em}
    \sloppy\clubpenalty4000\widowpenalty4000
    \sfcode`\.=1000\relax}

\let\endthebibliography=\endlist

\twocolumn
\sloppy
\parindent 1em
\leftmargini 2em
\leftmargin\leftmargini
\leftmarginv .5em
\leftmarginvi .5em
\flushbottom
%-----------------------------------------------------------------------
%-----------------------------------------------------------------------
% Here are some useful commands which facilitate correct formatting:
%
% To give a numerical value with units, e.g. \QTY{ 4.2 }{ MV\,n^{-1} }
% (this takes care that the units in an equation are in a roman font
%  and not in math-italic which is used for symbols, IMPORTANT!!)
%
\newcommand{\QTY}[2]{\mbox{\(#1\rm\,#2\)}}
%-----------------------------------------------------------------------
%
% To express a number in scientific notation, e.g. \Enum{1.7}{32}
\newcommand{\Enum}[2]{\mbox{\(#1\times10^{#2}\)}}
%
%-----------------------------------------------------------------------
% numerical formula e.g. \NQTY{E}{GeV} gives [E/GeV]
\newcommand{\NQTY}[2]{\mbox{$[#1/{\rm #2}]$}} % symbol with units in
%
%-----------------------------------------------------------------------
%  Expectation value or average, e.g. \EV{ x^2 } gives  <x^2>
\newcommand{\EV}[1]{\left\langle #1 \right\rangle}% expectation value
%
%-----------------------------------------------------------------------
% These are convenient for quoting luminosity:
\newcommand{\LUMI}[1]{\QTY{#1}{cm^{-2}s^{-1}}}
\newcommand{\LUM}[2]{\LUMI{#1\times10^{#2}}}
%
% thus a B-factory design might quote         \LUM{3.0}{33}
%-----------------------------------------------------------------------
\def\gappeq{\mathrel{ \rlap{\raise.5ex\hbox{$>$}}
                      {\lower.5ex\hbox{$\sim$}}  } }
%
%  \gappeq is a compound symbol made out of a > sign on top of a tilde
%  usually used to mean "greater than or approximately equal to"
%  or "vaguely greater than"  by physicists.
%  It behaves as a mathematical relation in TeX's math modes, e.g.
%  $ a \gappeq b $    in the text and
%  $$ a \gappeq b $$  as a display.
%
\def\lappeq{\mathrel{ \rlap{\raise.5ex\hbox{$<$}}
                      {\lower.5ex\hbox{$\sim$}}  } }
%-----------------------------------------------------------------------

