next up previous contents
Next: Running rauto Up: The 4.5 minutes guide Previous: The equations file   Contents

The constants file

The constants file is a plain text file containing values for some problem constants, for example, the dimension of the ODE and parameters influencing the performance of AUTO's algorithms. Figure 3 shows a sample constants file, which is split optically into two parts. The left-hand block of numbers are the actual constants and the right-hand block contains commenting text. The format of these comments reflects the formatted READ statements used to read in the individual lines. For example, AUTO uses the Fortran statement



READ(2,*,END=5) NDIM,IPS,IRS,ILP



to read in the first line of a constants file. When executed, this example statement reads the full first line and assigns the first four values to the variables listed after the closing bracket. Any surplus data, in our case the comments, is ignored. The data type of the constants is integer if the first letter is I, J, K, L, M, or N, and double precision otherwise. The data in the constants file is interpreted according to the data type of the constant. Therefore, 1.e-6 in the constants file is a double precision number, while it would be of single precision in Fortran source code.

Figure 3: Sample constants file.
\begin{figure}\begin{small}
\hrule
\begin{verbatim}1 1 0 1 NDIM,IPS,IRS,ILP
2 ...
...NTHU)
0 NUZR,((I,UZR(I)),I=1,NUZR)\end{verbatim}
\hrule
\end{small}
\end{figure}

In the order they appear in the constants file the AUTO constants are: NDIM is the dimension of the ODE. IPS sets the solution type you want to compute, 1=equilibrium points of ODEs and 2=periodic solutions of ODEs. IRS is the label of the restart solution, that is, the solution you want to start your continuation with. If IRS$ >$0 use solution with label IRS of a previous run, if IRS=0 use solution set by subroutine STPNT. ILP switches limit point detection on (ILP=1) or off (ILP=0).

NICP is the number of free continuation parameters. The continuation of equilibrium points requires at least one free parameter (NICP$ \geq$1) and the continuation of periodic solutions two (NICP$ \geq$2). ICP is an array of dimension NICP and stores the indices of the free continuation parameters. The first parameter PAR(ICP(1)) is the primary continuation parameter. For the continuation of periodic solutions a secondary continuation parameter must be present. The natural choice is the period stored in PAR(11). It is sometimes useful to include more free parameters than necessary, which results in additional output. This is called parameter overspecification and at most seven parameters may be specified; see [1] for more details.

NTST is the number of mesh intervals used for computing periodic solutions. This should be set to a moderate value (5$ \leq$NTST$ \leq$20) and only be increased if necessary. NCOL is the number of collocation points per mesh interval. Default is NCOL=4, which should normally not be changed. IAD controls the mesh adaptation during continuation. The distribution of mesh points is adapted every IAD continuation steps if IAD$ >$0, or kept fixed if IAD=0 (adaptation off). ISP controls the detection of special points (bifurcation points). ISP=0 disables detection of special points. With ISP=1 branch points of equilibria, with ISP=3 branch points of periodic solutions and with ISP=2 all special points will be detected (equilibria and periodic solutions). ISW indicates if branch-switching shall be performed. The normal setting is ISW=1. If IRS is the label of a Hopf bifurcation (HB) branch point (BP) or a period-doubling bifurcation (PD) then setting ISW=$ -1$ will start to continue the branch of solutions branching off the special point. If IRS is the label of a fold (LP), Hopf (HB), period doubling (PD) or torus bifurcation point (TR) then IRS=2 will start a codimension-one continuation of a locus of such points. An additional free continuation parameter must be present for such continuations. IPLT selects the principal solution measure shown in column 5 of AUTO's output; see Figure 1. The normal setting is IPLT=0 and is rarely changed. NBC is the number of boundary conditions and NINT the number of integral conditions when AUTO is used for the continuation of solutions of general two-point boundary value problems, which we are not concerned with here. We use the setting NBC=NINT=0.

NMX is the maximal number of continuation steps. AUTO will stop with EP after at most NMX continuation steps have been performed. RL0 and RL1 are the lower and upper limit for the primary continuation parameter. AUTO will stop with EP whenever the primary continuation parameter leaves the interval [RL0, RL1]. A0 and A1 are bounds for the principal solution measure. AUTO will stop with EP whenever the principal solution measure leaves the interval [A0, A1].

NPR controls the amount of data saved during continuation. AUTO will save the solution and full restart data every NPR continuation steps in addition to all solutions at special points. NPR should not be too small to avoid excessive data storage. A value around NMX/10 is usually a good choice. MXBF controls automatic branch switching for equilibrium point continuation, which allows to some extend the automatic computation of a bifurcation diagram. The normal setting is MXBF=0. IID controls the amount of diagnostic output generated by AUTO. This is useful for debugging purposes. The diagnostic output is written to the file data/d.run, where run is the name of the run. The normal setting is IID=2. ITMX is the maximum number of iterations allowed for locating special points. The normal setting is ITMX=8. ITNW is the maximum number of combined Newton-Chord iterations for the correction step of the continuation method. The normal setting is ITNW=5, but may need to be increased for difficult problems. NWTN is the maximum number of full Newton steps of the combined Newton-Chord iterations. The normal setting is NWTN=3. This may need to be increased for difficult problems. JAC is a flag indication whether the user provides derivatives in the subroutine FUNC. The normal setting is JAC=0 (no derivatives provided). If set to JAC=1 the user must provide derivatives with respect to state variables and parameters.

EPSL Convergence criterion for equation parameters. AUTO will stop with MX if the error in the parameters becomes larger than EPSL. The normal setting is EPSL= $ 10^{-7} \dots 10^{-6}$. EPSU Convergence criterion for state variables. AUTO will stop with MX if the error in the state variables larger than EPSU. The normal setting is EPSU= $ 10^{-7} \dots 10^{-6}$. EPSS Convergence criterion for locating special points. The normal setting is EPSU= $ 10^{-4}\dots 10^{-3}$. EPSS should be 100...1000 times greater that EPSL, EPSU. AUTO behaves a bit erratic when this criterion cannot be satisfied. Sometimes it will stop with MX and sometimes it will resume the continuation without mentioning. Check the diagnostic output file data/d.run for possible special points that went unnoticed.

DS is the initial continuation step size. This value should not be too large and must satisfy DSMIN$ {}\leq\vert$DS$ \vert\leq{}$DSMAX. A negative value reverses the direction of continuation. DSMIN is the minimal allowed continuation step size. AUTO will stop with MX if the correction step fails with $ \vert$DS$ \vert$=DSMIN. DSMAX is the maximal allowed continuation step size. AUTO will not use larger steps. Note that increasing DSMAX also increases the risk of missing special points. IADS controls adaptation of the continuation step size. The continuation step size is adapted every IADS continuation steps, or kept fixed if IADS=0 (adaptation off).

The last three entries all have the same syntax and read values into arrays. The first constant NTHL, NTHU or NUZR appears on a separate line and specifies the number of subsequent array entries to read in. After this line follow precisely NTHL, NTHU or NUZR lines containing two values: an index I and a real number X. THL is an array defining weights for individual equation parameters and THU for individual state variables. I is the index of the parameter or variable and X is the new weight assigned to it. By default, all weights are 1. These weights are used in the computation of the distance between two points in combined state and parameter space and affect the continuation step size. This functionality is sometimes used to exclude the period from the computation of the continuation step size by setting THL(11)=0. UZR is a list of parameter values for which the solution shall be saved. A label will be assigned to such solutions and they can be used as initial solutions of restarted runs. I is the index of the parameter and X is the value for which the solution shall be saved whenever PAR(I)=X holds during continuation. If I is negative then AUTO will save the solution and stop with EP if PAR($ \vert$I$ \vert$)=X holds. The maximum number of user output points is normally limited to 20. This limit can be changed; see [1] for more details.

A one-page overview of all AUTO constants with typical values is given in Appendix B and a full description can be found in the manual of AUTO [1].


next up previous contents
Next: Running rauto Up: The 4.5 minutes guide Previous: The equations file   Contents
Frank Schilder 2007-04-12