### 1. A random matrix

Peter Maxwell from Trondheim gave a stimulating talk at last week's Strathclyde numerical analysis meeting about computing the boundary $c$ of the field of values [1]. Before we get to an intriguing $5\times 5$ matrix of his, let's look another more obvious example. Let $A$ be an $n\times n$ matrix with independent normally distributed entries from $N(0,/n)$, $n=60$, and let $c$ be the curve defining the boundary of its field of values (= numerical range):

rng(1) n = 60; A = randn(n)/sqrt(n); c = fov(A);

$c$ is an analytic curve well separated from the eigenvalues of $A$, and it certainly looks smooth to the eye.

plot(c,'linewidth',2), axis equal, xlim([-3 3]), grid on hold on, plot(eig(A),'.k','markersize',8), hold off title('field of values and eigenvalues')

Yet its length as a chebfun is very high.

length(c) plotcoeffs(c), grid on

ans = 803

What's going on? How can a curve that looks so smooth be so complicated? (A similar question is raised in a different context in Exercise 8.9 of *Approximation Theory and Approximation Practice*.)

Before going any further, let's convert to the more natural periodic form (Fourier instead of Chebyshev; see Chapter 11 of the *Chebfun Guide*). This shortens the length of the chebfun, but only by a factor of about $\pi/2$, so the puzzle persists of why the length is so high.

c = chebfun(@(t) c(t),[0 2*pi],'trig'); length(c) plotcoeffs(c), grid on title('Fourier coefficients wrt Johnson angle t')

ans = 563

The convergence of the Fourier coefficients is evidently geometric, confirming that $c$ is analytic, as we expected (*ATAP*, chapter 8). But its strip of analyticity around the real axis in the complex plane is quite narrow. We can show this by executing the `plotregion`

command and superimposing also some estimates of poles near the real axis computed with `aaa`

:

plotregion(c), axis equal, grid on xx = linspace(0,2*pi,1000); [r,poles] = aaa(c(xx),xx,'tol',1e-10); hold on, plot(poles,'.r'), hold off ylim([-1.6 1.6])

Perhaps this is a bit highbrow. A more straightforward way of seeing the nonsmoothness of $c$ is to plot the derivative of its absolute value:

ac = abs(c); plot(diff(ac)), grid on xlabel('t') ylabel('abs(c(t))''') title('derivative of abs(c) wrt to Johnson angle t')

Why does such a smooth-looking curve $c$ have such a complicated derivative? A promising conjecture is that it is the parametrization of $c$ that is at fault. This parametrization is in terms of the "Johnson angle" $t$ used in computing the field of values via extreme eigenvalues of the hermitian matrices $(B+B^*)/2$ with $B = e^{it} A$. Let us convert $c$ to a new parameterization in terms of a different variable that we hope will be better behaved, the angle $a$ of the curve from the origin. We can do this by starting with a chebfun representation of $a(t)$.

a = 2*pi + unwrap(angle(c)); plot(a), grid on xlabel('Johnson angle t') ylabel('true angle a')

Now we want a new chebfun $d$ that represents $C$ as a function of $a$ instead of $t$. We do this by means of the inverse function $t(a)$,

t = inv(a); d = chebfun(@(s) c(t(s)),[0 2*pi],'trig');

As hoped, $d$ is simpler than before.

plotcoeffs(d) title('Fourier coefficients wrt true angle a')

The derivative of its absolute value is better behaved.

ad = abs(d); plot(diff(ad)), grid on xlabel('a') ylabel('abs(d(a))''') title('derivative of abs(d) wrt to true angle a')

### 2. Peter Maxwell's $5\times 5$ matrix

We now repeat the above for a very interesting $5\times 5$ matrix cooked up by Maxwell, whose field of values boundary has a section that is nearly straight:

A = [ 0.2560 + 0.0573i 0.0568 + 0.0800i 0.1597 + 0.2204i -0.1649 + 0.1315i -0.3639 + 0.0091i; 0.4733 + 0.2805i -0.3192 + 0.1267i 0.0810 + 0.0687i 0.5213 + 0.1574i -0.0596 + 0.2879i; 0.1447 + 0.3037i 0.2942 + 0.1844i -0.2918 + 0.0364i -0.2714 + 0.0265i -0.0849 + 0.2264i; -0.0650 + 0.1360i 0.0952 + 0.0813i -0.0503 + 0.0920i -0.1500 + 0.0814i 0.4742 + 0.1514i; 0.1938 + 0.0344i 0.0419 + 0.1868i -0.0453 + 0.0988i -0.2207 + 0.2483i -0.0772 + 0.1793i ]; c = fov(A); plot(c,'linewidth',2), axis equal, xlim([-2 2]), grid on hold on, plot(eig(A),'.k','markersize',8), hold off

The length is really enormous:

length(c) plotcoeffs(c), grid on

ans = 5704

Again we convert to trig form.

c = chebfun(@(t) c(t),[0 2*pi],'trig'); length(c) plotcoeffs(c), grid on

ans = 3781

The derivative of the absolute value is sharply localized near the special point, confirming that in this case at least, the parametrization with respect to $t$ is problematic.

ac = abs(c); plot(diff(ac)), grid on xlabel('a') ylabel('abs(d(a))''') title('derivative of abs(d) wrt to true angle a')

The relationship $a(t)$ shows the difficulty:

a = 2*pi + unwrap(angle(c)); a = chebfun(@(s) a(s),[0 2*pi]); plot(a), grid on xlabel('Johnson angle t') ylabel('true angle a')

As hoped, the reparametrized curve $d$ is much simpler than $c$, even if still not as simple as we might have hoped.

t = inv(a); d = chebfun(@(s) c(t(s)),t.ends([1 end]),'trig'); plotcoeffs(d)

### 3. Eigenvalue avoided crossings

Maxwell has pointed out (private communication) that these effects are related in an interesting way to eigenvalue avoided crossings. For all values of the Johnson angle $t$, the eigenvalues of the matrix $(B+B^*)/2$ mentioned above are real and distinct, but for some values of $t$ they come very close together, and this has a good deal to do with the complexity of $c$ and $d$. See the Chebfun linear algebra examples "Eigenvalue level repulsion" and especially "Analyticity at eigenvalue near-crossings".

### Reference

[1] S. Loisel and P. Maxwell, "Path-following method to determine the field of values of a matrix with high accuracy," *SIAM J. Matrix Anal. Applics.* 39 (2018), 1726--1749.