math and physics play

Triangle area problem: REVISITED.

March 31, 2024 math and physics play , , , , ,

[Click here for a PDF version of this post]

On LinkedIn, James asked for ideas about how to solve What is the total area of ABC? You should be able to solve this! using geometric algebra.

I found a couple ways, and this last variation is pretty cool.

fig. 1. Triangle with given areas.

To start with I’ve re-sketched the triangle with the areas slightly more to scale in fig. 1, where areas \( A_1 = 40, A_2 = 30, A_3 = 35, A_4 = 84 \) are given. The aim is to find the total area \( \sum A_i \).

If we had the vertex and center locations as vectors, we could easily compute the total area, but we don’t. We also don’t know the locations of the edge intersections, but can calculate those, as they satisfy
\begin{equation}\label{eqn:triangle_area_problem:20}
\begin{aligned}
\BD &= s_1 \BA = \BB + t_1 \lr{ \BC – \BB } \\
\BE &= s_2 \BC = \BA + t_2 \lr{ \BB – \BA } \\
\BF &= s_3 \BB = \BA + t_3 \lr{ \BC – \BA }.
\end{aligned}
\end{equation}
It turns out that the problem is over specified, and we will only need \( \BD, \BE \). To find those, we may eliminate the \( t_i \)’s by wedging appropriately (or equivalently, using Cramer’s rule), to find
\begin{equation}\label{eqn:triangle_area_problem:40}
\begin{aligned}
s_1 \BA \wedge \lr{ \BC – \BB } &= \BB \wedge \lr{ \BC – \BB } \\
s_2 \BC \wedge \lr{ \BB – \BA } &= \BA \wedge \lr{ \BB – \BA },
\end{aligned}
\end{equation}
or
\begin{equation}\label{eqn:triangle_area_problem:60}
\begin{aligned}
s_1 &= \frac{\BB \wedge \BC }{\BA \wedge \lr{ \BC – \BB }} \\
s_2 &= \frac{\BA \wedge \BB }{\BC \wedge \lr{ \BB – \BA }}.
\end{aligned}
\end{equation}
Now let’s introduce some scalar area variables, each pseudoscalar multiples of bivector area elements, with \( i = \Be_{1} \Be_2 \)
\begin{equation}\label{eqn:triangle_area_problem:81}
\begin{aligned}
X &= \lr{ \BA \wedge \BB } i^{-1} = \begin{vmatrix} \BA & \BB \end{vmatrix} \\
Y &= \lr{ \BC \wedge \BB } i^{-1} = \begin{vmatrix} \BC & \BB \end{vmatrix} \\
Z &= \lr{ \BA \wedge \BC } i^{-1} = \begin{vmatrix} \BA & \BC \end{vmatrix},
\end{aligned}
\end{equation}
Note that the orientation of all of these has been picked to have a positive orientation matching the figure, and that the
triangle area that we seek for this problem is \( 1/2 \Abs{ \BA \wedge \BB } = X/2 \).

The intersection parameters, after cancelling pseudoscalar factors, are
\begin{equation}\label{eqn:triangle_area_problem:100}
\begin{aligned}
s_1 &= \frac{\BB \wedge \BC }{\BA \wedge \BC – \BA \wedge \BB } = \frac{-Y}{Z – X} \\
s_2 &= \frac{\BA \wedge \BB }{\BC \wedge \BB – \BC \wedge \BA } = \frac{X}{Y + Z},
\end{aligned}
\end{equation}
so the intersection points are
\begin{equation}\label{eqn:triangle_area_problem:120}
\begin{aligned}
\BD &= \BA \frac{Y}{X – Z} \\
\BE &= \BC \frac{X}{Y + Z}.
\end{aligned}
\end{equation}
Observe that both scalar factors are positive (i.e.: \( X > Z \).)

We may now express all the known areas in terms of our area variables
\begin{equation}\label{eqn:triangle_area_problem:140}
\begin{aligned}
A_1 &= \inv{2} \lr{ \BD \wedge \BC } i^{-1} \\
A_1 + A_2 &= \inv{2} \lr{ \BA \wedge \BC } i^{-1} \\
A_1 + A_2 + A_3 &= \inv{2} \lr{ \BA \wedge \BE } i^{-1} \\
A_2 &= \inv{2} \lr{ \lr{\BA – \BD} \wedge \lr{ \BC – \BD } } i^{-1}\\
A_3 &= \inv{2} \lr{ \lr{\BA – \BC} \wedge \lr{ \BE – \BC } } i^{-1}\\
A_5 &= \inv{2} \lr{ \lr{\BB – \BC} \wedge \lr{ \BF – \BC } } i^{-1}.
\end{aligned}
\end{equation}

As mentioned, the problem is over specified, and we can get away with just the first three of these relations to solve for total area. Eliminating \( \BD, \BE \) from those, gives us
\begin{equation}\label{eqn:triangle_area_problem:180}
A_1 = \inv{2} \frac{Y}{X – Z} \lr{ \BA \wedge \BC } i^{-1} = \frac{Z}{2} \lr{ \frac{Y}{X – Z} },
\end{equation}
\begin{equation}\label{eqn:triangle_area_problem:460}
A_1 + A_2 = \inv{2} \lr{ \BA \wedge \BC } i^{-1} = \frac{Z}{2},
\end{equation}
and
\begin{equation}\label{eqn:triangle_area_problem:400}
\begin{aligned}
A_1 + A_2 + A_3 &= \inv{2} \lr{ \BA \wedge \BE } i^{-1} \\
&= \inv{2} \lr{ \BA \wedge \BC } \frac{X}{Y + Z} \\
&= \frac{Z}{2} \frac{X}{Y + Z}.
\end{aligned}
\end{equation}

Let’s eliminate \( Z \) to start with, leaving
\begin{equation}\label{eqn:triangle_area_problem:420}
\begin{aligned}
A_1 \lr{ X – 2 A_1 – 2 A_2 } &= Y \lr{ A_1 + A_2 } \\
\lr{ A_1 + A_2 + A_3 } \lr{ Y + 2 A_1 + 2 A_2 } &= \lr{ A_1 + A_2 } X.
\end{aligned}
\end{equation}
Solving for \( Y \) yields
\begin{equation}\label{eqn:triangle_area_problem:380}
Y = – 2 A_1 – 2 A_2 + \frac{ \lr{A_1 + A_2} X }{ A_1 + A_2 + A_3 } = \lr{ A_1 + A_2 } \lr{ -2 + \frac{X}{A_1 + A_2 + A_3 } },
\end{equation}
and back substution leaves us with a linear equation in \( X \)
\begin{equation}\label{eqn:triangle_area_problem:480}
\lr{ A_1 + A_2}^2 \lr{ -2 + \frac{X}{A_1 + A_2 + A_3 } } = A_1 \lr{ X – 2 A_1 – 2 A_2 }.
\end{equation}

This is easily solved to find
\begin{equation}\label{eqn:triangle_area_problem:500}
\frac{X}{2} = \frac{ \lr{ A_1 + A_2} A_2 \lr{ A_1 + A_2 + A_3 } }{A_2 \lr{ A_1 + A_2} – A_1 A_3 }.
\end{equation}
Plugging in the numeric values for the problem solves it, giving a total triangular area of \( \inv{2} \lr{\BA \wedge \BB } i^{-1} = X/2 = 315 \).

Now, I’ll have to watch the video and see how he solved it.

Triangle area problem

March 30, 2024 math and physics play , , , , , ,

[Click here for a PDF version of this post]

On LinkedIn, James asked for ideas about how to solve What is the total area of ABC? You should be able to solve this! using geometric algebra.

I found one way, but suspect it’s not the easiest way to solve the problem.

To start with I’ve re-sketched the triangle with the areas slightly more to scale in fig. 1, where areas \( A_1, A_2, A_3, A_5\) are given. The aim is to find the total area \( \sum A_i \).

fig. 1. Triangle with given areas.

 

If we had the vertex and center locations as vectors, we could easily compute the total area, but we don’t. We also don’t know the locations of the edge intersections, but can calculate those, as they satisfy
\begin{equation}\label{eqn:triangle_area_problem:20}
\begin{aligned}
\BD &= s_1 \BA = \BB + t_1 \lr{ \BC – \BB } \\
\BE &= s_2 \BC = \BA + t_2 \lr{ \BB – \BA } \\
\BF &= s_3 \BB = \BA + t_3 \lr{ \BC – \BA }.
\end{aligned}
\end{equation}
Eliminating the \( t_i \) constants by wedging appropriately (or equivalently, using Cramer’s rule), we find
\begin{equation}\label{eqn:triangle_area_problem:40}
\begin{aligned}
s_1 \BA \wedge \lr{ \BC – \BB } &= \BB \wedge \lr{ \BC – \BB } \\
s_2 \BC \wedge \lr{ \BB – \BA } &= \BA \wedge \lr{ \BB – \BA } \\
s_3 \BB \wedge \lr{ \BC – \BA } &= \BA \wedge \lr{ \BC – \BA },
\end{aligned}
\end{equation}
or
\begin{equation}\label{eqn:triangle_area_problem:60}
\begin{aligned}
s_1 &= \frac{\BB \wedge \BC }{\BA \wedge \lr{ \BC – \BB }} \\
s_2 &= \frac{\BA \wedge \BB }{\BC \wedge \lr{ \BB – \BA }} \\
s_3 &= \frac{\BA \wedge \BC }{\BB \wedge \lr{ \BC – \BA }}.
\end{aligned}
\end{equation}
Introducing bivector (signed-area) unknowns
\begin{equation}\label{eqn:triangle_area_problem:80}
\begin{aligned}
\alpha &= \BA \wedge \BB = \begin{vmatrix} \BA & \BB \end{vmatrix} \Be_{12} \\
\beta &= \BB \wedge \BC = \begin{vmatrix} \BB & \BC \end{vmatrix} \Be_{12} \\
\gamma &= \BC \wedge \BA = \begin{vmatrix} \BC & \BA \end{vmatrix} \Be_{12}.
\end{aligned}
\end{equation}
the intersection parameters are
\begin{equation}\label{eqn:triangle_area_problem:100}
\begin{aligned}
s_1 &= \frac{\BB \wedge \BC }{\BA \wedge \BC – \BA \wedge \BB } = \frac{\beta}{-\gamma – \alpha} \\
s_2 &= \frac{\BA \wedge \BB }{\BC \wedge \BB – \BC \wedge \BA } = \frac{\alpha}{-\beta – \gamma} \\
s_3 &= \frac{\BA \wedge \BC }{\BB \wedge \BC – \BB \wedge \BA } = \frac{-\gamma}{\beta + \alpha},
\end{aligned}
\end{equation}
so the intersection points are
\begin{equation}\label{eqn:triangle_area_problem:120}
\begin{aligned}
\BD &= -\BA \frac{\beta}{\gamma + \alpha} \\
\BE &= -\BC \frac{\alpha}{\beta + \gamma} \\
\BF &= -\BB \frac{\gamma}{\beta + \alpha}.
\end{aligned}
\end{equation}

We may now express the known areas in terms of these unknown vectors
\begin{equation}\label{eqn:triangle_area_problem:140}
\begin{aligned}
A_1 &= \inv{2} \Abs{ \BD \wedge \BC } \\
A_2 &= \inv{2} \Abs{ \lr{\BC – \BA} \wedge \lr{ \BD – \BA } } \\
A_3 &= \inv{2} \Abs{ \lr{\BA – \BC} \wedge \lr{ \BE – \BC } } \\
A_5 &= \inv{2} \Abs{ \lr{\BB – \BC} \wedge \lr{ \BF – \BC } },
\end{aligned}
\end{equation}
but
\begin{equation}\label{eqn:triangle_area_problem:160}
\begin{aligned}
\BD – \BA &= -\BA \lr{ 1 + \frac{\beta}{\gamma + \alpha} } \\
\BE – \BC &= -\BC \lr{ 1 + \frac{\alpha}{\beta + \gamma} } \\
\BF – \BC &= -\BB \frac{\gamma}{\beta + \alpha} – \BC,
\end{aligned}
\end{equation}
so
\begin{equation}\label{eqn:triangle_area_problem:180}
\begin{aligned}
A_1 &= \inv{2} \Abs{ \BA \wedge \BC \frac{\beta}{\gamma + \alpha} } = \inv{2} \Abs{ \gamma} \Abs{ \frac{\beta}{\gamma + \alpha} } \\
A_2 &= \inv{2} \Abs{ \lr{\BC – \BA} \wedge \BA } \Abs{ 1 + \frac{\beta}{\gamma + \alpha} } = \inv{2} \Abs{\gamma} \Abs{ 1 + \frac{\beta}{\gamma + \alpha} } \\
A_3 &= \inv{2} \Abs{ \lr{\BA – \BC} \wedge \BC } \Abs{ 1 + \frac{\alpha}{\beta + \gamma} } = \inv{2} \Abs{\gamma} \Abs{ 1 + \frac{\alpha}{\beta + \gamma} },
\end{aligned}
\end{equation}
and
\begin{equation}\label{eqn:triangle_area_problem:200}
\begin{aligned}
A_5
&= \inv{2} \Abs{ \lr{\BB – \BC} \wedge \lr{ \BB \frac{\gamma}{\beta + \alpha} + \BC } } \\
&= \inv{2} \Abs{ \BB \wedge \BC – \BC \wedge \BB \frac{\gamma}{\beta + \alpha} } \\
&= \inv{2} \Abs{ \beta } \Abs{ 1 + \frac{\gamma}{\beta + \alpha} }.
\end{aligned}
\end{equation}

This gives us four equations in two (bivector) unknowns
\begin{equation}\label{eqn:triangle_area_problem:220}
\begin{aligned}
4 A_1^2 \lr{ \gamma + \alpha }^2 &= -\gamma^2 \beta^2 \\
4 A_2^2 \lr{ \gamma + \alpha }^2 &= -\gamma^2 \lr{ \alpha + \beta + \gamma }^2 \\
4 A_3^2 \lr{ \gamma + \beta }^2 &= -\gamma^2 \lr{ \alpha + \beta + \gamma }^2 \\
4 A_4^2 \lr{ \alpha + \beta }^2 &= -\beta^2 \lr{ \alpha + \beta + \gamma }^2.
\end{aligned}
\end{equation}
Let’s recast this in terms of area determinants, to eliminate the bivector variables in these equations. To do so, write
\begin{equation}\label{eqn:triangle_area_problem:240}
\begin{aligned}
X &= \begin{vmatrix} \BA & \BB \end{vmatrix} \\
Y &= \begin{vmatrix} \BB & \BC \end{vmatrix} \\
Z &= \begin{vmatrix} \BC & \BA \end{vmatrix}.
\end{aligned}
\end{equation}
so
\begin{equation}\label{eqn:triangle_area_problem:300}
\begin{aligned}
4 A_1^2 \lr{ Z + X }^2 &= Z^2 Y^2 \\
4 A_2^2 \lr{ Z + X }^2 &= Z^2 \lr{ X + Y + Z }^2 \\
4 A_3^2 \lr{ Z + Y }^2 &= Z^2 \lr{ X + Y + Z }^2 \\
4 A_4^2 \lr{ X + Y }^2 &= Y^2 \lr{ X + Y + Z }^2.
\end{aligned}
\end{equation}
The goal is now to solve this system for \( X \). That solution (courtesy of Mathematica), for the numeric values in the original problem \( A_1 = 40, A_2 = 30, A_3 = 35, A_4 = 84 \), is:

\begin{equation}\label{eqn:triangle_area_problem:280}
\begin{aligned}
X &= \pm 630 \\
Y &= \mp 280 \\
Z &= \mp 140,
\end{aligned}
\end{equation}
so the total area is \( 315 \).

Now, I’ll have to watch the video and see how he solved it. I’d guess in a considerably simpler way.

Bivector transformation, and reciprocal frame for column vectors of a transformation

January 21, 2024 math and physics play , , , ,

[Click here for a PDF version of this and previous two posts]

The author of a book draft I am reading pointed out if a vector transforms as
\begin{equation}\label{eqn:adjoint:760}
\Bv \rightarrow M \Bv,
\end{equation}
then cross products must transform as
\begin{equation}\label{eqn:adjoint:780}
\Ba \cross \Bb \rightarrow \lr{ \textrm{adj}\, M }^\T \lr{ \Ba \cross \Bb }.
\end{equation}
Bivectors clearly must transform in the same fashion. We also noticed that the adjoint is related to the reciprocal frame vectors of the columns of \( M \), but didn’t examine the reciprocal frame formulation of the adjoint in any detail.

Before we do that, let’s consider a slightly simpler case, the transformation of a pseudoscalar. That is
\begin{equation}\label{eqn:adjoint:800}
\begin{aligned}
M(\Ba) \wedge M(\Bb) \wedge M(\Bc)
&\rightarrow
\sum_{ijk}
\lr{ \Bm_i a_i } \wedge
\lr{ \Bm_j a_j } \wedge
\lr{ \Bm_k a_k } \\
&=
\sum_{ijk}
\lr{ \Bm_i \wedge \Bm_j \wedge \Bm_k } a_i b_j c_k \\
&=
\sum_{ijk}
\lr{ \Bm_1 \wedge \Bm_2 \wedge \Bm_3 } \epsilon_{ijk} a_i b_j c_k \\
&=
\Abs{M}
\sum_{ijk} \epsilon_{ijk} a_i b_j c_k \\
&=
\Abs{M} \lr{ \Ba \wedge \Bb \wedge \Bc }.
\end{aligned}
\end{equation}
This is a well known geometric algebra result (called an outermorphism transformation.)

It’s somewhat amusing that an outermorphism transformation with two wedged vectors is a bit more complicated to express than the same for three. Let’s see if we can find a coordinate free form for such a transformation.
\begin{equation}\label{eqn:adjoint:820}
\begin{aligned}
M(\Ba) \wedge M(\Bb)
&=
\sum_{ij} \lr{ \Bm_i a_i } \wedge \lr{ \Bm_j b_j } \\
&=
\sum_{ij} \lr{ \Bm_i \wedge \Bm_j } a_i b_j \\
&=
\sum_{i < j} \lr{ \Bm_i \wedge \Bm_j }
\begin{vmatrix}
a_i & a_j \\
b_i & b_j
\end{vmatrix} \\
&=
\sum_{i < j} \lr{ \Bm_i \wedge \Bm_j } \lr{ \lr{ \Ba \wedge \Bb } \cdot \lr{ \Be_j \wedge \Be_i } }.
\end{aligned}
\end{equation}

Recall that the reciprocal frame with respect to the basis \( \setlr{ \Bm_1, \Bm_2, \Bm_3 } \), assuming this is a non-degenerate basis, has elements of the form
\begin{equation}\label{eqn:adjoint:840}
\begin{aligned}
\Bm^1 &= \lr{ \Bm_2 \wedge \Bm_3 } \inv{ \Bm_1 \wedge \Bm_2 \wedge \Bm_3 } \\
\Bm^2 &= \lr{ \Bm_3 \wedge \Bm_1 } \inv{ \Bm_1 \wedge \Bm_2 \wedge \Bm_3 } \\
\Bm^3 &= \lr{ \Bm_1 \wedge \Bm_2 } \inv{ \Bm_1 \wedge \Bm_2 \wedge \Bm_3 }.
\end{aligned}
\end{equation}
This can be flipped around as
\begin{equation}\label{eqn:adjoint:860}
\begin{aligned}
\Bm_2 \wedge \Bm_3 &= \Bm^1 \Abs{M} I \\
\Bm_3 \wedge \Bm_1 &= \Bm^2 \Abs{M} I \\
\Bm_1 \wedge \Bm_2 &= \Bm^3 \Abs{M} I \\
\end{aligned}
\end{equation}
\begin{equation}\label{eqn:adjoint:880}
\begin{aligned}
M&(\Ba) \wedge M(\Bb) \\
&=
\lr{ \Bm_1 \wedge \Bm_2 } \lr{ \lr{ \Ba \wedge \Bb } \cdot \lr{ \Be_2 \wedge \Be_1 } }
+
\lr{ \Bm_2 \wedge \Bm_3 } \lr{ \lr{ \Ba \wedge \Bb } \cdot \lr{ \Be_3 \wedge \Be_2 } }
+
\lr{ \Bm_3 \wedge \Bm_1 } \lr{ \lr{ \Ba \wedge \Bb } \cdot \lr{ \Be_1 \wedge \Be_3 } } \\
&=
I \Abs{M} \lr{
\Bm^3 \lr{ \lr{ \Ba \wedge \Bb } \cdot \lr{ \Be_2 \wedge \Be_1 } }
+
\Bm^1 \lr{ \lr{ \Ba \wedge \Bb } \cdot \lr{ \Be_3 \wedge \Be_2 } }
+
\Bm^2 \lr{ \lr{ \Ba \wedge \Bb } \cdot \lr{ \Be_1 \wedge \Be_3 } }
}
\end{aligned}
\end{equation}

Let’s see if we can simplify one of these double index quantities
\begin{equation}\label{eqn:adjoint:900}
\begin{aligned}
I \lr{ \lr{ \Ba \wedge \Bb } \cdot \lr{ \Be_2 \wedge \Be_1 } }
&=
\gpgradethree{ I \lr{ \lr{ \Ba \wedge \Bb } \cdot \lr{ \Be_2 \wedge \Be_1 } } } \\
&=
\gpgradethree{ I \lr{ \Ba \wedge \Bb } \lr{ \Be_2 \wedge \Be_1 } } \\
&=
\gpgradethree{ \lr{ \Ba \wedge \Bb } \Be_{12321} } \\
&=
\gpgradethree{ \lr{ \Ba \wedge \Bb } \Be_{3} } \\
&=
\Ba \wedge \Bb \wedge \Be_3.
\end{aligned}
\end{equation}
We have
\begin{equation}\label{eqn:adjoint:920}
M(\Ba) \wedge M(\Bb) = \Abs{M} \lr{
\lr{ \Ba \wedge \Bb \wedge \Be_1 } \Bm^1
+
\lr{ \Ba \wedge \Bb \wedge \Be_2 } \Bm^2
+
\lr{ \Ba \wedge \Bb \wedge \Be_3 } \Bm^3
}.
\end{equation}

Using summation convention, we can now express the transformation of a bivector \( B \) as just
\begin{equation}\label{eqn:adjoint:940}
B \rightarrow \Abs{M} \lr{ B \wedge \Be_i } \Bm^i.
\end{equation}
If we are interested in the transformation of a pseudovector \( \Bv \) defined implicitly as the dual of a bivector \( B = I \Bv \), where
\begin{equation}\label{eqn:adjoint:960}
B \wedge \Be_i = \gpgradethree{ I \Bv \Be_i } = I \lr{ \Bv \cdot \Be_i }.
\end{equation}
This leaves us with a transformation rule for cross products equivalent to the adjoint relation \ref{eqn:adjoint:780}
\begin{equation}\label{eqn:adjoint:980}
\lr{ \Ba \cross \Bb } \rightarrow \lr{ \Ba \cross \Bb } \cdot \Be_i \Abs{M} \Bm^i.
\end{equation}
As intuited, the determinant weighted reciprocal frame vectors for the columns of the transformation \( M \), are the components of the adjoint. That is
\begin{equation}\label{eqn:adjoint:1000}
\lr{ \textrm{adj}\, M }^\T = \Abs{M}
\begin{bmatrix}
\Bm^1 & \Bm^2 & \Bm^3
\end{bmatrix}.
\end{equation}

Simplifying the previous adjoint matrix results.

January 17, 2024 math and physics play , , , , , , , , ,

[Click here for a PDF version of this (and the previous) post]

We previously found determinant expressions for the matrix elements of the adjoint for 2D and 3D matrices \( M \). However, we can extract additional structure from each of those results.

2D case.

Given a matrix expressed in block matrix form in terms of it’s columns
\begin{equation}\label{eqn:adjoint:500}
M =
\begin{bmatrix}
\Bm_1 & \Bm_2
\end{bmatrix},
\end{equation}
we found that the adjoint \( A \) satisfying \( M A = \Abs{M} I \) had the structure
\begin{equation}\label{eqn:adjoint:520}
A =
\begin{bmatrix}
\begin{vmatrix} \Be_1 & \Bm_2 \end{vmatrix} & \begin{vmatrix} \Be_2 & \Bm_2 \end{vmatrix} \\
& \\
\begin{vmatrix} \Bm_1 & \Be_1 \end{vmatrix} & \begin{vmatrix} \Bm_1 & \Be_2 \end{vmatrix}
\end{bmatrix}.
\end{equation}
We initially had wedge product expressions for each of these matrix elements, and can discover our structure by putting back those wedge products. Modulo sign, each of these matrix elemens has the form
\begin{equation}\label{eqn:adjoint:540}
\begin{aligned}
\begin{vmatrix} \Be_i & \Bm_j \end{vmatrix}
&=
\lr{ \Be_i \wedge \Bm_j } i^{-1} \\
&=
\gpgradezero{
\lr{ \Be_i \wedge \Bm_j } i^{-1}
} \\
&=
\gpgradezero{
\lr{ \Be_i \Bm_j – \Be_i \cdot \Bm_j } i^{-1}
} \\
&=
\gpgradezero{
\Be_i \Bm_j i^{-1}
} \\
&=
\Be_i \cdot \lr{ \Bm_j i^{-1} },
\end{aligned}
\end{equation}
where \( i = \Be_{12} \). The adjoint matrix is
\begin{equation}\label{eqn:adjoint:560}
A =
\begin{bmatrix}
-\lr{ \Bm_2 i } \cdot \Be_1 & -\lr{ \Bm_2 i } \cdot \Be_2 \\
\lr{ \Bm_1 i } \cdot \Be_1 & \lr{ \Bm_1 i } \cdot \Be_2 \\
\end{bmatrix}.
\end{equation}
If we use a column vector representation of the vectors \( \Bm_j i^{-1} \), we can write the adjoint in a compact hybrid geometric-algebra matrix form
\begin{equation}\label{eqn:adjoint:640}
A =
\begin{bmatrix}
-\lr{ \Bm_2 i }^\T \\
\lr{ \Bm_1 i }^\T
\end{bmatrix}.
\end{equation}

Check:

Let’s see if this works, by multiplying with \( M \)
\begin{equation}\label{eqn:adjoint:580}
\begin{aligned}
A M &=
\begin{bmatrix}
-\lr{ \Bm_2 i }^\T \\
\lr{ \Bm_1 i }^\T
\end{bmatrix}
\begin{bmatrix}
\Bm_1 & \Bm_2
\end{bmatrix} \\
&=
\begin{bmatrix}
-\lr{ \Bm_2 i }^\T \Bm_1 & -\lr{ \Bm_2 i }^\T \Bm_2 \\
\lr{ \Bm_1 i }^\T \Bm_1 & \lr{ \Bm_1 i }^\T \Bm_2
\end{bmatrix}.
\end{aligned}
\end{equation}
Those dot products have the form
\begin{equation}\label{eqn:adjoint:600}
\begin{aligned}
\lr{ \Bm_j i }^\T \Bm_i
&=
\lr{ \Bm_j i } \cdot \Bm_i \\
&=
\gpgradezero{ \lr{ \Bm_j i } \Bm_i } \\
&=
\gpgradezero{ -i \Bm_j \Bm_i } \\
&=
-i \lr{ \Bm_j \wedge \Bm_i },
\end{aligned}
\end{equation}
so
\begin{equation}\label{eqn:adjoint:620}
\begin{aligned}
A M &=
\begin{bmatrix}
i \lr{ \Bm_2 \wedge \Bm_1 } & 0 \\
0 & -i \lr { \Bm_1 \wedge \Bm_2 }
\end{bmatrix} \\
&=
\Abs{M} I.
\end{aligned}
\end{equation}
We find the determinant weighted identity that we expected. Our methods are a bit schizophrenic, switching fluidly between matrix and geometric algebra representations, but provided we are careful enough, this isn’t problematic.

3D case.

Now, let’s look at the 3D case, where we assume a column vector representation of the matrix of interest
\begin{equation}\label{eqn:adjoint:660}
M =
\begin{bmatrix}
\Bm_1 & \Bm_2 & \Bm_3
\end{bmatrix},
\end{equation}
and try to simplify the expression we found for the adjoint
\begin{equation}\label{eqn:adjoint:680}
A =
\begin{bmatrix}
\begin{vmatrix} \Be_1 & \Bm_2 & \Bm_3 \end{vmatrix} & \begin{vmatrix} \Be_2 & \Bm_2 & \Bm_3 \end{vmatrix} & \begin{vmatrix} \Be_3 & \Bm_2 & \Bm_3 \end{vmatrix} \\
& & \\
\begin{vmatrix} \Be_1 & \Bm_3 & \Bm_1 \end{vmatrix} & \begin{vmatrix} \Be_2 & \Bm_3 & \Bm_1 \end{vmatrix} & \begin{vmatrix} \Be_3 & \Bm_3 & \Bm_1 \end{vmatrix} \\
& & \\
\begin{vmatrix} \Be_1 & \Bm_1 & \Bm_2 \end{vmatrix} & \begin{vmatrix} \Be_2 & \Bm_1 & \Bm_2 \end{vmatrix} & \begin{vmatrix} \Be_3 & \Bm_1 & \Bm_2 \end{vmatrix}
\end{bmatrix}.
\end{equation}
As with the 2D case, let’s re-express these determinants in wedge product form. We’ll write \( I = \Be_{123} \), and find
\begin{equation}\label{eqn:adjoint:700}
\begin{aligned}
\begin{vmatrix} \Be_i & \Bm_j & \Bm_k \end{vmatrix}
&=
\lr{ \Be_i \wedge \Bm_j \wedge \Bm_k } I^{-1} \\
&=
\gpgradezero{ \lr{ \Be_i \wedge \Bm_j \wedge \Bm_k } I^{-1} } \\
&=
\gpgradezero{ \lr{
\Be_i \lr{ \Bm_j \wedge \Bm_k }
\Be_i \cdot \lr{ \Bm_j \wedge \Bm_k }
} I^{-1} } \\
&=
\gpgradezero{
\Be_i \lr{ \Bm_j \wedge \Bm_k }
I^{-1} } \\
&=
\gpgradezero{
\Be_i \lr{ \Bm_j \cross \Bm_k } I
I^{-1} } \\
&=
\Be_i \cdot \lr{ \Bm_j \cross \Bm_k }.
\end{aligned}
\end{equation}
We see that we can put the adjoint in block matrix form
\begin{equation}\label{eqn:adjoint:720}
A =
\begin{bmatrix}
\lr{ \Bm_2 \cross \Bm_3 }^\T \\
\lr{ \Bm_3 \cross \Bm_1 }^\T \\
\lr{ \Bm_1 \cross \Bm_2 }^\T \\
\end{bmatrix}.
\end{equation}

Check:

\begin{equation}\label{eqn:adjoint:740}
\begin{aligned}
A M
&=
\begin{bmatrix}
\lr{ \Bm_2 \cross \Bm_3 }^\T \\
\lr{ \Bm_3 \cross \Bm_1 }^\T \\
\lr{ \Bm_1 \cross \Bm_2 }^\T \\
\end{bmatrix}
\begin{bmatrix}
\Bm_1 & \Bm_2 & \Bm_3
\end{bmatrix} \\
&=
\begin{bmatrix}
\lr{ \Bm_2 \cross \Bm_3 }^\T \Bm_1 & \lr{ \Bm_2 \cross \Bm_3 }^\T \Bm_2 & \lr{ \Bm_2 \cross \Bm_3 }^\T \Bm_3 \\
\lr{ \Bm_3 \cross \Bm_1 }^\T \Bm_1 & \lr{ \Bm_3 \cross \Bm_1 }^\T \Bm_2 & \lr{ \Bm_3 \cross \Bm_1 }^\T \Bm_3 \\
\lr{ \Bm_1 \cross \Bm_2 }^\T \Bm_1 & \lr{ \Bm_1 \cross \Bm_2 }^\T \Bm_2 & \lr{ \Bm_1 \cross \Bm_2 }^\T \Bm_3
\end{bmatrix} \\
&=
\Abs{M} I.
\end{aligned}
\end{equation}

Essentially, we found that the rows of the adjoint matrix are each parallel to the reciprocal frame vectors of the columns of \( M \). This makes sense, as the reciprocal frame encodes a generalized inverse of sorts.

Computing the adjoint matrix

January 16, 2024 math and physics play , , , , ,

[Click here for a PDF version of this post]

I started reviewing a book draft that mentions the adjoint in passing, but I’ve forgotten what I knew about the adjoint (not counting self-adjoint operators, which is different.) I do recall that adjoint matrices were covered in high school linear algebra (now 30+ years ago!), but never really used after that.

It appears that the basic property of the adjoint \( A \) of a matrix \( M \), when it exists, is
\begin{equation}\label{eqn:adjoint:20}
M A = \Abs{M} I,
\end{equation}
so it’s proportional to the inverse, where the numerical factor is the determinant of that matrix. Let’s try to compute this beastie for 1D, 2D, and 3D cases.

Simplest case: \(1 \times 1\) matrix.

For a one by one matrix, say
\begin{equation}\label{eqn:adjoint:40}
M =
\begin{bmatrix}
m_{11}
\end{bmatrix},
\end{equation}
the determinant is just \( \Abs{M} = m_11 \), so our adjoint is the identity matrix
\begin{equation}\label{eqn:adjoint:60}
A =
\begin{bmatrix}
1
\end{bmatrix}.
\end{equation}
Not too interesting. Let’s try the 2D case.

Less trivial case: \(2 \times 2\) matrix.

For the 2D case, let’s define our matrix as a pair of column vectors
\begin{equation}\label{eqn:adjoint:80}
M =
\begin{bmatrix}
\Bm_1 & \Bm_2
\end{bmatrix},
\end{equation}
and let’s write the adjoint out in full in coordinates as
\begin{equation}\label{eqn:adjoint:100}
A =
\begin{bmatrix}
a_{11} & a_{12} \\
a_{21} & a_{22}
\end{bmatrix}.
\end{equation}
We seek solutions to a pair of vector equations
\begin{equation}\label{eqn:adjoint:120}
\begin{aligned}
\Bm_1 a_{11} + \Bm_2 a_{21} &= \Abs{M} \Be_1 \\
\Bm_1 a_{12} + \Bm_2 a_{22} &= \Abs{M} \Be_2.
\end{aligned}
\end{equation}
We can immediately solve either of these, by taking wedge products, yielding
\begin{equation}\label{eqn:adjoint:140}
\begin{aligned}
\lr{ \Bm_1 \wedge \Bm_2 } a_{11} + \lr{ \Bm_2 \wedge \Bm_2 } a_{21} &= \Abs{M} \lr{ \Be_1 \wedge \Bm_2 } \\
\lr{ \Bm_1 \wedge \Bm_1 } a_{11} + \lr{ \Bm_1 \wedge \Bm_2 } a_{21} &= \Abs{M} \lr{ \Bm_1 \wedge \Be_1 } \\
\lr{ \Bm_1 \wedge \Bm_2 } a_{12} + \lr{ \Bm_2 \wedge \Bm_2 } a_{22} &= \Abs{M} \lr{ \Be_2 \wedge \Bm_2 } \\
\lr{ \Bm_1 \wedge \Bm_1 } a_{12} + \lr{ \Bm_1 \wedge \Bm_2 } a_{22} &= \Abs{M} \lr{ \Bm_1 \wedge \Be_2}.
\end{aligned}
\end{equation}
Any wedge with a repeated vector is zero.
Provided the determinant is non-zero, we can divide both sides by \( \Bm_1 \wedge \Bm_2 = \Abs{M} \Be_{12} \) to find a single determinant for each element in the adjoint
\begin{equation}\label{eqn:adjoint:160}
\begin{aligned}
a_{11} &= \begin{vmatrix} \Be_1 & \Bm_2 \end{vmatrix} \\
a_{21} &= \begin{vmatrix} \Bm_1 & \Be_1 \end{vmatrix} \\
a_{12} &= \begin{vmatrix} \Be_2 & \Bm_2 \end{vmatrix} \\
a_{22} &= \begin{vmatrix} \Bm_1 & \Be_2 \end{vmatrix}
\end{aligned}
\end{equation}
or
\begin{equation}\label{eqn:adjoint:400}
A =
\begin{bmatrix}
\begin{vmatrix} \Be_1 & \Bm_2 \end{vmatrix} & \begin{vmatrix} \Be_2 & \Bm_2 \end{vmatrix} \\
& \\
\begin{vmatrix} \Bm_1 & \Be_1 \end{vmatrix} & \begin{vmatrix} \Bm_1 & \Be_2 \end{vmatrix}
\end{bmatrix},
\end{equation}
or
\begin{equation}\label{eqn:adjoint:440}
A_{ij} =
\epsilon_{ir}
\begin{vmatrix}
\Be_j & \Bm_r
\end{vmatrix},
\end{equation}
where \( \epsilon_{ir} \) is the completely antisymmetric tensor, and the Einstein summation convention is in effect (summation implied over any repeated indexes.)

Check:

We should verify that expanding these determinants explicitly reproduces the usual representation of the 2D adjoint:
\begin{equation}\label{eqn:adjoint:420}
\begin{aligned}
\begin{vmatrix} \Be_1 & \Bm_2 \end{vmatrix} &= \begin{vmatrix} 1 & m_{12} \\ 0 & m_{22} \end{vmatrix} = m_{22} \\
\begin{vmatrix} \Bm_1 & \Be_1 \end{vmatrix} &= \begin{vmatrix} m_{11} & 1 \\ m_{21} & 0 \end{vmatrix} = -m_{21} \\
\begin{vmatrix} \Be_2 & \Bm_2 \end{vmatrix} &= \begin{vmatrix} 0 & m_{12} \\ 1 & m_{22} \end{vmatrix} = -m_{12} \\
\begin{vmatrix} \Bm_1 & \Be_2 \end{vmatrix} &= \begin{vmatrix} m_{11} & 0 \\ m_{21} & 1 \end{vmatrix} = m_{11},
\end{aligned}
\end{equation}
or
\begin{equation}\label{eqn:adjoint:180}
A =
\begin{bmatrix}
m_{22} & -m_{12} \\
-m_{21} & m_{11}
\end{bmatrix}.
\end{equation}

Multiplying everything out should give us determinant weighted identity
\begin{equation}\label{eqn:adjoint:200}
\begin{aligned}
M A
&=
\begin{bmatrix}
m_{11} & m_{12} \\
m_{21} & m_{22}
\end{bmatrix}
\begin{bmatrix}
m_{22} & -m_{12} \\
-m_{21} & m_{11}
\end{bmatrix} \\
&=
\lr{ m_{11} m_{22} – m_{12} m_{21} }
\begin{bmatrix}
1 & 0 \\
0 & 1
\end{bmatrix} \\
&= \Abs{M} I,
\end{aligned}
\end{equation}
as expected.

3D case: \(3 \times 3\) matrix.

For the 3D case, let’s also define our matrix as column vectors
\begin{equation}\label{eqn:adjoint:220}
M =
\begin{bmatrix}
\Bm_1 & \Bm_2 & \Bm_3
\end{bmatrix},
\end{equation}
and let’s write the adjoint out in full in coordinates as
\begin{equation}\label{eqn:adjoint:240}
A =
\begin{bmatrix}
a_{11} & a_{12} & a_{13} \\
a_{21} & a_{22} & a_{23} \\
a_{31} & a_{32} & a_{33}
\end{bmatrix}.
\end{equation}
This time, we seek solutions to three vector equations
\begin{equation}\label{eqn:adjoint:260}
\begin{aligned}
\Bm_1 a_{11} + \Bm_2 a_{21} + \Bm_3 a_{31} &= \Abs{M} \Be_1 \\
\Bm_1 a_{12} + \Bm_2 a_{22} + \Bm_3 a_{32} &= \Abs{M} \Be_2 \\
\Bm_1 a_{13} + \Bm_2 a_{23} + \Bm_3 a_{33} &= \Abs{M} \Be_3,
\end{aligned}
\end{equation}
and can immediately solve, once again, by taking wedge products, yielding
\begin{equation}\label{eqn:adjoint:280}
\begin{aligned}
\lr{ \Bm_1 \wedge \Bm_2 \wedge \Bm_3 }a_{11} + \lr{ \Bm_2 \wedge \Bm_2 \wedge \Bm_3 }a_{21} + \lr{ \Bm_3 \wedge \Bm_2 \wedge \Bm_3 }a_{31} &= \Abs{M} \Be_1 \wedge \Bm_2 \wedge \Bm_3 \\
\lr{ \Bm_1 \wedge \Bm_1 \wedge \Bm_3 }a_{11} + \lr{ \Bm_1 \wedge \Bm_2 \wedge \Bm_3 }a_{21} + \lr{ \Bm_1 \wedge \Bm_3 \wedge \Bm_3 }a_{31} &= \Abs{M} \Bm_1 \wedge \Be_1 \wedge \Bm_3 \\
\lr{ \Bm_1 \wedge \Bm_2 \wedge \Bm_1 }a_{11} + \lr{ \Bm_1 \wedge \Bm_2 \wedge \Bm_2 }a_{21} + \lr{ \Bm_1 \wedge \Bm_2 \wedge \Bm_3 }a_{31} &= \Abs{M} \Bm_1 \wedge \Bm_2 \wedge \Be_1 \\
\lr{ \Bm_1 \wedge \Bm_2 \wedge \Bm_3 }a_{12} + \lr{ \Bm_2 \wedge \Bm_2 \wedge \Bm_3 }a_{22} + \lr{ \Bm_3 \wedge \Bm_2 \wedge \Bm_3 }a_{32} &= \Abs{M} \Be_2 \wedge \Bm_2 \wedge \Bm_3 \\
\lr{ \Bm_1 \wedge \Bm_1 \wedge \Bm_3 }a_{12} + \lr{ \Bm_1 \wedge \Bm_2 \wedge \Bm_3 }a_{22} + \lr{ \Bm_1 \wedge \Bm_3 \wedge \Bm_3 }a_{32} &= \Abs{M} \Bm_1 \wedge \Be_2 \wedge \Bm_3 \\
\lr{ \Bm_1 \wedge \Bm_2 \wedge \Bm_1 }a_{12} + \lr{ \Bm_1 \wedge \Bm_2 \wedge \Bm_2 }a_{22} + \lr{ \Bm_1 \wedge \Bm_2 \wedge \Bm_3 }a_{32} &= \Abs{M} \Bm_1 \wedge \Bm_2 \wedge \Be_2 \\
\lr{ \Bm_1 \wedge \Bm_2 \wedge \Bm_3 }a_{13} + \lr{ \Bm_2 \wedge \Bm_2 \wedge \Bm_3 }a_{23} + \lr{ \Bm_3 \wedge \Bm_2 \wedge \Bm_3 }a_{33} &= \Abs{M} \Be_3 \wedge \Bm_2 \wedge \Bm_3 \\
\lr{ \Bm_1 \wedge \Bm_1 \wedge \Bm_3 }a_{13} + \lr{ \Bm_1 \wedge \Bm_2 \wedge \Bm_3 }a_{23} + \lr{ \Bm_1 \wedge \Bm_3 \wedge \Bm_3 }a_{33} &= \Abs{M} \Bm_1 \wedge \Be_3 \wedge \Bm_3 \\
\lr{ \Bm_1 \wedge \Bm_2 \wedge \Bm_1 }a_{13} + \lr{ \Bm_1 \wedge \Bm_2 \wedge \Bm_2 }a_{23} + \lr{ \Bm_1 \wedge \Bm_2 \wedge \Bm_3 }a_{33} &= \Abs{M} \Bm_1 \wedge \Bm_2 \wedge \Be_3,
\end{aligned}
\end{equation}
Any wedge with a repeated vector is zero.
Like before, provided the determinant is non-zero, we can divide both sides by \( \Bm_1 \wedge \Bm_2 \wedge \Bm_3 = \Abs{M} \Be_{123} \) to find a single determinant for each element in the adjoint
\begin{equation}\label{eqn:adjoint:360}
\begin{aligned}
A &=
\begin{bmatrix}
\begin{vmatrix} \Be_1 & \Bm_2 & \Bm_3 \end{vmatrix} & \begin{vmatrix} \Be_2 & \Bm_2 & \Bm_3 \end{vmatrix} & \begin{vmatrix} \Be_3 & \Bm_2 & \Bm_3 \end{vmatrix} \\
& & \\
\begin{vmatrix} \Bm_1 & \Be_1 & \Bm_3 \end{vmatrix} & \begin{vmatrix} \Bm_1 & \Be_2 & \Bm_3 \end{vmatrix} & \begin{vmatrix} \Bm_1 & \Be_3 & \Bm_3 \end{vmatrix} \\
& & \\
\begin{vmatrix} \Bm_1 & \Bm_2 & \Be_1 \end{vmatrix} & \begin{vmatrix} \Bm_1 & \Bm_2 & \Be_2 \end{vmatrix} & \begin{vmatrix} \Bm_1 & \Bm_2 & \Be_3 \end{vmatrix}
\end{bmatrix} \\
&=
\begin{bmatrix}
\begin{vmatrix} \Be_1 & \Bm_2 & \Bm_3 \end{vmatrix} & \begin{vmatrix} \Be_2 & \Bm_2 & \Bm_3 \end{vmatrix} & \begin{vmatrix} \Be_3 & \Bm_2 & \Bm_3 \end{vmatrix} \\
& & \\
\begin{vmatrix} \Be_1 & \Bm_3 & \Bm_1 \end{vmatrix} & \begin{vmatrix} \Be_2 & \Bm_3 & \Bm_1 \end{vmatrix} & \begin{vmatrix} \Be_3 & \Bm_3 & \Bm_1 \end{vmatrix} \\
& & \\
\begin{vmatrix} \Be_1 & \Bm_1 & \Bm_2 \end{vmatrix} & \begin{vmatrix} \Be_2 & \Bm_1 & \Bm_2 \end{vmatrix} & \begin{vmatrix} \Be_3 & \Bm_1 & \Bm_2 \end{vmatrix}
\end{bmatrix},
\end{aligned}
\end{equation}
or
\begin{equation}\label{eqn:adjoint:380}
A_{ij} = \frac{\epsilon_{irs}}{2!} \begin{vmatrix} \Be_j & \Bm_r & \Bm_s \end{vmatrix}.
\end{equation}
Observe that the inclusion of the \( \Be_j \) column vector in this determinant, means that we really need only compute a \( 2 \times 2 \) determinant for each adjoint matrix element. That is

\begin{equation}\label{eqn:adjoint:480}
A_{ij} = \frac{(-1)^j \epsilon_{irs}\epsilon_{jab}}{(2!)^2}
\begin{vmatrix}
m_{ar} & m_{as} \\
m_{br} & m_{bs}
\end{vmatrix}
.
\end{equation}
This looks a lot like the usual minor/cofactor recipe, but written out explicitly for each element, using the antisymmetric tensor to encode the index alternation. It’s worth noting that there may be an error or subtle difference from the usual in my formulation, since wikipedia defines the adjoint as the transpose of the cofactor matrix, see: [1].

General case: \(n \times n\) matrix.

It appears that if we wanted an induction hypotheses for the general \( n > 1 \) case, the \( ij \) element of the adjoint matrix is likely
\begin{equation}\label{eqn:adjoint:460}
\begin{aligned}
A_{ij} &= \frac{\epsilon_{i s_1 s_2 \cdots s_{n-1}}}{(n-1)!} \begin{vmatrix} \Be_j & \Bm_{s_1} & \Bm_{s_2} & \cdots & \Bm_{s_{n-1}} \end{vmatrix} \\
&= \frac{(-1)^j \epsilon_{i r_1 r_2 \cdots r_{n-1}} \epsilon_{j s_1 s_2 \cdots s_{n-1}} }{\lr{(n-1)!}^2}
\begin{vmatrix}
m_{r_1 s_1} & \cdots & m_{r_1 s_{n-1}} \\
\vdots & & \vdots \\
m_{r_{n-1} s_{1}} & \cdots & m_{r_{n-1} s_{n-1}}
\end{vmatrix}.
\end{aligned}
\end{equation}
I’m not going to try to prove this, inductively or otherwise.

References

[1] Wikipedia contributors. Minor (linear algebra) — Wikipedia, the free encyclopedia, 2023. URL https://en.wikipedia.org/w/index.php?title=Minor_(linear_algebra)&oldid=1182988311. [Online; accessed 16-January-2024].