1.1. Define a manifold and its tangent bundle
The first basic action is defining a differentiable manifold. Just after loading, xTensor` does not have any defined manifold.
DefManifold Define a manifold or a product of manifolds
UndefManifold Undefine a manifold
ManifoldQ Check manifold
$Manifolds List of defined manifolds
$ProductManifolds List of defined product manifolds
Definition of a manifold
We define a 3-dimensional manifold M3 with abstract indices {a, b, ..., h} on its tangent vector bundle:
In[56]:=
We can ask Mathematica about this manifold using the question mark ?. We see that the information is stored in a series of functions using the concept of "upvalue" (this is why we find the ^= sign below)
In[57]:=
|
Together with the manifold we have also defined its tangent vector bundle, which stores all the information related to indices and indexed objects. By default, the tangent bundle is named by joining the symbol Tangent with the name of the manifold, but that name can be freely choosen. Note that we shall often abbreviate "vector bundle" to "vbundle".
By default, tangent bundles are real and have no metric. The dimension of the tangent bundle is that of the vector space at each point, and coincides with the dimension of the base manifold.
In[58]:=
|
We define a second manifold S2. Note that we can use C, D, K, N, O as indices, even though Mathematica has reserved meanings for those symbols. The capitals E and I cannot be used as indices because they are always understood as the base of natural logarithms and the square root of -1, respectively. (Those seven are the only one-letter symbols used by Mathematica.) xTensor` issues warnings to remind you of this point:
In[59]:=
The lists of manifolds and vbundles defined in the current session are given by the global variables $Manifolds and $VBundles, respectively:
In[60]:=
Out[60]=
In[61]:=
Out[61]=
A manifold can be undefined (its properties are lost and the symbol is removed). In the process, the associated tangent bundle is also undefined:
In[62]:=
In[63]:=
In[64]:=
Out[64]=
And redefined:
In[65]:=
In[66]:=
Out[66]=
Created by Mathematica (May 16, 2008) |