Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Geometric algebra
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== Geometric interpretation in the vector space model == === Projection and rejection === [[File:GA plane subspace and projection.svg|right|300px|thumb|In 3D space, a bivector <math>a \land b</math> defines a 2D plane subspace (light blue, extends infinitely in indicated directions). Any vector <math>c</math> in 3D space can be decomposed into its projection <math>c_\Vert</math> onto a plane and its rejection <math>c_\perp</math> from this plane.]] For any vector <math>a</math> and any invertible vector {{tmath|1= m }}, : <math> a = amm^{-1} = (a\cdot m + a \wedge m)m^{-1} = a_{\| m} + a_{\perp m} ,</math> where the '''projection''' of <math>a</math> onto <math>m</math> (or the parallel part) is : <math> a_{\| m} = (a \cdot m)m^{-1} </math> and the '''rejection''' of <math>a</math> from <math>m</math> (or the orthogonal part) is : <math> a_{\perp m} = a - a_{\| m} = (a\wedge m)m^{-1} .</math> Using the concept of a {{tmath|1= k }}-blade {{tmath|1= B }} as representing a subspace of {{tmath|1= V }} and every multivector ultimately being expressed in terms of vectors, this generalizes to projection of a general multivector onto any invertible {{tmath|1= k }}-blade {{tmath|1= B }} as{{efn|This definition follows {{harvp|Dorst|Fontijne|Mann|2007}} and {{harvp|Perwass|2009}} β the left contraction used by Dorst replaces the ("fat dot") inner product that Perwass uses, consistent with Perwass's constraint that grade of {{tmath|1= A }} may not exceed that of {{tmath|1= B }}.}} : <math> \mathcal{P}_B (A) = (A \;\rfloor\; B) \;\rfloor\; B^{-1} ,</math> with the rejection being defined as : <math> \mathcal{P}_B^\perp (A) = A - \mathcal{P}_B (A) .</math> The projection and rejection generalize to null blades <math>B</math> by replacing the inverse <math>B^{-1}</math> with the pseudoinverse <math>B^{+}</math> with respect to the contractive product.{{efn|Dorst appears to merely assume <math>B^{+}</math> such that {{tmath|1= B \;\rfloor\; B^{+} = 1 }}, whereas {{harvp|Perwass|2009}} defines {{tmath|1= B^{+} = B^{\dagger}/(B \;\rfloor\; B^{\dagger}) }}, where <math>B^{\dagger}</math> is the conjugate of {{tmath|1= B }}, equivalent to the reverse of <math>B</math> up to a sign.}} The outcome of the projection coincides in both cases for non-null blades.{{sfn|ps=|Dorst|Fontijne|Mann|2007|loc=Β§3.6 p. 85}}{{sfn|ps=|Perwass|2009|loc=Β§3.2.10.2 p. 83}} For null blades {{tmath|1= B }}, the definition of the projection given here with the first contraction rather than the second being onto the pseudoinverse should be used,{{efn|That is to say, the projection must be defined as {{tmath|1= \mathcal{P}_{B}(A) = (A \;\rfloor\; B^{+}) \;\rfloor\; B }} and not as {{tmath|1= (A \;\rfloor\; B) \;\rfloor\; B^{+} }}, though the two are equivalent for non-null blades {{tmath|1= B }}.}} as only then is the result necessarily in the subspace represented by {{tmath|1= B }}.{{sfn|ps=|Dorst|Fontijne|Mann|2007|loc=Β§3.6 p. 85}} The projection generalizes through linearity to general multivectors {{tmath|1= A }}.{{efn|This generalization to all {{tmath|1= A }} is apparently not considered by Perwass or Dorst.}} The projection is not linear in {{tmath|1= B }} and does not generalize to objects {{tmath|1= B }} that are not blades. === Reflection === [[Householder transformation|Simple reflections]] in a hyperplane are readily expressed in the algebra through conjugation with a single vector. These serve to generate the group of general [[rotoreflection]]s and [[rotation (mathematics)|rotations]]. [[File:GA reflection along vector.svg|200px|left|thumb|Reflection of vector <math>c</math> along a vector {{tmath|1= m }}. Only the component of <math>c</math> parallel to <math>m</math> is negated.]] The reflection <math>c'</math> of a vector <math>c</math> along a vector {{tmath|1= m }}, or equivalently in the hyperplane orthogonal to {{tmath|1= m }}, is the same as negating the component of a vector parallel to {{tmath|1= m }}. The result of the reflection will be : <math> c' = {-c_{\| m} + c_{\perp m}} = {-(c \cdot m)m^{-1} + (c \wedge m)m^{-1}} = {(-m \cdot c - m \wedge c)m^{-1}} = -mcm^{-1} </math> This is not the most general operation that may be regarded as a reflection when the dimension {{tmath|1= n \ge 4 }}. A general reflection may be expressed as the composite of any odd number of single-axis reflections. Thus, a general reflection <math>a'</math> of a vector <math>a</math> may be written : <math> a \mapsto a' = -MaM^{-1} ,</math> where : <math> M = pq \cdots r</math> and <math> M^{-1} = (pq \cdots r)^{-1} = r^{-1} \cdots q^{-1}p^{-1} .</math> If we define the reflection along a non-null vector <math>m</math> of the product of vectors as the reflection of every vector in the product along the same vector, we get for any product of an odd number of vectors that, by way of example, : <math> (abc)' = a'b'c' = (-mam^{-1})(-mbm^{-1})(-mcm^{-1}) = -ma(m^{-1}m)b(m^{-1}m)cm^{-1} = -mabcm^{-1} \,</math> and for the product of an even number of vectors that : <math> (abcd)' = a'b'c'd' = (-mam^{-1})(-mbm^{-1})(-mcm^{-1})(-mdm^{-1}) = mabcdm^{-1} .</math> Using the concept of every multivector ultimately being expressed in terms of vectors, the reflection of a general multivector <math>A</math> using any reflection versor <math>M</math> may be written : <math> A \mapsto M\alpha(A)M^{-1} ,</math> where <math>\alpha</math> is the [[automorphism]] of [[reflection through the origin]] of the vector space ({{tmath|1= v \mapsto -v }}) extended through linearity to the whole algebra. === Rotations === [[File:GA planar rotations.svg|right|200px|thumb|A rotor that rotates vectors in a plane rotates vectors through angle {{tmath|1= \theta }}, that is <math>x \mapsto R_\theta x \widetilde R_\theta</math> is a rotation of <math>x</math> through angle {{tmath|1= \theta }}. The angle between <math>u</math> and <math>v</math> is {{tmath|1= \theta/2 }}. Similar interpretations are valid for a general multivector <math>X</math> instead of the vector {{tmath|1= x }}.{{sfn|ps=|Hestenes|2005}}]] If we have a product of vectors <math>R = a_1a_2 \cdots a_r</math> then we denote the reverse as : <math>\widetilde R = a_r\cdots a_2 a_1.</math> As an example, assume that <math> R = ab </math> we get : <math>R\widetilde R = abba = ab^2a = a^2b^2 = ba^2b = baab = \widetilde RR.</math> Scaling <math>R</math> so that <math>R\widetilde R = 1</math> then : <math>(Rv\widetilde R)^2 = Rv^{2}\widetilde R = v^2R\widetilde R = v^2 </math> so <math>Rv\widetilde R</math> leaves the length of <math>v</math> unchanged. We can also show that : <math>(Rv_1\widetilde R) \cdot (Rv_2\widetilde R) = v_1 \cdot v_2</math> so the transformation <math>Rv\widetilde R</math> preserves both length and angle. It therefore can be identified as a rotation or rotoreflection; <math>R</math> is called a [[rotor (mathematics)|rotor]] if it is a [[proper rotation]] (as it is if it can be expressed as a product of an even number of vectors) and is an instance of what is known in GA as a ''[[versor]]''. There is a general method for rotating a vector involving the formation of a multivector of the form <math> R = e^{-B \theta / 2} </math> that produces a rotation <math> \theta </math> in the [[Plane of rotation|plane]] and with the orientation defined by a {{tmath|1= 2 }}-blade {{tmath|1= B }}. Rotors are a generalization of quaternions to {{tmath|1= n }}-dimensional spaces.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)