GrassmannCalculus`
ComposeGrassmannElement |
|
| | ||||
|
| | ||||
|
| | ||||
Details and Options
Examples
(1)
Basic Examples
(1)
In[1]:=
<<GrassmannCalculus`
Establish the book default vector space.
In[2]:=
★A;
Here are some of the ways you can compose a Grassmann element in 3 dimensions. The general Grassmann element (sometimes called a Grassmann number) is the weighted sum of all the basis elements of all grades.
In[3]:=
ComposeGrassmannElement |
Out[3]=
a
0
a
1
e
1
a
2
e
2
a
3
e
3
a
4
e
1
e
2
a
5
e
1
e
3
a
6
e
2
e
3
a
7
e
1
e
2
e
3
This could also be entered by listing all the grades to be included in the composition:
In[4]:=
ComposeGrassmannElement |
Out[4]=
a
0
a
1
e
1
a
2
e
2
a
3
e
3
a
4
e
1
e
2
a
5
e
1
e
3
a
6
e
2
e
3
a
7
e
1
e
2
e
3
The following composes a 1-element:
In[5]:=
[a,{1}],
[a,1]
ComposeGrassmannElement |
ComposeGrassmannElement |
Out[5]=
{++,++}
a
0
e
1
a
1
e
2
a
2
e
3
a
0
e
1
a
1
e
2
a
2
e
3
This is the sum of a scalar and a bivector:
In[6]:=
ComposeGrassmannElement |
Out[6]=
a
0
a
1
e
1
e
2
a
2
e
1
e
3
a
3
e
2
e
3
You can compose Grassmann elements in any dimension.
In[7]:=
★ℬ |
4
ComposeGrassmannElement |
[
c
,
{
0,2,4}]
Out[7]=
c
0
c
1
e
1
e
2
c
2
e
1
e
3
c
3
e
1
e
4
c
4
e
2
e
3
c
5
e
2
e
4
c
6
e
3
e
4
c
7
e
1
e
2
e
3
e
4
You can compose lists of Grassmann elements as follows.
In[8]:=
★ℬ |
3
ComposeGrassmannElement |
[
{a,b,c}
,
{
0,2}]
//
Column
Out[8]=
a 0 a 1 e 1 e 2 a 2 e 1 e 3 a 3 e 2 e 3 |
b 0 b 1 e 1 e 2 b 2 e 1 e 3 b 3 e 2 e 3 |
c 0 c 1 e 1 e 2 c 2 e 1 e 3 c 3 e 2 e 3 |
You can make the starting index of the coefficients whatever you want.
In[9]:=
★ℬ |
4
ComposeGrassmannElement |
Out[9]=
c
j
c
1+j
e
1
e
2
c
2+j
e
1
e
3
c
3+j
e
1
e
4
c
4+j
e
2
e
3
c
5+j
e
2
e
4
c
6+j
e
3
e
4
c
7+j
e
1
e
2
e
3
e
4
In[10]:=
ComposeGrassmannElement |
Out[10]=
a j a 1+j e 1 e 2 a 2+j e 1 e 3 a 3+j e 1 e 4 a 4+j e 2 e 3 a 5+j e 2 e 4 a 6+j e 3 e 4 |
b j b 1+j e 1 e 2 b 2+j e 1 e 3 b 3+j e 1 e 4 b 4+j e 2 e 3 b 5+j e 2 e 4 b 6+j e 3 e 4 |
Note that all the scalar symbols generated as coefficients of the basis elements have been automatically declared as scalar symbols.
In[11]:=
ScalarSymbols
Out[11]=
a,b,c,d,e,f,g,h,,,,,,,,,,,,,,,,,,,,,,
a
j
a
1+j
a
2+j
a
3+j
a
4+j
a
5+j
a
6+j
b
j
b
1+j
b
2+j
b
3+j
b
4+j
b
5+j
b
6+j
c
j
c
1+j
c
2+j
c
3+j
c
4+j
c
5+j
c
6+j
c
7+j
You can also generate templates for Grassmann elements by using the placeholder symbol. This allows you to tab through the composed result and enter your own values.
In[12]:=
★ℬ |
3
ComposeGrassmannElement |
|
Out[12]=
+⋀+⋀+⋀
e
1
e
2
e
1
e
3
e
2
e
3
|
|
""

