Extras Menu

If a menu item in the table below is a hyperlink, click to see examples.
Options Code for Printing Selecting this item outputs text to the MATLAB window which can then be cut and paste into a script. The text contains commands that set up the necessary options to recompute the current plot exactly as a printable plot. Note that this option requires the recomputation of the pseudospectra data, as well as access to the original matrix.
Save for Quick Print Creation This option is similar to above, except that it saves the necessary data for re-creating the current pseudospectra in a .mat file. A printable plot can then be created almost instantly by calling EigTool with a single argument, the name of the file the data was saved in.
Projection Level This parameter controls the amount of projection to use when computing pseudospectra; see the Projection Tutorial for information on choosing good values.
Colour Toggle colour or black lines for the pseudospectra, useful if preparing plots for publication.
Thick Lines Toggle thick or thin lines; thick lines are better for presentations (especially online, where a data projector is being used), whilst thin ones are better for publication plots.
Arbitrary Levels Allows the use of epsilon levels which are not equally spaced, and hence cannot be entered using EigTool's standard Contour Levels pane.
Accuracy of FoV Comp. By default the field of values (numerical range) is computed by connecting 40 points on its exterior using straight lines. This option allows the default value to be changed if finer resolution is required (the number must be even).
Departure from Normality This option will compute Henrici's departure from normality for the current matrix. This is defined to be the Frobenius norm of N where N = T-diag(li), T is the Schur factor of the matrix and diag(li) is the diagonal of T.
Display Eigenvalues For some plots it may be desirable to remove the eigenvalues (for example if it is known that the pseudospectra are correct for a particular discretisation, but the eigenvalues are not).
Display Pseudospectra Similarly, there may be cases where only the eigenvalues are of interest, and the pseudospectra need to be turned off.
Display Dimension Displays the dimension of the matrix in the bottom left hand corner of the axes. This is useful for determining the size of the projected matrix if projection is being used.
Display Gridpoints Displays the grid used for the pseudospectra computation; EigTool computes the norm of the resolvent inv(z*I-A) at points z in a grid over the current portion of the complex plane.
Display Imaginary Axis This item toggles the display of a grey line on the imaginary axis, useful for determing the stability of certain operators.
Display Unit Circle This item toggles the display of a grey line on the unit circle, useful for determing convergence properties in certain applications.
Display Colourbar This item toggles the display of the colourbar showing the different epsilon levels plotted by EigTool. This is especially useful for creating printable plots without the colourbar.

Some specific examples

Options Code for Printing

As an example of creating options code, we will show how we created the options for the Orr-Sommerfeld demo from the
Demos menu. The following commands can be used to create the matrix and start EigTool:

A = orrsommerfeld_demo(100);
eigtool(A);

The initial plot created by EigTool is shown below:

EigTool: the initial Orr-Sommerfeld plot

For this discretisation, it is known that only the rightmost eigenvalues approximate those of the operator, so we change the axes using either the text boxes or the mouse to focus on the area we want. Adding the imaginary axis allows us to see whether this operator is stable (which side of the line does the rightmost eigenvalue lie on?), and increasing the number of grid points to 50 gives a smooth plot:

EigTool: detail of the Orr-Sommerfeld plot

If the Options Code for Printing menu option is now selected, the following text is output in the main MATLAB window:

% Run the following commands to set up the necessary
% options to create a printable plot of the pseudospectra.
% Create the plot using 'eigtool(A,opts)' where A is your matrix.
% (If you are using eigs, simply pass these options along with
% the eigs options to eigs itself.)
opts.npts=50;
opts.levels=-7.5:0.5:-2;
opts.ax=[-1 0.2 -1.05 0];
opts.proj_lev=Inf;
opts.colour=1;
opts.thick_lines=1;
opts.scale_equal=1;
opts.grid=0;
opts.dim=1;
opts.no_ews=0;
opts.no_psa=0;
opts.fov=0;
opts.direct=1;
opts.print_plot=1;

To use this, copy it and paste it into a script (or the MATLAB window), and add the lines

A = orrsommerfeld_demo(100);
eigtool(A,opts);

Running this script will then create a printable plot of the eigenvalues and pseudospectra exactly as above:

Printable plot: detail of the Orr-Sommerfeld plot

Note that if you want to be left with an EigTool session rather than a printable plot, simply set opts.print_plot=0. For full details of the options available, please see Command Line Options.

Save for Quick Print Creation

For some problems, the time taken to compute the pseudospectra data may be substantial, and so it is desirable to have a method of saving the computed data needed to create the plot, rather than the options used as above. If we use this menu option to save the data into a file called, say, os_test.mat, the printable plot below (which is identical to that above) can be instantly created using the command:

eigtool('os_test');

Printable plot: detail of the Orr-Sommerfeld plot

Arbitrary Levels

The exponentially spaced epsilon levels used as default by EigTool are generally good, but for some problems more user control may be desired. The Aribtrary Levels option is there to provide this by allowing the user to enter their own levels via a text box:

EigTool: Random (100) example, exponential levels

In this example, the Random Demo is shown, but for this near-normal matrix equally spaced levels may be more appropriate:

EigTool: Random (100) example,  equally spaced levels

Notice that the levels shown in the colourbar are no longer equally spaced as an indication that non-exponentially spaced levels are being used.


EigTool home page.