[Series intro] An introduction to geometric algebra.

July 25, 2020 Geometric Algebra for Electrical Engineers , , , , , , , , , , , , , , , , ,

What’s in the pipe.

It’s been a while since I did any math or physics writing. This is the first post in a series where I plan to work my way systematically from an introduction of vectors, to the axioms of geometric algebra.  I plan to start with an introduction of vectors as directed “arrows”, building on that to discuss coordinates, tuples, and column matrix representations, and representation independent ideas. With those basics established, I’ll remind the reader about how generalized vector and dot product spaces are defined and give some examples. Finally, with the foundation of vectors and vector spaces in place, I’ll introduce the concept of a multivector space, and the geometric product, and start unpacking the implications of the axioms that follow naturally from this train of thought.

The applications that I plan to include in this series will be restricted to Euclidean spaces (i.e. where length is given by the Pythagorean law), primarily those of 2 and 3 dimensions.  However, it will be good to also lay the foundations for the non-Euclidean spaces that we encounter in relativistic electromagnetism (there is actually no other kind), and in computer graphics applications of geometric algebra, especially since we can do so nearly for free.  I plan to try to introduce the requisite ideas (i.e. the metric, which allows for a generalized dot product) by discussing Euclidean non-orthonormal bases.  Such bases have applications in condensed matter physics where there are useful for modelling crystal and lattice structure, and provide a hands conceptual bridge to a set of ideas that might otherwise seem abstract and without “real world” application.

Motivation.

Many introductions to geometric algebra start by first introducing the dot product, then bivectors and the wedge product, and eventually define the product of two vectors as the synthetic sum of the dot and wedge
\begin{equation}\label{eqn:multivector:20}
\Bx \By = \Bx \cdot \By + \Bx \wedge \By.
\end{equation}
It takes a fair amount of work to do this well. In the seminal work [4] a few pages are taken for each of the dot and wedge products, showing the similarities and building up ideas, before introducing the geometric product in this fashion. In [2] the authors take a phenomenal five chapters to build up the context required to introduce the geometric product.  I am not disparaging the authors for taking that long to build up the ideas, as their introduction of the subject is exceedingly clear and thorough, and they do a lot more than the minumum required to define the geometric product.

The strategy to introduce the geometric product as a sum of dot and wedge can result in considerable confusion, especially since the wedge product is often defined in terms of the geometric product
\begin{equation}\label{eqn:multivector:40}
\Bx \wedge \By =
\inv{2} \lr{
\Bx \By – \By \Bx
}.
\end{equation}
The whole subject can appear like a chicken and egg problem. I personally found the subject very confusing initially, and had considerable difficulty understanding which of the many identities of geometric algebra were the most fundamental. For this reason, I found the axiomatic approach of [1] very refreshing. The cavaet with that work is that is is exceptionally terse, as they jammed a reformulation of most of physics using geometric algebra into that single book, and it would have been thousands of pages had they tried to make it readable by mere mortals.

When I wrote my own book on geometric algebra, I had the intuition that the way to introduce the subject ought to be like the vector space in abstract linear algebra. The construct of a vector space is a curious and indirect way to define a vector. Vectors are not defined as entities, but simply as members of a vector space, a space that is required to have a set of properties. I thought that the same approach would probably work with multivectors, which could be defined as members of a multivector space, a mathematical construction with a set of properties.

I did try this approach, but was not fully satisfied with what I wrote. I think that dissatisfaction was because I tried to define the multivector first. To define the multivector, I first introduced a whole set of prerequisite ideas (bivector, trivector, blade, k-vector, vector product, …), but that was also problematic, since the vector multiplication idea required for those concepts wasn’t fully defined until the multivector space itself was defined.

My approach shows some mathematical cowardness. Had I taken the approach of the vector space fully to heart, the multivector could have been defined as a member of a multivector space, and all the other ideas follow from that. In this multi-part series, I’m going to play with this approach anew, and see how it works out.  If it does work, I’ll see if I can incorporate this approach into a new version of my book.

Review and background.

In this series, I’m going to assume a reader interested in geometric algebra, is probably also familiar with a wide variety of concepts, including but not limited to

  • vectors,
  • coordinates,
  • matrices,
  • basis,
  • change of basis,
  • dot product,
  • real and complex numbers,
  • rotations and translations,
  • vector spaces, and
  • linear transformations.

Despite those assumptions, as mentioned above, I’m going to attempt to build up the basics of vector representation and vector spaces in a systematic fashion, starting from a very elementary level.

My reasons for doing so are mainly to explore the logical sequencing of the ideas required.  I’ve always found well crafted pedagogical sequences rewarding, and will hopefully construct one here that is appreciated by anybody who chooses to follow along.

Next time.

As preparation for the next article in this series, the reader is asked to watch a short lesson from Vector, not so supervillain extraordinaire (Despicable Me).

References

[1] C. Doran and A.N. Lasenby. Geometric algebra for physicists. Cambridge University Press New York, Cambridge, UK, 1st edition, 2003.

[2] L. Dorst, D. Fontijne, and S. Mann. Geometric Algebra for Computer Science. Morgan Kaufmann, San Francisco, 2007.

[4] D. Hestenes. New Foundations for Classical Mechanics. Kluwer Academic Publishers, 1999.

New fan and internal cleaning of my Skull canyon NUC.

July 7, 2020 electronics , , , ,

My “nuc1” has been inoperable for months, with a dead fan.  The replacement was delayed by the panic-demic significantly, but finally arrived today.  Here’s the NUC all opened up, with my replacement fan ready to be installed:

 

I had some trouble taking it out, and it turns out that it’s taped down, as well as screwed, so it just took some brute force.  However, check out the dust on the vents:

 

I’m wondering if the original fan was actually okay, and this beastie just needed a cleaning.  There wasn’t much surface area that would allow any air flow (just that tiny little corner), and I suspect that even that tiny little corner that wasn’t blocked was obscured before I pried up the old fan.

After cleaning the vents, and installing the new fan (I’d purchased it, so thought I may as well install it, even if the blocked ducts were the problem.), I can now run a parallel build without a constant barrage of temperature events.  I do get some:

 

but things return to normal and the lm_sensor package (sensors program) reports core temperatures within range, despite the parallel make:

This beastie runs hot, but I already knew that.  I see the temperatures spike during make, and get near the high threshold, but not all the way there.

I’m monitoring with both dmesg -w and sensors:

#!/bin/bash

# https://unix.stackexchange.com/questions/328906/find-fan-speed-and-cpu-temp-in-linux
sudo yum install lm_sensors

while [ 0 ] ; do clear ; sensors ; sleep 5 ; done

 

Final touches for the kitchen renovation are now done.

June 22, 2020 Home renos ,

Today included a second coat of paint, cleanup, and little bits of detailing.  The kitchen is now fully operational, and looking pretty sharp:

I also got the 2nd coat in the front foyer done today — we were saving that painting for last since we didn’t want traffic in and out of the house messing it up, and it’s looking good too (especially having removed the “popcorn” stucco from the ceiling.)

For anybody who had seen the old kitchen, observe that there is no longer a microwave embedded in the staircase for the basement (replaced with a more sensible microwave/range-hood combination.)

The bulkheads that on the fridge side of the kitchen are also now gone, and we were able to put in awesome floor to ceiling cabinets.  This will provide the new owners with lots of space!

Antenna theory notes available on amazon

June 8, 2020 ece1229, math and physics play , ,

I’ve received my copy of my bound Antenna Theory notes today:

I wanted a copy for myself, but don’t expect that anybody else would buy this particular notes compilation.  The course was taught from slides, and it was almost impossible to take good notes, so these aren’t much good without also having the (excellent) course text (Balanis.)

The two possible reasons to buy or download this notes compilation would be:

  • to peruse the solved problems, or
  • for the geometric algebra and tensor formalism exploration that followed from wondering how to deal with the magnetic sources that are used in this subject.

These notes are available for free in PDF form.  Should somebody other than me want to purchase their own copy on paper, it can be found on amazon for $8.50 USD.  I’ve set the price as close to amazon’s absolute minimum required price of $8.28, while also rounding up to a tidy multiple of $0.25

I find it curious that amazon requires a higher price (and royalty) just by virtue of enabling expanded distribution.  Since I wanted to buy my copy locally in the Canadian amazon marketplace (amazon.ca) to utilize my local prime shipping subscription, I had to set the price higher for all markets, including the US market (amazon.com).  Because shipping from the US to Canada is so high, it is cheaper for me to buy an aftermarket version using prime shipping from Canada, than to utilize kindle-direct-publishing’s option of buying an author draft (which would only be cost effective if I lived in the USA.)

 

EDIT: I misunderstood what Expanded Distribution (ED) meant.  This is to sell to markets that are outside of the 6 or so official amazon marketplaces (USA, Canada, UK, Germany, …, Japan).  I’ll probably take this book off of ED and lower the price instead.

Crashing Mathematica with HatchShading + Opacity

May 31, 2020 math and physics play , , ,

I attempted to modify a plot for an electric field solution that I had in my old Antenna-Theory notes:
\begin{equation}\label{eqn:advancedantennaProblemSet3Problem1:n}
\BE
=
j \omega
\frac{\mu_0 I_{\textrm{eo}} l}{4 \pi r} e^{-j k r}
\lr{ 1 + \cos\theta }
\lr{
-\cos\phi \thetacap
+ \sin\phi \phicap
},
\end{equation}
and discovered that you can crash Mathematica (12.1.0.0) by combining PlotStyle with Opacity and HatchShading (new in 12.1).  Here’s a stripped down version of the plot code that demonstrates the crash:

ClearAll[ rcap]
rcap = {Sin[#1] Cos[#2], Sin[#1] Sin[#2], Cos[#1]} & ;

{
ParametricPlot3D[
rcap[t, p]
, {t, 0, π}
, {p, 0, 2 π}
, PlotStyle -> { HatchShading[0.5, Black]}
]
, ParametricPlot3D[
rcap[t, p]
, {t, 0, π}
, {p, 0, 2 π}
, PlotStyle -> {Directive[Opacity[0.5`]]}
], ParametricPlot3D[
rcap[t,p]
,{t,0,π}
,{p,0,2 π}
,PlotStyle\[Rule]{Directive[Opacity[0.5`]], HatchShading[0.5, \
Black]}
]
}

The first two plots, using one, but not both of, Opacity or HatchShading work fine:

In this reproducer, the little dimple at the base has been removed, which was the reason for the Opacity.

I’ve reported the bug to Wolfram, but wonder if they are going to come back to me saying, “Well, don’t do that!”

 

EDIT: Fixed in Mathematica 12.1.1