Is there a program that can solve for Gaussian curvature of a Metric?

  • #1
Sciencemaster
70
10
TL;DR Summary
I'm trying to solve for the Gaussian Curvature of a 4-D metric tensor. What program or library can do this?
I've been trying to find a way to calculate Gaussian curvature from a 4D metric tensor. I found a program that does this in Mathematica using the Brioschi formula. However, this only seems to work for a 2D metric or formula (I would need to use something with more dimensions). I've found abundant ways to do this for the Ricci scalar curvature, but for this I'm specifically trying to find the Gaussian curvature. Is there a program I can use that does this? Preferably in Python or Mathematica, as these are the languages I am familiar with.
 

Answers and Replies

  • #3
vanhees71
Science Advisor
Insights Author
Gold Member
2022 Award
22,472
13,400
There's a great Python Package for symbolic compuations of this kind

https://einsteinpy.org/
 
  • Like
Likes PeroK and Dale
  • #4
Sciencemaster
70
10
There's a great Python Package for symbolic compuations of this kind

https://einsteinpy.org/
Yeah, einsteinpy is very useful, but unfortunately, I can't find any modules in it for Gaussian curvature (I just found a bunch on (Ricci) scalar curvature).
 
  • #5
Sciencemaster
70
10
  • #6
Ibix
Science Advisor
Insights Author
2022 Award
10,355
11,127
The Wikipedia article on sectional curvature notes that it completely characterises the curvature, so presumably it ought to be a matrix (probably a tensor, actually) with as many independent components as the Riemann tensor. Probably you can summarise it to a scalar as you can do with the Riemann to get the Ricci or Kretschman scalars.
 
  • #7
41,298
18,936
I've been trying to find a way to calculate Gaussian curvature from a 4D metric tensor.
"Gaussian curvature" in 4 dimensions is not a scalar. It's a tensor. Which tensor? As @Ibix has conjectured, it is the Riemann curvature tensor. Note that this is perfectly consistent with the 2D case, since in 2 dimensions the Riemann curvature tensor has only one independent component, which is equal to the Gaussian curvature (a scalar). But in more than 2 dimensions, the Riemann curvature tensor has more than one independent component (it has 6 independent components in 3 dimensions and 20 in 4 dimensions), so a single scalar cannot fully describe the "Gaussian curvature" of a manifold with 3 or more dimensions.
 
  • #8
Ibix
Science Advisor
Insights Author
2022 Award
10,355
11,127
The wiki article on sectional curvature gives this as the definition of the sectional curvature:
$$K(u,v)=\frac{\langle R(u,v)v,u\rangle}{\langle u,u\rangle\langle v,v\rangle-\langle u,v\rangle^2}$$Even the "assume everything's orthonormal" form is given as ##K(u,v)=\langle R(u,v)v,u\rangle##. I'm struggling slightly with the function-like notation they use (either Wikipedia doesn’t use it consistently or I'm not understanding it completely; either is more than possible), but isn't that some kind of scaling of the Riemann rather than the Riemann directly?
 
  • #9
Orodruin
Staff Emeritus
Science Advisor
Homework Helper
Insights Author
Gold Member
20,004
10,661
The wiki article on sectional curvature gives this as the definition of the sectional curvature:
$$K(u,v)=\frac{\langle R(u,v)v,u\rangle}{\langle u,u\rangle\langle v,v\rangle-\langle u,v\rangle^2}$$Even the "assume everything's orthonormal" form is given as ##K(u,v)=\langle R(u,v)v,u\rangle##. I'm struggling slightly with the function-like notation they use (either Wikipedia doesn’t use it consistently or I'm not understanding it completely; either is more than possible), but isn't that some kind of scaling of the Riemann rather than the Riemann directly?
##\langle R(u,v)v,u\rangle## is directly the ##R^u_{vuv}## component of the Riemann tensor.
 
  • Like
Likes vanhees71 and Ibix
  • #10
Ibix
Science Advisor
Insights Author
2022 Award
10,355
11,127
Anticipating "don't use Wikipedia as a source", I found this differential geometry specific wiki and this lecture notes pdf which implicitly define that Wikipedia uses ##\langle a,b\rangle## to mean the inner product of ##a## and ##b##. Thus I think the sectional curvature formula above defines the sectional curvature in the plane defined by two vectors ##u^a## and ##v^a## as$$\frac{R^a{}_{bcd}v^bu^cv^du_a}{u_au^av_bv^b-(u_av^a)^2}$$in the index notation I'm familiar with. That can't be right, though, because I only have four linearly independent vectors ##u## and ##v## leading to 4×3=12 independent sectional curvatures, and there are 20 independent components of the Riemann. And both Wiki and the pdf explicitly note that there's no information lost.

I think I'm having an "understanding the notation" issue here, more than anything else. I think I understand how ##g(u,v)## relates to index notation (##g_{ab}u^av^b##), but I also think ##R(u,v)w## means ##R^a{}_{bcd}u^cv^dw^b##, and then I run out of independent components. Any help appreciated.
 
Last edited:
  • #11
Ibix
Science Advisor
Insights Author
2022 Award
10,355
11,127
##\langle R(u,v)v,u\rangle## is directly the ##R^u_{vuv}## component of the Riemann tensor.
Ok, but then I still don't have twenty outputs (edit: I'm assuming four dimensions here), unless I'm miscounting.
 
  • #12
Orodruin
Staff Emeritus
Science Advisor
Homework Helper
Insights Author
Gold Member
20,004
10,661
Ok, but then I still don't have twenty outputs (edit: I'm assuming four dimensions here), unless I'm miscounting.
No, you are correct. Defined as above you do not have any information on components such as ##R^0_{123}##. The information you do have is how vectors in a surface spanned by two vectors are affected by parallel transport around small loops in the same plane. This is missing information on how such a parallel transport affects vectors not in the plane.
 
  • #13
PAllen
Science Advisor
9,046
2,281
Note, in a 4-d Riemannian manifold, 6 sectional curvatures specified per 6 independent basis pairs at each point, allow, in principle, complete determination of the Riemann curvature tensor.
 
  • #14
Ibix
Science Advisor
Insights Author
2022 Award
10,355
11,127
Note, in a 4-d Riemannian manifold, 6 sectional curvatures specified per 6 independent basis pairs at each point, allow, in principle, complete determination of the Riemann curvature tensor.
Sure. I see how you get six basis pairs at a point (it's ##C^4_2##, which is half the 12 I specified earlier because I accidentally double counted) but I don't see how you get six sectional curvatures from each basis pair. The formula given for ##K## seems to be completely fixed by the choice of ##u## and ##v##.
 
  • #15
PAllen
Science Advisor
9,046
2,281
Sure. I see how you get six basis pairs at a point (it's ##C^4_2##, which is half the 12 I specified earlier because I accidentally double counted) but I don't see how you get six sectional curvatures from each basis pair. The formula given for ##K## seems to be completely fixed by the choice of ##u## and ##v##.
Just a terminology inaccuracy on my part. I am calling u and v that determine 'plane' for sectional curvature basis pairs. This is not correct terminology. Really, it is just that sectional curvatures defined by 6 independent pairs of vectors at each point are sufficient to reconstruct the curvature tensor in 4d.
 

Suggested for: Is there a program that can solve for Gaussian curvature of a Metric?

Replies
1
Views
394
  • Last Post
Replies
1
Views
462
  • Last Post
Replies
2
Views
363
Replies
2
Views
426
Replies
7
Views
840
Replies
21
Views
785
  • Last Post
Replies
8
Views
488
Replies
4
Views
1K
Replies
7
Views
411
  • Last Post
Replies
2
Views
422
Top