Open subset of Euclidian space with coordinates¶
An open subset of Euclidian space with a specific set of coordinates. This is the background on which differential forms can be defined.
AUTHORS:
- Joris Vankerschaver (2010-07-25)
EXAMPLES:
sage: x, y, z = var('x, y, z')
sage: S = CoordinatePatch((x, y, z)); S
Open subset of R^3 with coordinates x, y, z
sage: u, v = var('u, v')
sage: S = CoordinatePatch((u, v)); S
Open subset of R^2 with coordinates u, v
TODO:
- Add functionality for metric tensors
-
class
sage.tensor.coordinate_patch.
CoordinatePatch
(coordinates, metric=None)¶ Bases:
sage.structure.parent.Parent
Construct a coordinate patch, i.e. an open subset of Euclidian space with a given set of coordinates.
EXAMPLES:
sage: x, y, z = var('x, y, z') sage: S = CoordinatePatch((x, y, z)); S Open subset of R^3 with coordinates x, y, z sage: u, v = var('u, v') sage: T = CoordinatePatch((u, v)); T Open subset of R^2 with coordinates u, v sage: loads(T.dumps()) == T True
In a future release, it will be possible to specify a metric tensor on a coordinate patch. For now, providing any kind of metric raises an exception:
sage: x, y, z = var('x, y, z') sage: m = matrix(SR, 3) sage: S = CoordinatePatch((x, y, z), metric=m) Traceback (most recent call last): ... NotImplementedError: Metric geometry not supported yet.
-
coordinate
(i=0)¶ Return the \(i^{th}\) coordinate on
self
INPUT:
i
- integer (optional, default 0)
EXAMPLES:
sage: x, y, z = var('x, y, z') sage: S = CoordinatePatch((x, y, z)); S Open subset of R^3 with coordinates x, y, z sage: S.coordinate(0) x sage: S.coordinate(1) y sage: S.coordinate(2) z
-
coordinates
()¶ Return coordinates on this coordinate patch.
OUTPUT:
- list - a list of coordinates on this space.
EXAMPLES:
sage: x, y, z = var('x, y, z') sage: S = CoordinatePatch((x, y, z)); S Open subset of R^3 with coordinates x, y, z sage: S.coordinates() (x, y, z)
-
dim
()¶ Return the dimension of this coordinate patch, i.e. the dimension of the Euclidian space of which this coordinate patch is an open subset.
EXAMPLES:
sage: a, b, c, d, e = var('a, b, c, d, e') sage: U = CoordinatePatch((a, b, c, d, e)); U Open subset of R^5 with coordinates a, b, c, d, e sage: U.dim() 5
-