Motivated by page 14 in William F. Burke’s Applied Differential Geometry.
Affine Spaces
Affine Spaces
Consider two real 3‑vectors and and a map (a,b)=a+k(b-a). Note that (a,b)=a and (a,b)=b. Λ is sometimes called lirp, for linear interpolation.
a
b
Λ
k
Λ
0
Λ
1
In[]:=
ClearAll[Λ];Λ[k_,a_,b_]:=a+k(b-a);
Λ produces a vector with head touching the line from to somewhere uniformly between them when .
a
b
0<k<1
In the “backing vector space” of and , we can move the origin anywhere, changing the coordinate numbers representing and , but not affecting the geometric object (a,b). It is always the same point a fraction along the line between and . That is the intuitive meaning of affine in this setting: results do not depend on choice of origin. The following demonstration illustrates. Move the origin via the 2‑D slider. Click the “Random a and b” button to get a good visualization. Vary to see (a,b) move from to .
3
a
b
a
b
Λ
k
k
a
b
k
Λ
k
a
b
In[]:=
ClearAll[a,b,o,a0,b0,c0,k,oxy];With[{rg={-1.5,1.5}},DynamicModule[{a,b,o,a0,b0,c0},{a,b}=RandomReal[{-1,1},{2,3}];Manipulate[o=Append[oxy,0];a0={o,a};b0={o,b};c0=Λ[k,a0,b0];Graphics3D[{{Black,Thick,Arrow[a0]},{Gray,Thick,Arrow[b0]},{Darker[Red],Thick,Arrow[c0]},{Black,Thin,Line[{a,b}]}},PlotRange->{rg,rg,rg}],Control[Button[" RANDOM a and b! ",({a,b}=RandomReal[{-1,1},{2,3}]);k=0.5]],Control[{{k,0.5},0.0,1.0}],Control[{{oxy,{0,0}},{-2,-2},{2,2}}],ControlPlacement->{Top,Top,Left},SaveDefinitions->True]]]
Out[]=
The space of vectors produced by Λ has enough structure that we can construct parallel lines. Burke’s Figure 1.2 on page 14 shows how to draw a line parallel to through a point . First, find the point , halfway between and . Then, let be halfway between and , constructing . This “butterfly” structure is independent of the choice of origin, as the following demonstration illustrates.
a,b
p
c(a,p)
def
=
Λ
0.5
a
p
c
b
d
d=(b,c)
Λ
2.0
Out[]=
This kind of construct is useful for parallel transport in curved spaces.
An Example Affine Space of Planes
An Example Affine Space of Planes
Consider a preferred direction in , represented by a unit vector, , and planes that pass through the origin but do not contain .
3
e
e
To illustrate the space, choose two, distinct, non-zero 3‑vectors, and , such that are a (generally non-orthogonal) basis of . Because are linearly independent, and/or plus any multiple of span a plane that does not contain .
a
b
(a,b,e)
3
(a,b,e)
a
b
e
e
Construct a plane containing and but not . Parameterize more planes by real numbers and , such that and span the new planes specified by the tuple . The result is 2‑parameter family of planes. The following gadget illustrates such planes for randomly chosen and .
a
b
e
u
v
a+ue
b+ve
(u,v)
a
b
Out[]=
We only need to be a basis of , so choosing them randomly inhibits visualization. Set and as the usual Cartesian axes, and , along and , without loss of generality. Now we can really see what’s going on! is black and along . is gray and along . adds a bit of to , ignoring , and producing the red vector . Likewise for and : adds a bit of to , ignoring , and producing the green vector . Don’t be distracted by the orthogonality of and here. They need not be so! Each of and ignores the other so long as are a basis.
(a,b,e)
3
a
b
e
1
e
2
x
y
a
x
b
y
u
e
a
b
a+ue
v
b
v
b
e
a
b+ve
a
b
a+ue
b+ve
(a,b,e)
Out[]=
How about the ladder construction we did for vectors, i.e., “parallel transport” between pairs of planes? What does it look like for planes? Let’s suppress the vector rendering unconditionally lest the illustration be too cluttered.
CITE THIS NOTEBOOK
CITE THIS NOTEBOOK
Parallel transport in an affine space of planes
by Brian Beckman
Wolfram Community, STAFF PICKS, March 10, 2024
https://community.wolfram.com/groups/-/m/t/3138432
by Brian Beckman
Wolfram Community, STAFF PICKS, March 10, 2024
https://community.wolfram.com/groups/-/m/t/3138432

