An eigencircle applet
Graham Farr, Faculty of IT, Monash University
Graham.Farr@infotech.monash.edu.au
Contents
1. Introduction to eigencircles
2. The applet
3. Guide to the eigencircle applet
3.1. Getting started
3.2. Edit options
3.3. Display options
3.4. Matrix information
3.5. Buttons
References
The eigencircle of a 2x2 matrix is a special circle
based on the matrix that generalises the set of eigenvalues
of the matrix. It can be used to give simple geometric illustrations
of many properties of the matrix. It was introduced
by Michael Englefield and the author in [1].
The main purpose of this web page is to present an
applet to help you explore
eigencircles. We also give a very brief introduction
to the topic. This introduction just gives you the minimum
to get started. We assume you already know about eigenvalues.
For further information on eigencircles,
see the references.
If you already know about eigencircles, you will probably just
want to go straight to the applet. You can do so
here if you like.
For help on using the applet, consult
the guide in Section 3 below.
1. Introduction to eigencircles
Recall that an eigenvalue of a 2x2 matrix
is a number λ such that
(
| a | b
| )
| (
| x
| )
| =
| λ
| (
| x
| )
|
c | d
| y | y
|
for some x, y not both 0.
Let us rewrite the above equation a little:
(
| a | b
| )
| (
| x
| )
| =
| (
| λ | 0
| )
| (
| x
| )
|
c | d
| y
| 0 | λ
| y
|
where, again, x, y are not both 0.
We have just used the correspondence
which represents any real number as a real 2x2 matrix.
Real addition and multiplication correspond to matrix addition
and multiplication: it is a field isomorphism, between the real
numbers and real multiples of the identity matrix.
Our generalisation is inspired by a well-known way of representing
complex numbers as real 2x2 matrices. Let
λ + μ i be complex (where λ and μ are real).
Then the correspondence
is a field isomorphism that represents any complex number by
a real 2x2 matrix of appropriate form. Let us see what happens if
we use matrices of this form, instead of just multiples of the
identity matrix, in the eigenvalue equation above. We have:
(
| a | b
| )
| (
| x
| )
| =
| (
| λ | μ
| )
| (
| x
| )
|
c | d
| y
| -μ | λ
| y
|
with, as usual, x, y not both 0.
We call a pair of real numbers (λ,μ) that satisfy this
an eigenpair. Note that this equation is
not the same as just allowing complex eigenvalues in
the ordinary eigenvalue equation. It is routine to show that
the set of eigenpairs describes a circle in the real
λ,μ-plane, and it is this circle which we call the
eigencircle.
The equation just given is an example of a
multiparameter eigenvalue problem.
2. The applet
Press the following button to launch an eigencircle window.
For this to work, you must have Java installed.
If you are not sure whether or not your web browser
can run Java applets,
click here to test it. If you have Java and want to see
what version of Java your web browser is using,
click here to find out.
To run the applet, you will probably need at least Java 1.2.
The above button should say, "Launch eigencircle window". If all you
see is a rectangle with a red cross in it, or some kind of error
message, then you have a problem. Try the above links to see
whether you have Java and, if so, what version it is.
If you do not have Java, you will need to install it for the
eigencircle applet to work on your machine: one place to start
is here.
If you do have Java,
but the eigencircle applet still does not work, please
email me
with "eigencircle" in the subject line, and tell me what version
of Java you have, what web browser you are using (including version
number), what operating system and computer you are using,
what the above button looks like when you first load the web page,
and what happens when you click it.
There is some
error message info at java.com
which might help;
if you try it, I would be interested to know how much it helps you.
From now on, we assume you have Java and can run applets from
your web browser.
Each click of the above button will launch a new window. All such windows
are identical as far as the user interface is concerned, but they are
independent in that they can each
contain their own separate matrix and eigencircle. The Guide below
concentrates on the behaviour of a single one of these eigencircle
windows.
Note: If you have just arrived at this page and not pressed this button
before, and it does not respond to your first press, then
you may need to press it a second time: it may take an initial
click just to "activate" the button so that it can respond
to clicks. After that,
a single press should suffice to launch a new eigencircle window
promptly.
3. Guide to the eigencircle applet
3.1. Getting started
The applet initially appears as just a button sitting in
this web page. The purpose of this button is to launch
eigencircle windows. Each such window allows you to enter
a 2x2 matrix, view its eigencircle, and experiment interactively.
When an eigencircle window first starts, you will see a large blank
area on the left and various buttons and fields on the
right. The large blank area is where the graph of the
eigencircle will be drawn, but there is nothing there yet
as no matrix has been entered. So the first thing to do
is to manually enter a matrix (indeed, the "Message Box"
along the top tells you to do just this, in dark blue text).
You can do this
by typing matrix entries in the four fields labelled
a, b, c, d
(and arranged as a 2x2 matrix) at upper right.
Once you have typed in all matrix entries, press the Enter
key, or click on the Calculate button, and the eigencircle
will be calculated and graphed at left. Also, various fields
will be filled in, in the right side of the display, and the
equation of the eigencircle is given in the very bottom field.
If you press Enter or click Calculate when some of the fields
a, b, c, d
are still blank, or when one or more of them contains
text that does not represent a number, an error message will
appear in the Message Box (this time in red). You just need
to complete or correct the field(s) concerned, and then
press Enter or click Calculate again.
Note that the fields you can currently edit are white, while
all the others, which just display information and cannot be
edited, are the same colour as the surrounding area of
the window (light blue on my machine, and we'll assume it is
this colour from now on). This convention is used throughout
the running of the applet.
Once the matrix entries are all valid and the window has
displayed the eigencircle (and all the other information)
for the first time, you will get another message in dark blue
in the Message Box. This tells you that you now have a choice
as to what to edit.
3.2. Edit options
You choose what to edit by clicking one of the
five radio buttons in the top right of the window.
- Matrix.
This enables you to type in or modify the matrix entries (whose fields
will now be white, and editable). Alternatively, on the graph,
you can move the special points on the axes corresponding to the
matrix entries. These are shown as small red boxes. (They will
only exist if you already have an eigencircle graph displayed.
If not, then the only thing you can do is put matrix entries in
their fields.) This option is always selected when the window
first starts, and indeed is the only option available (so the others
are greyed out and cannot be selected) until you have a valid matrix
and its eigencircle has been calculated and displayed.
- Eigencircle centre.
This enables you to change the coordinates of the eigencircle's
centre, either by editing the appropriate fields, labelled
f and g
(which are now white and editable), or by moving the centre dot
(which is now red) on the graph. When you do this, the circle's
radius remains fixed, and the matrix
entries are recalculated so that the displayed eigencircle
is the correct one for the current matrix. The matrix entries
are adjusted so as to preserve the size and shape of the
special rectangle (but not its location, since its centre is the
same as the eigencircle's centre). This is not the only matrix
which has the new circle as its eigencircle, but has been chosen
as being the one most like the original matrix in some sense.
- Eigencircle radius.
You can change the eigencircle's radius either by editing the
appropriate field, labelled ρ (now white and editable),
or by moving the circle's perimeter (now red) in or out.
The circle's centre stays fixed, and the matrix entries are
adjusted so as to preserve the shape and centre (but not the
size) of the special rectangle. If you make the radius zero,
you will no longer be able to change anything except the matrix
entries or the eigencircle centre, and this will remain the case
until you enter a matrix whose eigencircle radius is nonzero.
(This is because a zero-radius eigencircle has no special rectangle,
so if you were to increase the radius the applet does not know
what special rectangle to use in order to update matrix entries.)
- Vary a matrix element, fix eigencircle.
You can now vary any single matrix element, by moving the corresponding
small box (now red) on the axes. All the other entries will adjust so
that the eigencircle of the matrix remains the same. This enables you
to study the family of all matrices with a given eigencircle.
Note that this option does not allow you to edit the fields for the
matrix elements. Also, for numerical reasons it does not always
allow the rectangle to become the degenerate "rectangle" formed by
a single horizontal or vertical diameter of the eigencircle.
- Vary matrix/circle, fix eigenvalues
You can now vary anything at all: matrix element, eigencircle centre,
or eigencircle radius. All the corresponding items in the graph
should be red. Varying any of them will cause all the others to be
adjusted so as to keep the eigenvalues of the matrix unchanged
(even if they are complex), and
so as to preserve the shape of the special rectangle. If the
radius becomes zero then some items will become unavailable, and
a matrix of positive eigencircle will have to be entered in order
to make all editing options available again. If elements
a and d
are equal, then they will not be movable under this edit option,
as in this case the special rectangle is degenerate (a single
vertical line segment, forming a diameter of the eigencircle),
and such a special rectangle can only
remain degenerate in this way if a = d.
Other items should still
be movable in this situation (except the radius, if it is zero).
Note that, if you move (click-and-drag)
one of the red items on the graph,
then the graph itself updates continuously while you move
the item. However the various fields, giving
information on the matrix and its eigencircle, will only
update once the mouse button is released.
An example of the kind of exploration you can do
is to study all matrices with given eigenvalues.
To do this: (1) enter some matrix of interest (which has the
eigenvalues that interest you, if you have particular eigenvalues
in mind),
using the Matrix
edit option, and get the program
to display its eigencircle as explained above;
(2) select the last edit option: Vary a matrix element, fix eigencircle
;
(3) vary the eigencircle by moving any of the movable items, say
its centre or radius;
(4) select the second-last edit option: Vary a matrix element, fix eigencircle
;
(5) vary any of the matrix elements, using the small red boxes on
the axes, in order to get any desired matrix with that eigencircle.
The matrices obtainable in this way are precisely those that have
the given eigenvalues (at least in principle; of course, any program
is subject to numerical limitations).
3.3. Display options
At first, the graph shows the eigencircle with a certain special
inscribed rectangle defined by the matrix entries, and the axes of the graph
have scales on them. You have a number of choices as to what
is, or is not, displayed in the graph. These choices are made by
clicking the checkboxes under the heading DISPLAY OPTIONS
in the middle of the right side of the window.
Initially, the Special Rectangle and Scales on Axes boxes are
checked, so the graph will show these. If you wish, you can
uncheck either of these by clicking it, and that feature will no longer be
displayed (unless you later click the checkbox again).
The display options are:
- Special rectangle.
This is the rectangle formed by the four points with
λ-coordinates a or d
and μ-coordinates b or -c. These points always lie
on the eigencircle. This option also displays the lines leading from
the coordinate axes to the sides of this rectangle.
- Determinant.
The determinant is (in the language of classical Euclidean geometry)
the power of the origin O with respect to the eigencircle.
Its magnitude is the square of the length of a particular
line from the origin to the eigencircle:
if the origin is outside the eigencircle, the line is tangent to
the eigencircle (and the determinant is positive);
otherwise, it is perpendicular to the line from
the origin to the eigencircle's centre C
(and the determinant is negative).
This option shows this line segment, and also the right-angle triangle
(including O and C) of which the line forms one side.
- Eigenvalues.
This option displays lines whose lengths are the eigenvalues.
If the eigenvalues are real, then their values are the
λ-intercepts of the eigencircle. In this case, they
are shown as thick dark blue lines along the λ-axis from the origin
to these λ-intercepts. If the eigenvalues are complex
but not real, then their (identical)
real parts are shown as, again, a thick dark
blue line from the origin to the λ-coordinate of the eigencircle's
centre. The magnitude of the imaginary part is shown as a light blue line,
tangent to the eigencircle and touching the end of the real part.
- Eigenvectors.
These are only displayed if the eigenvalues are real.
In that case, they are shown as grey vectors from the point
(λ,μ) = (d,-c)
to the λ-intercepts of the eigencircle.
Of course, eigenvectors can be any scalar multiple of either of these
vectors. Furthermore, eigenvectors actually sit in the
x,y-plane, rather than the λ,μ-plane,
so strictly speaking we have to imagine the former plane superimposed
on the latter.
If the eigenvalues are not real, then no eigenvectors are
displayed, but this display option will remain available in its current
state (checked or unchecked) and that state can be changed by the user.
Although checking or unchecking this checkbox has no immediate effect if the
eigenvalues are not real, there is always the possibility that the user,
in changing the matrix or circle using one of the edit options, may produce
a matrix with real eigenvalues. In that case, the current state of
this checkbox will be used to determine whether or not eigenvectors
are displayed.
- Scales on axes.
Scales on axes are provided by default, but sometimes can clutter the
graph a bit so you have the option of removing them. The axes themselves
cannot be removed, though.
Initially, the Special Rectangle and Scales on Axes options are
selected and the others are not selected.
3.4. Matrix information
Further down on the right there are fields that display information
about the matrix: its determinant, trace, eigenvalues (real or
complex, as the case may be), and eigenvectors (which are only
given if the eigenvalues are real, since only in that case can
they be shown on the eigencircle graph). Finally, in the long
field underneath the graph, the equation of the eigencircle is given.
All these fields are for display of information only, and can never
be edited.
3.5. Buttons
There are four buttons at the very right edge of the window:
- Calculate.
This calculates the eigencircle, and all the various items of
matrix information to be presented in the information fields,
from the current 2x2 matrix. It also ensures that the eigencircle
and axes are nicely positioned in, and framed by, the display area
used for the graph.
- Reframe.
This just reframes the current eigencircle, without recalculating
it or any of the matrix information. The aim is to ensure that
the circle and axes are well positioned and framed, as in the final
step of the Calculate button described above. It is useful in cases
where the eigencircle has been partly moved out of the display area
by some action of the user.
- Previous matrix.
Pressing this takes you back to the previous matrix, which is the
matrix that was being used before the last time the user released
the mouse button on the graph, or pressed Enter, or clicked Calculate.
This button is only available when there is a previous matrix to go
back to, so will be unavailable (and greyed out) initially, and even
after the very first matrix has been successfully entered. Only after
a second valid matrix has been entered (and its eigencircle graphed)
does this button become available.
- Quit.
This just makes the eigencircle window quit. But you can always
start another window by clicking the launching button again. To
stop the applet completely, you need to leave this web page
or close the browser window that the web page is displayed in.
References
[1] M J Englefield and G E Farr,
Eigencircles of 2x2 matrices,
Mathematics Magazine 79
(October 2006)
281--289.
[2] M J Englefield and G E Farr,
Eigencircles and associated surfaces, submitted, 2009.
Created 15 November 2007;
Last updated 1 December 2007.