\section{The Equilibrium Continuation Window}\index{Equilibrium Continuation window}\index{window, Equilibrium Continuation}\index{continuation}
%
%
\begin{figure}[H]
%\vspace{2.0in}
\centerline{\psfig{figure=ps/continuation.ps,height=200pt}}
\caption{\label{Continuation}
The Continuation window.
}
\end{figure}

%
%
%
\begin{description}

\item[Window title:] DsTool: Equilibrium Continuation
\item[Function:] The Equilibrium Continuation window allows the user to compute curves of bifurcations. 
\item[Description:] The Equilibrium Continuation window is opened by selecting
	the Equilibrium Continuation option from the Panels menu button
	located in the Command window.  The window allows the 
	user to compute curves of equilibrium points with one
	varying parameter and curves of saddle-node and Hopf bifurcations
	with two varying parameters.  A brief tutorial on 
	continuation calculations is at the end of this section. 
	The different Hopf bifurcation algorithms are described in 
	\cite{GM} and \cite{GMS}.

	Color coding\index{color, coding} for hyperbolic equlibrium points
	is performed according to the
	value of the Monitor switch setting.  For the 
	bifurcation types, color coding is performed according to the choice of 
	colormap, as shown in the Continuation Colors window.  
        In the default colormap, Hopf bifurcation
        points are displayed in magenta, saddle-node bifurcation points are
        displayed in green, degenerate Hopf points are displayed in
        orange, and resonant saddle-node points are displayed in sea
        green.

%	J. Guckenheimer, M. Myers and B. Sturmfels, Computing Hopf 
%	Bifurcations I, SIAM J. Num. Anal., 34, 1-21, 1997 and 
%	J. Guckenheimer, and M. Myers, Computing Hopf Bifurcations II,
%	SIAM J. Sci. Comp, 17, 1275-1301, 1996.
%\item[Panel type:] pop-up
%\item[Panel attributes:] pinnable(in), resizable, variable template
\item[Panel items:] \mbox{}
	\begin{itemize}
	\item Iterations numeric field:
		Displays the number of points along
		a curve of equilibrium points that will be computed. The
		type of curve that will be computed is determined by the
		Mode stack setting.  The default value is 10.
	\item Monitor switch exclusive setting:
		Allows the user to choose whether or not to color equilibrium points with the 
		DsTool convention\index{color, DsTool convention}: blue 
		for sink, green for saddle and red for source.  
		The default value is on.
	\item Mode stack setting:\index{bifurcation, types}
		Allows the user to choose the system of equations to be solved with
		continuation. The choices are:
        	\begin{description}
                	\item[Static Bifurcation:]\index{static bifurcation}\index{bifurcation, static}
			for continuing curves of
			equilibrium points with a single active parameter.
                	\item[Saddle Node ( $\det() = 0$ ) :]\index{saddle node bifurcation}\index{bifurcation, saddle node} 
			for computing curves
			of saddle-node bifurcations with two active parameters.
			The determinant of the Jacobian is computed and used
			as an augmenting equation to the equilibrium equations.
			\item[Saddle Node Bifurcation:] for computing curves
			of saddle-node bifurcations with two active parameters.
                	\item[Hopf Bif ( $|Bp=0|$ ) :]\index{Hopf bifurcation}\index{bifurcation, Hopf}
			for computing curves of
			Hopf bifurcations with two active parameters, using
			the bialternate product.
                	\item[Hopf Bif ( $|{\rm Bezout}|=0$ ) :] for computing curves of
                        Hopf bifurcations with two active parameters, using
			the Bezoutian.
                	\item[Hopf Bif (JGR):] for computing curves of
                        Hopf bifurcations with two active parameters, using
			the algorithm developed by Jepson, Griewank and Reddien.
                	\item[Hopf Bif (kubicek 1):] for computing curves of
                        Hopf bifurcations with two active parameters, using
			the algorithm developed by Kubicek.
		\end{description}
	\item Aug params listbox:
		Allows the user to choose active parameters. Static Bifurcation
		calculations require that the user select one active
		parameter. Saddle-node and Hopf bifurcation calculations
		require the user to select two active parameters.  An error message will
		be printed if the user tries to select too many active parameters, or 
		tries to initiate a calculation with too few active parameters.
	\item Cont.~param stack setting:
		Allows the user to choose one of the phase space
		variables or one of the active parameters to parameterize
		the curve of equilibrium points. 
	\item Parameter fix switch exclusive setting:
		Allows the user to choose whether the setting in Cont.~param stack may be changed
		during the calculation.  The choice Vary allows the continuation algorithm to change
		the variable used as the continuation parameter adaptively. 
		The choice Fix uses requires the continuation algorithm to
		use only the variable selected in the Cont.~param
		stack setting.  The default is the ``Vary'' setting.
	\item Jacobian update switch exclusive setting:
		Allows the user to choose to update the Jacobian of the augmented system
		at each step or only at the initial continuation step.  The default is to update the
		Jacobian at each step.
	\item Absolute error read-write text field:
		Displays the absolute error tolerance used in solving the augmented equations.
		The default value is $10^{-5}$.
	\item Relative error read-write text field:
		Displays the relative error tolerance used in 
		solving the augmented equations.  The default value is $10^{-5}$.
	\item Minimum step read-write text field:
		Displays the minimum step size used by the 
		continuation algorithm for continuation steps of the 
		continuation parameter.  The default value is $10^{-3}$.
	\item Maximum step read-write text field:
		Displays the maximum step size used by the 
		continuation algorithm for continuation steps of the 
		continuation parameter.  The default value is $0.1$.
	\item Sugg. step read-write text field:
		Displays the step size used by the 
		continuation algorithm for the initial continuation step of the 
		continuation parameter.  The default value is $0.01$.
	\item Debug level numeric field:
		Displays an integer for determining the 
		amount of diagnostic information printed to the terminal
		window from which DsTool is run.  The default value 
		is $0$, which prints no diagnostic information to the terminal.
	\item Forwards command button:
		Initiates a continuation calculation in the direction of 
		increasing values of the continuation parameter for the number
		of steps in the Iterations field. 
	\item Backwards command button:
		Initiates a continuation calculation in the direction of 
		decreasing values of the continuation parameter for the number
		of steps in the Iterations field. 
	\item Continue command button:
		Continues the last continuation calculation for the number
		of steps in the Iterations field. 
	\item Search command button:\index{equilibrium continuation search}
		Uses Monte Carlo seeds to locate solutions of the augmented
		equations.  The number of seeds used is determiend by the 
		value of the Iterations text field.
	\item State window button:\index{Continuation State window}\index{window, Continuation State}
		Opens and brings to the foreground the Continuation State window.
% The Continuation State Window displays the values of the current phase space coordinates, parameters and the 
%		eigenvalues of the Jacobian.  It contains a command button to update the current point for DsTool, 
%		displayed in the Initial field of the Selected window.
	\item Dismiss command button:
		Closes the Equilibrium Continuation window.
	\end{itemize}
\end{description}

\vspace{12pt}
{\bf Appendix: Continuation Calculations}

One parameter continuation is a systematic strategy for computing
curves of solutions to $l$ equations $G: \real^{l+1} \rightarrow \real^l$ in
$l+1$ variables. The mathematical foundation for continuation
algorithms is the implicit function theorem.  If $G$ is differentiable
and the Jacobian of $G$ is surjective at a point $x \in \real^{l+1}$ where
$G$ vanishes, then the solutions form a curve in a neighborhood of
$x$.  Moreover, the implicit function theorem gives a formula for the
tangent vector to the solution curve. Continuation algorithms exploit
this information. They use an initial value solver for ordinary
differential equations (often just the Euler method) to step along an
approximation to the solution curve. They then appply a root finding
algorithm to significantly improve the approximation. The alternation
of root finding with numerical integration steps distinguish
continuation methods.  Choices of how to parametrize the solution
curve, choose time steps and restrict the equations to a hyperplane to
obtain a square system of equations with a unique solution (locally)
need to be made. Various continuation packages take different
approaches to these matters: the continuation ``engine'' used by DsTool
is PITCON (Rheinboldt ...).

If $f:\real^{n+k} \rightarrow \real^n$ is a $k$ parameter family of vector fields, 
then we assemble systems of equations $G$ for varied calculations. 
To do so we restrict ourselves to a submanifold of dimension 
$l+1 \subset \real^{n+k}$.
Most frequently this submanifold is obtained by fixing $k-s$ of the parameters of $f$ (called {\bf inactive parameters}) and varying $s$ {\bf active} parameters. In the simplest case, $G=f$, the number of equations is $n$,
$s=1$ and the continuation calculation computes curves of equilibria
with a single active parameter. To compute curves of bifurcations, one adds
{\bf defining equations} to the system of equations $f=0$ to produce an 
{\bf augmented}	system. The number of independent defining equations added
to $f=0$ is the {\bf codimension} of the bifurcation.
(In some circumstances, the augmented system uses 
additional {\bf auxiliary} variables such as eigenvalues of the Jacobian
and has a corresponding number of additional equations.)

The continuation window of DsTool includes calculations for saddle-node and 
Hopf bifurcations. These are the codimension one bifurcations of 
equilibrium points.
For saddle-node bifurcations, the defining equation is $\det (Df_x) = 0$
or an algorithm that computes another scalar quantity, such as the 
smallest singular value, that vanishes precisely when $Df$ is singular.
For Hopf bifurcations, the defining equation(s) compute where the
matrix $Df$ has a pair of pure imaginary eigenvalues. Explicit
expressions
in the coefficients of $Df$ that compute whether $Df$ has a pair of
complex eigenvalues are very complicated.  Alternate ways of performing
this computation are discussed in \cite{GMS}.
%Guckenheimer, Myers and Sturmfels
%(SIAM J. Num. Anal. 1997) discuss alternate ways of performing this
%computation. 
There are also other algorithms that perform the calculation
by introducing auxiliary variables for the pure imaginary eigenvalues, 
and in some cases the eigenvectors of $Df$.

