id summary reporter owner description type status priority milestone component resolution keywords cc merged author reviewer upstream work_issues branch commit dependencies stopgaps
27655 Ease the display of tensor fields in a coordinate frame egourgoulhon "Consider a manifold covered by two coordinate charts:
{{{
sage: M = Manifold(2, 'M')
sage: X. = M.chart()
sage: Y.__ = M.chart()
sage: X_to_Y = X.transition_map(Y, [x+y, x-y])
sage: Y_to_X = X_to_Y.inverse()
}}}
and define a vector field from its components in the manifold's default vector frame:
{{{
sage: M.default_frame()
Coordinate frame (M, (d/dx,d/dy))
sage: M.default_chart()
Chart (M, (x, y))
sage: v = M.vector_field(-y, x, name='v')
sage: v.display()
v = -y d/dx + x d/dy
}}}
Currently (Sage 8.7), if we would like to express `v` in terms of the coordinates `(u,v)`, we have to write
{{{
sage: v.display(Y.frame(), Y)
v = v d/du - u d/dv
}}}
This is because the first argument of `display` is the vector frame with respect to which the expansion of `v` is performed and the second argument is the chart in which the components are expressed. If the latter is omitted, the default chart is assumed:
{{{
sage: v.display(Y.frame())
v = (x - y) d/du + (-x - y) d/dv
}}}
Now, it occurs quite often that one wants to express a tensor field entirely in terms of a given chart, i.e. with the components w.r.t. the coordinate frame associated to the chart and each component being expressed in terms of the coordinates of the chart. In Sage 8.7, if `Y` is not the default chart, this is possible only through `v.display(Y.frame(), Y)`. This ticket introduces the possibility to pass only the chart to `display`, with the understanding that the vector frame with respect to which the expansion is to be performed is the coordinate frame associated with this chart. In other words, `v.display(Y.frame(), Y)` can now be shorten to `v.display(Y)`:
{{{
sage: v.display(Y)
v = v d/du - u d/dv
}}}" enhancement closed major sage-8.8 geometry fixed tensor field, coordinate frame, manifolds tscrim Eric Gourgoulhon Travis Scrimshaw N/A 4060557d205263fd5c8a2ce2e1d0e0e96e5baa94 4060557d205263fd5c8a2ce2e1d0e0e96e5baa94
__