Opened 2 years ago
Closed 2 years ago
#22637 closed defect (fixed)
Fix treatment of tensor field restrictions on parallelizable manifolds
Reported by: | egourgoulhon | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | sage-8.0 |
Component: | geometry | Keywords: | tensor field, parallelizable manifold |
Cc: | tscrim | Merged in: | |
Authors: | Eric Gourgoulhon | Reviewers: | Travis Scrimshaw |
Report Upstream: | N/A | Work issues: | |
Branch: | 9a9ee5b (Commits) | Commit: | 9a9ee5bf034694acb74a13a0de35c85b0048eaef |
Dependencies: | #22563 | Stopgaps: |
Description
The following is a bug:
sage: S1 = Manifold(1, 'S^1') # the circle sage: U = S1.open_subset('U') # the complement of one point sage: Xt.<t> = U.chart('t:(0,2*pi)') # the standard angle coordinate sage: V = S1.open_subset('V') # the complement of the point t=pi sage: Xu.<u> = V.chart('u:(0,2*pi)') # the angle t-pi sage: S1.declare_union(U, V) sage: Xt_to_Xu = Xt.transition_map(Xu, (t-pi,), intersection_name='W', ....: restrictions1 = t!=pi, restrictions2 = u!=pi) sage: Xt_to_Xu.inverse() sage: W = U.intersection(V) sage: e = S1.vector_frame('e') # a global vector frame (makes S^1 parallelizable) sage: R2 = Manifold(2, 'R^2', start_index=1) # Euclidean space R^2 sage: X2.<x,y> = R2.chart() # Cartesian coordinates sage: F = S1.diff_map(R2, {(Xt,X2): [cos(t), sin(t)], ....: (Xu,X2): [-cos(u), -sin(u)]}) # embedding S^1 --> R^2 sage: dx = X2.coframe()[1] # the 1-form dx on R^2 sage: a = F.pullback(dx) ; a 1-form on the 1-dimensional differentiable manifold S^1 sage: a.restrict(U).display() -sin(t) dt sage: a.restrict(W).display() ... ValueError: no basis could be found for computing the components in the Coordinate frame (W, (d/dt))
The current ticket fixes this, by trying, if possible, to get the restriction from subdomains (here the restriction to W
will be obtained from that to U
, W
being a subset of U
)
Change History (4)
comment:1 Changed 2 years ago by
- Branch set to public/manifolds/bug-tensor-restrictions-22637
- Cc tscrim added
- Commit set to 9a9ee5bf034694acb74a13a0de35c85b0048eaef
- Status changed from new to needs_review
comment:2 follow-up: ↓ 3 Changed 2 years ago by
- Reviewers set to Travis Scrimshaw
- Status changed from needs_review to positive_review
LGTM.
comment:3 in reply to: ↑ 2 Changed 2 years ago by
comment:4 Changed 2 years ago by
- Branch changed from public/manifolds/bug-tensor-restrictions-22637 to 9a9ee5bf034694acb74a13a0de35c85b0048eaef
- Resolution set to fixed
- Status changed from positive_review to closed
Note: See
TracTickets for help on using
tickets.
New commits:
Fix treatment of pullback on parallelizable manifolds
Change the name of first argument to 'self' in nested method _pullback_chart of DiffMap
Revert to previous version of nested function _pullback_chart in DiffMap.pullback
Merge branch 'public/manifolds/bug-pullback-parallelizable' of git://trac.sagemath.org/sage into Sage 7.6.rc0
Fix treatment of restrictions of tensor fields with parallelizable domains