MATLAB Coding up a simple geometric algebra in MATLAB

Click For Summary
The discussion centers on implementing a geometric algebra defined by specific relations among its elements, particularly focusing on the challenge of representing these elements in MATLAB. The user expresses uncertainty about whether to use a long vector or another method for representation and seeks guidance on handling the parameter ε. Suggestions include adopting an object-oriented approach similar to existing libraries, such as GABLE, which allows for overloading MATLAB functions for operations on geometric algebra objects. Another example provided is a Clifford Algebra implementation that uses a similar approach. Participants agree that while representing multivectors as 1-D arrays is possible, an object-oriented method is more user-friendly. However, there remains uncertainty about effectively coding the ε parameter.
hunt_mat
Homework Helper
Messages
1,816
Reaction score
33
Hi,

I have been wanting to do this for a while but not too sure how to go about it. I have the following geometric algebra
\lbrace\mathbf{e}_{i}\rbrace_{i=0}^{3} which satisfy the following relations: \mathbf{e}_{i}\mathbf{e}_{j}=-\mathbf{e}_{j}\mathbf{e}_{i} and \mathbf{e}_{1}^{2}=\mathbf{e}_{2}^{2}=\mathbf{e}_{3}^{3}=1\quad \mathbf{e}_{0}^{2}=\frac{1}{\varepsilon}

There are 16 elements in this geometric algebra. I thought about doing it as one long vector but didn't know if there was a better way of doing it. I also am not quite sure about dealing with the \varepsilon, any suggestions?

Mat
 
Physics news on Phys.org
I am aware of GABLE but it's not the geometric algebra which I am interested in.
 
hunt_mat said:
I am aware of GABLE but it's not the geometric algebra which I am interested in.

I wasn't really suggesting you use GABLE, but that you use the same type of object oriented approach that was used to create GABLE.

You can write a class that creates objects of the geometric algebra with all of the properties you listed.

Here is another example that implements a Clifford Alebra using an object oriented approach:

http://www.mathworks.com/matlabcentral/fileexchange/34286-clifford-algebra
 
Anyone else care to comment?
 
I think Kriel's approach is the right one. You could represent multivectors as ordinary 1-D arrays, and then write functions to work with them, but an object oriented approach seems like the most user-friendly way to go about it.
 
The trick comes in with how to represent epsilon in te code which I have no idea what to do with it.

I've not done much OO, and NONE with matlab.
 

Similar threads

  • · Replies 3 ·
Replies
3
Views
5K
  • · Replies 1 ·
Replies
1
Views
490
  • · Replies 5 ·
Replies
5
Views
550
  • · Replies 4 ·
Replies
4
Views
4K
  • · Replies 5 ·
Replies
5
Views
692
Replies
19
Views
3K
  • · Replies 29 ·
Replies
29
Views
1K
  • · Replies 4 ·
Replies
4
Views
1K
Replies
5
Views
3K
  • · Replies 7 ·
Replies
7
Views
2K