Opened 5 years ago
Last modified 4 years ago
#24622 closed enhancement
Pseudo-Riemannian manifods — at Version 9
Reported by: | egourgoulhon | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | sage-8.2 |
Component: | geometry | Keywords: | pseudo-Riemannian, Riemannian, manifold, gradient, divergence, Laplacian |
Cc: | tscrim | Merged in: | |
Authors: | Eric Gourgoulhon | Reviewers: | |
Report Upstream: | N/A | Work issues: | |
Branch: | public/manifolds/pseudoRiemannian (Commits, GitHub, GitLab) | Commit: | 46b8f66385cd1c34e5310d627a0e44983f87cc4a |
Dependencies: | Stopgaps: |
Description (last modified by )
This ticket implements pseudo-Riemannian manifolds, i.e. real differentiable manifolds equipped with a metric tensor. Important subcases are of course Riemannian manifolds and Lorentzian manifolds. Taking into account that pseudo-Riemannian metric tensors are already implemented in Sage (see here), this ticket introduces
- the parent class
PseudoRiemannianManifold
, as a subclass of the existing classDifferentiableManifold
, with the specific methodsmetric
andvolume_form
- new methods
gradient
,laplacian
anddalembertian
for scalar fields - new methods
divergence
,laplacian
anddalembertian
for tensor fields - new methods
curl
,dot
,cross
andnorm
for vector fields
For a greater generality, all these methods have an optional argument metric
; if it is omitted, the metric of the underlying pseudo-Riemannian manifold is assumed. The follow-up ticket #24623 implements Euclidean spaces.
This work is part of the SageManifolds project, see #18528 for an overview.
Change History (9)
comment:1 Changed 5 years ago by
- Branch set to public/manifolds/pseudoRiemannian
- Commit set to 06f8fd34981fb8b201134439a55ecf79f962a5c9
comment:2 Changed 5 years ago by
- Description modified (diff)
comment:3 Changed 5 years ago by
- Description modified (diff)
comment:4 Changed 5 years ago by
- Commit changed from 06f8fd34981fb8b201134439a55ecf79f962a5c9 to 55f356c2ee79026349a821dccd409d0d5a76718c
Branch pushed to git repo; I updated commit sha1. New commits:
55f356c | Improve documentation of pseudo-Riemannian manifolds
|
comment:5 Changed 5 years ago by
- Commit changed from 55f356c2ee79026349a821dccd409d0d5a76718c to 0fc661a5beaf076fdf67e0d4f45b546ed8e23e8e
Branch pushed to git repo; I updated commit sha1. New commits:
0fc661a | Remove method set_metric and improve doc of pseudo-Riemannian manifolds
|
comment:6 Changed 5 years ago by
- Commit changed from 0fc661a5beaf076fdf67e0d4f45b546ed8e23e8e to b4dddf74279a21aa9cc645f959c8cd6b513a8d48
Branch pushed to git repo; I updated commit sha1. New commits:
b4dddf7 | Add operators Laplacian, d'Alembertian and curl on pseudo-Riemannian manifolds
|
comment:7 Changed 5 years ago by
- Commit changed from b4dddf74279a21aa9cc645f959c8cd6b513a8d48 to 040b01c35f3082b4788bdeefea9d28aa1f96d3bc
Branch pushed to git repo; I updated commit sha1. New commits:
040b01c | Add dot product and cross product of vector fields
|
comment:8 Changed 5 years ago by
- Commit changed from 040b01c35f3082b4788bdeefea9d28aa1f96d3bc to 46b8f66385cd1c34e5310d627a0e44983f87cc4a
Branch pushed to git repo; I updated commit sha1. New commits:
46b8f66 | Add norm of vector fields.
|
comment:9 Changed 5 years ago by
- Description modified (diff)
This is work in progress...
New commits:
First version of pseudo-Riemannian manifold class
Pseudo-Riemannian manifolds constructed by the generic function Manifold
Divergence of a tensor field + new section on pseudo-Riemannian manifolds in the reference manual
Add doctests for pseudo-Riemannian manifolds