If a user wants to save the current state of dstool (that is, current parameters, initial conditions, colormaps, sizes of windows, etc.) then the user should simultaneously save both settings and the dstool window configuration in a file. When the user later reloads this data file into dstool, dstool will be in a (virtually) identical state as it was when the data file was written. We say ``virtually'' because a few window settings (for example, the data visible on the propagation panel) is not saved or reloaded into dstool. Also, the size and placement of the Save, Load, Propagation, and User-Defined Panels are not saved.
The following data block describes a few settings for the Lorenz system:
# System_Name Lorenz System # Varb_Dim 4 # Param_Dim 3 # Varb_Ic 0.1 0.1 0.1 0 # Varb_Fc 0 0 0 0 # Varb_Min -30 -30 5 0 # Varb_Max 30 30 50 100 # Param 10 28 2.66666666 # Param_Min -20 0 -5 # Param_Max 20 40 5 # Function_Dim 2 # Function_Min -60 -60 # Function_Max 60 60 ...
The keyword System_Name will cause dstool to examine the name of the currently loaded dynamical system. If the current name matches the title string which follows the command (in this case, ``Lorenz System'') then no action is performed. If, however, the title string does not match the name of the current system, then dstool will attempt to locate an installed system whose name does match. If a match is made, then dstool will change models; otherwise it will attempt to load settings into the current model.
The keywords Varb_Dim and Param_Dim tell dstool the dimensions of phase space and parameter space of the data. If the currently loaded dynamical system has a phase and/or parameter space whose dimensions do not agree with the data dimensions, then the user is presented with the option of cancelling the loading operation. It is up to the user to insure that the data from one dynamical system is not inadvertently loaded into the memory of a second dynamical system.
The keywords Varb_Ic and Varb_Fc set the initial and final condition for the phase space variable; similarly, Param sets the current parameter values. The keywords Varb_Min and Varb_Max set the default range for phase space variables, and similarly Param_Min, Param_Max, Function_Min, and Function_Max set the default ranges for parameters and function values. The keyword Function_Dim notifies dstool as to how many function it should expect. Because functions may be frequently added or removed from a dynamical system as needs change, we do not present an error message if the dimension given by Function_Dim is different than the current number of installed functions. We handle this discrepancy internally.
Most of the remaining settings which may be saved are used to compute orbits, find fixed points, and compute stable and unstable manifolds of fixed points.