enkimute | 1 year ago | on: Geometric Algebra
enkimute's comments
enkimute | 2 years ago | on: Look, ma, no matrices
enkimute | 2 years ago | on: Look, ma, no matrices
enkimute | 2 years ago | on: Look, ma, no matrices
and ofcourse the go-to reference https://bivector.net
or join 1000+ profs, researchers and enthusiasts on the bivector discord here https://discord.gg/vGY6pPk
enkimute | 2 years ago | on: Look, ma, no matrices
If you rotate around just one axis, the Lie algebra feels just like Euler angles .. in fact its exactly the same thing, but if you rotate around more than one .. it keeps working intuitively and usably - Euler angles absolutely do not.
enkimute | 2 years ago | on: Look, ma, no matrices
enkimute | 3 years ago | on: Exponentially Better Rotations
enkimute | 3 years ago | on: Exponentially Better Rotations
There is also a writeup called 'may the forque be with you' available on bivector.net
enkimute | 4 years ago | on: What is the inverse of a vector?
It has the dual quaternions as even subalgebra (in 3D), and unifies all linear and angular aspects. It leads to remarkable new insights, as removing the need for force-couples (pure angular acceleration is caused by pushing along a line at infinity), while pure linear acceleration is caused by forces along lines through the center of mass.
These geometric ideas are independent of dimension - forces, both angular and linear are always lines. The treatment of inertia becomes a duality map, and things like Steiners theorem are not needed at all.
On top of this, the separation of the metric that sets GA apart means that this formulation of rigid body dynamics works not only in flat Euclidean space, but unmodified in the Spherical and Hyperbolic geometries. (by a simple change of metric of the projective dimension).
For a (graphics/game programmer oriented) tutorial on this see https://www.youtube.com/watch?v=pq9YfdPHhIo&ab_channel=Bivec...
enkimute | 4 years ago | on: What is the inverse of a vector?
Additionally the GA formalism enables closed form solutions for the exponential map for all bivector algebras. (see 'Graded symmetry Groups' https://www.researchgate.net/publication/353116859_Graded_Sy...).
enkimute | 5 years ago | on: Ganja.js: Geometric Algebra Generator for JavaScript, C++, C#, Rust, Python
https://www.youtube.com/watch?v=UzEytSmwEpk&ab_channel=probi...
enkimute | 5 years ago | on: Ganja.js: Geometric Algebra Generator for JavaScript, C++, C#, Rust, Python
enkimute | 5 years ago | on: Ganja.js: Geometric Algebra Generator for JavaScript, C++, C#, Rust, Python
The 'generated by' in that sentence is referring to the code generation - not the mathematical generators. I'll change 'algebra' to 'algebra implementation' to make that more clear. (I figured the very sentence 'an algebra generated by ganja.js' disambiguates the interpretation, but I'm happy to stand corrected.)
Ganja can create numerical implementations for a wide range of algebras (not just 'a certain algebra'), including any associative algebra (you can give it a Cayley table), although the focus is on Clifford Algebras, and providing the ability to stay close to the mathematical syntax. In order to do that it provides operator overloading, algebraic literals, etc .. (all features that do not natively exist in javascript). Because it is not 'a certain algebra', but a wide range, for which the code is only generated at runtime - it seemed a reasonable way of describing what is going on.
Thanks for letting me know it confused you - will fix it right away!
enkimute | 5 years ago | on: Geometric Algebra (2012)
Consider for example R_(2,0,1) in both scenarios.
Using Geometric Product as Group Composition
e1 = reflection w.r.t. x=0 axis
e2 = reflection w.r.t. y=0 axis
e12 = reflection w.r.t. y=0 axis followed by reflection w.r.t. x=0 axis
= 180 rotation around origin.
Using Anti-Geometric Product as Group Composition e1 = not a group element, because anti-norm is zero.
e2 = not a group element, because anti-norm is zero.
e12 = not a group element, because anti-norm is zero.
So to get the same behavior you need the following elements when using the Anti-Geometric product as composition e02 = reflection w.r.t. x=0 axis
e01 = reflection w.r.t. y=0 axis
e0 = reflection w.r.t. y=0 axis followed by reflection w.r.t. x=0 axis
= 180 rotation around origin.
So choosing the geometric anti-product as group composition operator is possible, but imho breaks the readability of your transformations completely.All I can say is that I hope that those linked articles do not give people an excuse to not consider the model in which vectors, grade-1 elements, are reflections. This is the true half of the picture that is new and being missed.
enkimute | 5 years ago | on: Geometric Algebra (2012)
Linear equations form a linear space, you can add them and multiply them with scalars. (creating things called line-pencils, plane-bundles etc .. classic projective geometry). Hence you call the grade-1 elements of the graded version of such a linear space 'vectors'. (just like you can make vector spaces with functions or all other sorts of objects).
So the reflection formula from GA in general, which is to reflect an arbitrary element X w.r.t. a grade-1 element a :
-aXa
is simply to be read as reflecting the object 'X' in the plane (3D) or line (2D) or sphere (3D CGA) or circle (2D CGA) 'a'.
Such a reflection should modify all other reflections, except for itself (where it should only flip orientation) :
-aaa = -a
It is easy to verify that this holds for general Euclidean planes written as homogeneous linear equations in their grade-1 element form. And from that everything else follows. (composition of reflections gives you rotations/translations (leaving points invariant in 2D), etc).
Planes being grade 1 elements in no way implies characterizing them by a normal vector.
enkimute | 5 years ago | on: BiVector.net – Geometric Algebra for CGI, Vision and Engineering
Anthony Lasenby, professor astrophysics and cosmology at Cambridge, is also absolutely still actively researching and publishing, all in the mindset of the GA4Physicists book. (See a recent (feb 2020) lecture of him here : https://www.youtube.com/watch?v=x7eLEtmq6PY&t=7s )
(GA4P is considered one of the few comprehensive and up to date treatments of geometric algebra, not just in physics).
enkimute | 5 years ago | on: BiVector.net – Geometric Algebra for CGI, Vision and Engineering
enkimute | 5 years ago | on: BiVector.net – Geometric Algebra for CGI, Vision and Engineering
enkimute | 5 years ago | on: Geometric Algebra (2012)
Algebraically we can always use the Hodge dual and its inverse to move to/from k-vectors from/to n-k vectors.
Geometrically we can always say two points define a line or two lines define a point.
Group Theory - here we can't swap. Two reflections make a rotation but two rotations do not make a reflection. So reflections are 'naturally' grade 1.
If you want everything to fit intuitively together, you want reflections to be grade 1, and by consequence hyperplanes (lines in 2D, planes in 3D, etc) to be grade 1 (i.e. vectors).
Doing it the other way around is possible but will be more verbose and less intuitive. (also with 'reflections' as natural grade 1 elements, the move from Euclidean to Conformal becomes trivial, simply reflect in (hyper)spheres instead, in this space it is also easier to see that the two approaches are not equivalent, it is natural to say that (in 2D) the 'meet' of two circles is a point pair, but not that the 'join' of two points is a point pair. (why would it not be a line just like in PGA?)).
Imho, one should learn to appreciate both halves of the picture, as for each specific problem one of them might be more natural. (for the popular Euclidean group and its associated geometry this view we're not used to may very well be more intuitive one, imho).
enkimute | 5 years ago | on: Geometric Algebra (2012)
For other subgroups GA reps will also exist. (like e.g. if one wants to include projective transformations as versors, that would be the projective group (which preserves the cross ratio of 4 points), and has a GA representation in R3,3).
These spaces quickly become so big that efficient numerical implementations (while not impossible with enough symbolic work at compilation time, see e.g. https://www.jeremyong.com/gal/) are difficult. Other advantages of GA do of course remain.