GrassmannCalculus`
DeclareExtraScalarSymbols (★★S) |
| DeclareExtraScalarSymbols[ lists UserScalarSymbols CurrentSpacePreferences | |
Details and Options
Examples
(1)
Basic Examples
(1)
In[1]:=
<<GrassmannCalculus`
In[2]:=
SetActiveSpacePreferences |
PublicGrassmannAtlas |
The following are the current and :
UserScalarSymbols
ScalarSymbols
In[3]:=
UserScalarSymbols
★s |
Out[3]=
{a,b,c,d}
Out[3]=
{a,b,c,d,x,y}
The following does not simplify by factoring out the supposed scalars nd because they have not been declared.
In[4]:=
()⋀()%//
e
x
e
y
SimplifyExteriorProducts |
Out[4]=
()⋀()
e
x
e
y
Out[4]=
()⋀()
e
x
e
y
The following declares them:
In[5]:=
★★S |
Out[5]=
{a,b,c,d,,}
The expression above now simplifies.
In[6]:=
()⋀()%//
%%//
[All,All]
e
x
e
y
SimplifyExteriorProducts |
GrassmannBreakout |
Out[6]=
()⋀()
e
x
e
y
Out[6]=
⋀
e
x
e
y
Out[6]=
⋀
e
x
e
y
The new scalars now appear on the GrassmannCalculus palette and also on the if recreated.
GrassmannSymbolsPalette
In[7]:=
GrassmannSymbolsPalette |
Existing vector or form symbols cannot be declared as scalar symbols.
In[8]:=
★★S |
e
x
DeclareScalarSymbols::vector:The symbols in the list {p} have already been declared as vector symbols. Vector symbols cannot also be declared as scalar symbols, since they are of different grade.
DeclareScalarSymbols::form:The symbols in the list {ω} have already been declared as form symbols. Form symbols cannot also be declared as scalar symbols, since they are of different grade.
DeclareScalarSymbols::basis:The symbols in the list {dy,★,} have already been declared as basis elements. Basis elements cannot also be declared as scalar symbols, since they are of different grade.
e
x
Out[8]=
DeclareUserScalarSymbols[{a,b,c,d,dy,★,p,,,ω,}]
e
x
You can add extra scalar symbols or patterns in any argument or list form:
In[9]:=
★★S |
g
h
Out[9]=
{a,b,c,d,e,f,,,,,ϵ[__]}
g
h
Notice that the patterns on the list are also treated as scalar symbols and will simplify.
In[10]:=
()⋀%//
g
i
e
x
h
j
e
y
SimplifyExteriorProducts |
Out[10]=
()⋀
e
x
g
i
e
y
h
j
Out[10]=
g
i
h
j
e
x
e
y
In[11]:=
(ϵ[x,y,t])⋀%//
e
x
h
j
e
y
SimplifyExteriorProducts |
Out[11]=
(ϵ[x,y,t])⋀
e
x
e
y
h
j
Out[11]=
h
j
e
x
e
y
|
""

