Coding up a simple geometric algebra in MATLAB

In summary: I'm thinking about using something like GABLE but I'm not sure if I should use a class or just create objects.You should use a class to represent the geometric algebra.
  • #1
hunt_mat
Homework Helper
1,782
32
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
[itex]\lbrace\mathbf{e}_{i}\rbrace_{i=0}^{3}[/itex] which satisfy the following relations: [tex]\mathbf{e}_{i}\mathbf{e}_{j}=-\mathbf{e}_{j}\mathbf{e}_{i}[/tex] and [tex]\mathbf{e}_{1}^{2}=\mathbf{e}_{2}^{2}=\mathbf{e}_{3}^{3}=1\quad \mathbf{e}_{0}^{2}=\frac{1}{\varepsilon}[/tex]

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 [itex]\varepsilon[/itex], any suggestions?

Mat
 
Physics news on Phys.org
  • #3
I am aware of GABLE but it's not the geometric algebra which I am interested in.
 
  • #4
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
 
  • #5
Anyone else care to comment?
 
  • #6
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.
 
  • #7
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.
 

Related to Coding up a simple geometric algebra in MATLAB

1. What is geometric algebra in MATLAB?

Geometric algebra is a mathematical framework that extends traditional vector and matrix algebra to include geometric operations such as rotations, reflections, and translations. It is commonly used in computer graphics, robotics, and physics simulations.

2. Why would I want to code up a simple geometric algebra in MATLAB?

Coding up a simple geometric algebra in MATLAB allows you to easily perform geometric operations in your programs. It can also help you gain a better understanding of geometric algebra and its applications.

3. How do I code up a simple geometric algebra in MATLAB?

To code up a simple geometric algebra in MATLAB, you can use the built-in functions for vectors and matrices, along with the symbolic math toolbox. You can also find open-source libraries and tutorials online to help guide you through the process.

4. Can I use geometric algebra in MATLAB for 3D graphics?

Yes, geometric algebra in MATLAB is commonly used for 3D graphics and simulations. It allows you to easily perform rotations, translations, and other geometric operations on 3D objects.

5. Are there any limitations to using geometric algebra in MATLAB?

There are some limitations to using geometric algebra in MATLAB, such as the lack of built-in support for complex numbers and the potential for slower performance compared to other programming languages. However, these limitations can often be overcome with proper coding techniques and optimizations.

Similar threads

  • MATLAB, Maple, Mathematica, LaTeX
Replies
3
Views
3K
  • Special and General Relativity
Replies
1
Views
146
  • Atomic and Condensed Matter
Replies
0
Views
559
  • Advanced Physics Homework Help
Replies
1
Views
1K
  • MATLAB, Maple, Mathematica, LaTeX
Replies
4
Views
2K
  • High Energy, Nuclear, Particle Physics
Replies
3
Views
898
  • Classical Physics
Replies
1
Views
1K
  • Special and General Relativity
Replies
7
Views
504
  • Classical Physics
Replies
6
Views
975
  • MATLAB, Maple, Mathematica, LaTeX
Replies
5
Views
2K
Back
Top