? scurvature;

Calculate

? scurvature;

Calculate

### scurvature

Run Example
```(%i1)load(ctensor);
(%o1)          /usr/share/maxima/5.21.1/share/tensor/ctensor.mac
(%i2) ct_coords:[t,r,theta,phi];
(%o2)                         [t, r, theta, phi]
(%i3) lg:matrix([-exp(-2*A/r),0,0,0],[0,1,0,0],[0,0,exp(-2*A/r)*r^2,0],[0,0,0,exp(-2*A/r)*r^2*sin(theta)^2]);
[       2 A                                        ]
[     - ---                                        ]
[        r                                         ]
[ - %e       0      0                 0            ]
[                                                  ]
[     0      1      0                 0            ]
[                                                  ]
(%o3)        [                      2 A                         ]
[                    - ---                         ]
[                2      r                          ]
[     0      0  r  %e                 0            ]
[                                                  ]
[                                              2 A ]
[                                            - --- ]
[                            2    2             r  ]
[     0      0      0       r  sin (theta) %e      ]
(%i4) ug:matrix([-exp(2*A/r),0,0,0],[0,1,0,0],[0,0,exp(2*A/r)/r^2,0],[0,0,0,exp(2*A/r)/(r^2*sin(theta)^2)]);
[     2 A                           ]
[     ---                           ]
[      r                            ]
[ - %e     0    0          0        ]
[                                   ]
[    0     1    0          0        ]
[                                   ]
[               2 A                 ]
[               ---                 ]
[                r                  ]
(%o4)                [             %e                    ]
[    0     0  -----        0        ]
[               2                   ]
[              r                    ]
[                                   ]
[                          2 A      ]
[                          ---      ]
[                           r       ]
[                        %e         ]
[    0     0    0    -------------- ]
[                     2    2        ]
[                    r  sin (theta) ]
(%i5) christof(mcs);
2 A
- ---
r
A %e
(%t5)                       mcs        = ---------
1, 1, 2       2
r

A
(%t6)                           mcs        = --
1, 2, 1    2
r

A + r
(%t7)                         mcs        = -----
2, 3, 3     2
r

A + r
(%t8)                         mcs        = -----
2, 4, 4     2
r

2 A
- ---
r
(%t9)                   mcs        = - (A + r) %e
3, 3, 2

cos(theta)
(%t10)                      mcs        = ----------
3, 4, 4   sin(theta)

2 A
- ---
2                 2              r
(%t11)      mcs        = - (sin (theta) A + r sin (theta)) %e
4, 4, 2

(%t12)               mcs        = - cos(theta) sin(theta)
4, 4, 3

(%o12)                               done
(%i13) riemann(true);
2 A          2 A
- ---        - ---
r     2      r
2 A %e        A  %e
(%t13)             riem           = ----------- - ----------
1, 2, 1, 2        3             4
r             r

2 A
- ---
r
A (A + r) %e
(%t14)               riem           = - -----------------
1, 3, 1, 3             4
r

2 A
- ---
r
A (A + r) %e
(%t15)               riem           = - -----------------
1, 4, 1, 4             4
r

2
A  - 2 r A
(%t16)                   riem           = - ----------
2, 2, 1, 1          4
r

2
(A + r)    2 (A + r)   1
(%t17)            riem           = -------- - --------- + --
2, 3, 2, 3       4          3        2
r          r        r

2
(A + r)    2 (A + r)   1
(%t18)            riem           = -------- - --------- + --
2, 4, 2, 4       4          3        2
r          r        r

2 A
- ---
2             r
(A  + r A) %e
(%t19)               riem           = - ------------------
3, 3, 1, 1              2
r

2 A
- ---
2      r
A  %e
(%t20)                   riem           = - ----------
3, 3, 2, 2          2
r

2 A
- ---
2      r
(A + r)  %e
(%t21)               riem           = ---------------- - 1
3, 4, 3, 4           2
r

2 A
- ---
2         2        2                r
(sin (theta) A  + r sin (theta) A) %e
(%t22)   riem           = - ------------------------------------------
4, 4, 1, 1                          2
r

2 A
- ---
2         2      r
sin (theta) A  %e
(%t23)             riem           = - ----------------------
4, 4, 2, 2                2
r

2 A                   2 A
- ---                   ---
r    2    2           r       2         2
(%t24) riem           = (%e      (r  sin (theta) %e    - sin (theta) A
4, 4, 3, 3
2             2    2           2
- 2 r sin (theta) A - r  sin (theta)))/r

(%o24)                               done
(%i25) ricci(true);
2 A                   2 A           2 A
- ---                 - ---         - ---
2      r                     r             r
A  %e        2 A (A + r) %e        2 A %e
(%t25)     ric     = ---------- + ------------------- - -----------
1, 1        4                4                 3
r                r                 r

2    2
2 (A + r)    A    4 (A + r)   2 A   2
(%t26)        ric     = - ---------- - -- + --------- + --- - --
2, 2          4        4       3        3     2
r        r       r        r     r

2 A
- ---       2 A
r      - ---
3 A (A + r) %e             r
(%t27)           ric     = - ------------------- - %e      + 1
3, 3              2
r

2 A
- ---
2                 2              r
3 A (sin (theta) A + r sin (theta)) %e
(%t28) ric     = - -------------------------------------------
4, 4                          2
r
2 A
- ---
2             r       2
- sin (theta) %e      + sin (theta)

(%o28)                               done
(%i29) R:scurvature();
2 A                   2 A           2 A
- ---                 - ---         - ---    2 A
2      r                     r             r     ---
A  %e        2 A (A + r) %e        2 A %e          r
(%o29) - (---------- + ------------------- - -----------) %e
4                4                 3
r                r                 r
2 A
- ---                   2 A
2                 2              r                  - ---
3 A (sin (theta) A + r sin (theta)) %e           2             r
+ ((- ------------------------------------------- - sin (theta) %e
2
r
2 A
---
2            r     2    2
+ sin (theta)) %e   )/(r  sin (theta))
2 A
- ---       2 A        2 A
r      - ---        ---
3 A (A + r) %e             r          r
(- ------------------- - %e      + 1) %e
2                                          2    2
r                                  2 (A + r)    A    4 (A + r)
+ ------------------------------------------- - ---------- - -- + ---------
2                             4        4       3
r                             r        r       r
2 A   2
+ --- - --
3     2
r     r
(%i30) einstein(true);
2 A
---
2    r       2            2
r  %e    - 3 A  - 2 r A - r
(%t30)             ein     = - ----------------------------
1, 1                   4
r

2 A
---
2    r       2            2
r  %e    - 3 A  - 4 r A - r
(%t31)             ein     = - ----------------------------
2, 2                   4
r

2
3 A  - r A
(%t32)                       ein     = ----------
3, 3        4
r

2
3 A  - r A
(%t33)                       ein     = ----------
4, 4        4
r

(%o33)                               done
(%i34) ```
Run Example
```load(ctensor);
(%o1)          /usr/share/maxima/5.21.1/share/tensor/ctensor.mac
(%i2) (cframe_flag:false,gcd:spmod,ctrgsimp:true,ratfac:true);
(%o2)                                true
(%i3) lg:diag_matrix(-1,2,r^2,(sin(%theta)*r)^2);
[ - 1  0  0          0        ]
[                             ]
[  0   2  0          0        ]
[                             ]
(%o3)                   [          2                  ]
[  0   0  r          0        ]
[                             ]
[                2          2 ]
[  0   0  0   sin (%theta) r  ]
(%i4) ct_coords:[t,r,%theta,%phi];
(%o4)                        [t, r, %theta, %phi]
(%i5) depends(%nu,[r,t],%lambda,[r,t]);
(%o5)                     [%nu(r, t), %lambda(r, t)]
(%i6) cmetric(false);
(%o6)                                done
(%i7) christof(mcs);
1
(%t7)                           mcs        = -
2, 3, 3   r

1
(%t8)                           mcs        = -
2, 4, 4   r

r
(%t9)                          mcs        = - -
3, 3, 2     2

cos(%theta)
(%t10)                     mcs        = -----------
3, 4, 4   sin(%theta)

2
sin (%theta) r
(%t11)                   mcs        = - --------------
4, 4, 2           2

(%t12)              mcs        = - cos(%theta) sin(%theta)
4, 4, 3

(%o12)                               done
(%i13)  riemann(true);
1
(%t13)                       riem           = - -
3, 4, 3, 4     2

2
sin (%theta)
(%t14)                   riem           = ------------
4, 4, 3, 3        2

(%o14)                               done
(%i15) ricci(true);
1
(%t15)                            ric     = -
3, 3   2

2
sin (%theta)
(%t16)                      ric     = ------------
4, 4        2

(%o16)                               done
(%i17) R:scurvature();
1
(%o17)                                --
2
r
(%i18) ```
Run Example
```/*  Schwarzschild simplesave as name.macLoad from the file menu - >
File|Batch file*/kill(all);
(%o0)                                done
(%o1)          /usr/share/maxima/5.21.1/share/tensor/ctensor.mac
(%i2) /* set some flags */cframe_flag: false;
(%o2)                                false
(%i3) ratchristof: true;
(%o3)                                true
(%i4) ratriemann : true;
(%o4)                                true
(%i5) ratfac : true;
(%o5)                                true
(%i6) ctrgsimp: true;
(%o6)                                true
(%i7) /* define the dimension */dim: 4;
(%o7)                                  4
(%i8) /* list the coordinates */ct_coords: [t,x,y,z];
(%o8)                            [t, x, y, z]
(%i9) /* set up the metric *//* assign to lg a matrix of zeros  ':' means 'assign' */lg:zeromatrix(4,4);
[ 0  0  0  0 ]
[            ]
[ 0  0  0  0 ]
(%o9)                           [            ]
[ 0  0  0  0 ]
[            ]
[ 0  0  0  0 ]
(%i10) /* now add the Schwarzschild coefficients */lg[1,1]:1;
(%o10)                                 1
(%i11) lg[2,2]:-1;
(%o11)                                - 1
(%i12) lg[3,3]:-(1+f(t-x))^2;
2
(%o12)                         - (f(t - x) + 1)
(%i13) lg[4,4]:-(1+g(t-x))^2;
2
(%o13)                         - (g(t - x) + 1)
(%i14) /* make the inverse matrix */ug:invert(lg);
[ 1   0           0                  0         ]
[                                              ]
[ 0  - 1          0                  0         ]
[                                              ]
[                  1                           ]
[ 0   0   - ---------------          0         ]
(%o14)         [                         2                    ]
[           (f(t - x) + 1)                     ]
[                                              ]
[                                     1        ]
[ 0   0           0          - --------------- ]
[                                            2 ]
[                              (g(t - x) + 1)  ]
(%i15) /* get Christoffels */christof(mcs);
d
-- (f(t - x))
dt
(%t15)                    mcs        = -------------
1, 3, 3   f(t - x) + 1

d
-- (g(t - x))
dt
(%t16)                    mcs        = -------------
1, 4, 4   g(t - x) + 1

d
-- (f(t - x))
dx
(%t17)                    mcs        = -------------
2, 3, 3   f(t - x) + 1

d
-- (g(t - x))
dx
(%t18)                    mcs        = -------------
2, 4, 4   g(t - x) + 1

d
(%t19)            mcs        = (-- (f(t - x))) (f(t - x) + 1)
3, 3, 1    dt

d
(%t20)           mcs        = - (-- (f(t - x))) (f(t - x) + 1)
3, 3, 2      dx

d
(%t21)            mcs        = (-- (g(t - x))) (g(t - x) + 1)
4, 4, 1    dt

d
(%t22)           mcs        = - (-- (g(t - x))) (g(t - x) + 1)
4, 4, 2      dx

(%o22)                               done
(%i23) /* calculate and display Ricci tensor, ( 'dis' = true ) */ricci(true);
2                           2
d                           d
(%t23) ric     = - ((--- (f(t - x))) g(t - x) + (--- (g(t - x))) f(t - x)
1, 1         2                           2
dt                          dt
2                2
d                d
+ --- (g(t - x)) + --- (f(t - x)))/((f(t - x) + 1) (g(t - x) + 1))
2                2
dt               dt

2                             2
d                             d
(%t24) ric     = - ((----- (f(t - x))) g(t - x) + (----- (g(t - x))) f(t - x)
1, 2       dt dx                         dt dx
2                  2
d                  d
+ ----- (g(t - x)) + ----- (f(t - x)))/((f(t - x) + 1) (g(t - x) + 1))
dt dx              dt dx

2                           2
d                           d
(%t25) ric     = - ((--- (f(t - x))) g(t - x) + (--- (g(t - x))) f(t - x)
2, 2         2                           2
dx                          dx
2                2
d                d
+ --- (g(t - x)) + --- (f(t - x)))/((f(t - x) + 1) (g(t - x) + 1))
2                2
dx               dx

2
d
(%t26) ric     = - ((f(t - x) + 1) ((--- (f(t - x))) g(t - x)
3, 3                         2
dx
2
d                           d               d
- (--- (f(t - x))) g(t - x) + (-- (f(t - x))) (-- (g(t - x)))
2                         dx              dx
dt
2                2
d               d                d                d
- (-- (f(t - x))) (-- (g(t - x))) + --- (f(t - x)) - --- (f(t - x))))
dt              dt                 2                2
dx               dt
/(g(t - x) + 1)

2                           2
d                           d
(%t27) ric     = - (((--- (g(t - x))) f(t - x) - (--- (g(t - x))) f(t - x)
4, 4          2                           2
dx                          dt
2                                                  2
d                 d               d                d
+ --- (g(t - x)) + (-- (f(t - x))) (-- (g(t - x))) - --- (g(t - x))
2               dx              dx                 2
dx                                                 dt
d               d
- (-- (f(t - x))) (-- (g(t - x)))) (g(t - x) + 1))/(f(t - x) + 1)
dt              dt

(%o27)                               done
(%i28) /* Riemann with all indexes down */lriemann(true);
2
d
(%t28)         lriem           = (--- (f(t - x))) (f(t - x) + 1)
3, 3, 1, 1      2
dt

2
d
(%t29)        lriem           = (----- (f(t - x))) (f(t - x) + 1)
3, 3, 1, 2    dt dx

2
d
(%t30)        lriem           = (----- (f(t - x))) (f(t - x) + 1)
3, 3, 2, 1    dt dx

2
d
(%t31)         lriem           = (--- (f(t - x))) (f(t - x) + 1)
3, 3, 2, 2      2
dx

2
d
(%t32)         lriem           = (--- (g(t - x))) (g(t - x) + 1)
4, 4, 1, 1      2
dt

2
d
(%t33)        lriem           = (----- (g(t - x))) (g(t - x) + 1)
4, 4, 1, 2    dt dx

2
d
(%t34)        lriem           = (----- (g(t - x))) (g(t - x) + 1)
4, 4, 2, 1    dt dx

2
d
(%t35)         lriem           = (--- (g(t - x))) (g(t - x) + 1)
4, 4, 2, 2      2
dx

d               d
(%t36) lriem           = ((-- (f(t - x))) (-- (g(t - x)))
4, 4, 3, 3     dx              dx
d               d
- (-- (f(t - x))) (-- (g(t - x)))) (f(t - x) + 1) (g(t - x) + 1)
dt              dt

(%o36)                               done
(%i37) /* Riemann with all indexes up */uriemann(false);
(%o37)                               done
(%i38) /* calculate Einstein tensor */einstein(false);
(%o38)                               done
(%i39) /* show Einstein tensor as a matrix */cdisplay(ein);
2                           2
d                           d
ein = matrix([- ((--- (f(t - x))) g(t - x) + (--- (g(t - x))) f(t - x)
2                           2
dx                          dx
2
d                 d               d
+ --- (g(t - x)) + (-- (f(t - x))) (-- (g(t - x)))
2               dx              dx
dx
2
d               d                d
- (-- (f(t - x))) (-- (g(t - x))) + --- (f(t - x)))
dt              dt                 2
dx
2
d
/((f(t - x) + 1) (g(t - x) + 1)), ((----- (f(t - x))) g(t - x)
dt dx
2                            2                  2
d                            d                  d
+ (----- (g(t - x))) f(t - x) + ----- (g(t - x)) + ----- (f(t - x)))
dt dx                        dt dx              dt dx
/((f(t - x) + 1) (g(t - x) + 1)), 0, 0],
2                             2
d                             d
[- ((----- (f(t - x))) g(t - x) + (----- (g(t - x))) f(t - x)
dt dx                         dt dx
2                  2
d                  d
+ ----- (g(t - x)) + ----- (f(t - x)))/((f(t - x) + 1) (g(t - x) + 1)),
dt dx              dt dx
2                           2
d                           d
((--- (f(t - x))) g(t - x) + (--- (g(t - x))) f(t - x)
2                           2
dt                          dt
2
d               d                d
- (-- (f(t - x))) (-- (g(t - x))) + --- (g(t - x))
dx              dx                 2
dt
2
d               d                d
+ (-- (f(t - x))) (-- (g(t - x))) + --- (f(t - x)))
dt              dt                 2
dt
/((f(t - x) + 1) (g(t - x) + 1)), 0, 0],
2                2
d                d
--- (g(t - x)) - --- (g(t - x))
2                2
dx               dt
[0, 0, - -------------------------------, 0],
g(t - x) + 1
2                2
d                d
--- (f(t - x)) - --- (f(t - x))
2                2
dx               dt
[0, 0, 0, - -------------------------------])
f(t - x) + 1

(%o39)                               done
(%i40) /* ricci curvature */scurvature();
2                           2
d                           d
(%o40) (2 ((--- (f(t - x))) g(t - x) - (--- (f(t - x))) g(t - x)
2                           2
dx                          dt
2                           2                          2
d                           d                          d
+ (--- (g(t - x))) f(t - x) - (--- (g(t - x))) f(t - x) + --- (g(t - x))
2                           2                          2
dx                          dt                         dx
2
d               d                d
+ (-- (f(t - x))) (-- (g(t - x))) - --- (g(t - x))
dx              dx                 2
dt
2                2
d               d                d                d
- (-- (f(t - x))) (-- (g(t - x))) + --- (f(t - x)) - --- (f(t - x))))
dt              dt                 2                2
dx               dt
/((f(t - x) + 1) (g(t - x) + 1))
(%i41) /* Kretschmann scalar */rinvariant();
d               d                 d               d              2
4 ((-- (f(t - x))) (-- (g(t - x))) - (-- (f(t - x))) (-- (g(t - x))))
dx              dx                dt              dt
(%o41) ----------------------------------------------------------------------
2               2
(f(t - x) + 1)  (g(t - x) + 1)
2                     2
d              2      d              2        2
4 (--- (g(t - x)))    4 (--- (g(t - x)))        d               2
2                     2                8 (----- (g(t - x)))
dx                    dt                    dt dx
+ ------------------- + ------------------- - ---------------------
2                     2                      2
(g(t - x) + 1)        (g(t - x) + 1)         (g(t - x) + 1)
2                     2
d              2      d              2        2
4 (--- (f(t - x)))    4 (--- (f(t - x)))        d               2
2                     2                8 (----- (f(t - x)))
dx                    dt                    dt dx
+ ------------------- + ------------------- - ---------------------
2                     2                      2
(f(t - x) + 1)        (f(t - x) + 1)         (f(t - x) + 1)
(%i42) /* Geodesic equations */cgeodesic(true);
d                        dz 2    d               dz 2
(%t42) geod  = (-- (g(t - x))) g(t - x) (--)  + (-- (g(t - x))) (--)
1    dt                       ds      dt              ds
2
d                        dy 2    d               dy 2   d t
+ (-- (f(t - x))) f(t - x) (--)  + (-- (f(t - x))) (--)  + ---
dt                       ds      dt              ds       2
ds

d                        dz 2    d               dz 2
(%t43) geod  = - ((-- (g(t - x))) g(t - x) (--)  + (-- (g(t - x))) (--)
2       dx                       ds      dx              ds
2
d                        dy 2    d               dy 2   d x
+ (-- (f(t - x))) f(t - x) (--)  + (-- (f(t - x))) (--)  - ---)
dx                       ds      dx              ds       2
ds

d                        dz 2    d               dz 2
(%t44) geod  = - ((-- (g(t - x))) g(t - x) (--)  + (-- (g(t - x))) (--)
3       dy                       ds      dy              ds
2
d                       dy dz      d              dy dz    2        d y
- 2 (-- (f(t - x))) f(t - x) -- -- - 2 (-- (f(t - x))) -- -- - f (t - x) ---
dz                      ds ds      dz             ds ds               2
ds
2     2
d y   d y    d                        dy 2
- 2 f(t - x) --- - --- - (-- (f(t - x))) f(t - x) (--)
2     2    dy                       ds
ds    ds
d               dy 2      d                       dx dy
- (-- (f(t - x))) (--)  - 2 (-- (f(t - x))) f(t - x) -- --
dy              ds        dx                      ds ds
d              dx dy     dt  d                       dy
- 2 (-- (f(t - x))) -- -- - 2 -- (-- (f(t - x))) f(t - x) --
dx             ds ds     ds  dt                      ds
dt  d              dy                2
- 2 -- (-- (f(t - x))) --)/(f(t - x) + 1)
ds  dt             ds

2                2     2
2        d z              d z   d z
(%t45) geod  = (g (t - x) --- + 2 g(t - x) --- + ---
4                2                2     2
ds               ds    ds
d                        dz 2    d               dz 2
+ (-- (g(t - x))) g(t - x) (--)  + (-- (g(t - x))) (--)
dz                       ds      dz              ds
d                       dy dz      d              dy dz
+ 2 (-- (g(t - x))) g(t - x) -- -- + 2 (-- (g(t - x))) -- --
dy                      ds ds      dy             ds ds
d                       dx dz      d              dx dz
+ 2 (-- (g(t - x))) g(t - x) -- -- + 2 (-- (g(t - x))) -- --
dx                      ds ds      dx             ds ds
dt  d                       dz     dt  d              dz
+ 2 -- (-- (g(t - x))) g(t - x) -- + 2 -- (-- (g(t - x))) --
ds  dt                      ds     ds  dt             ds
d                        dy 2    d               dy 2                2
- (-- (f(t - x))) f(t - x) (--)  - (-- (f(t - x))) (--) )/(g(t - x) + 1)
dz                       ds      dz              ds

(%o45)                               done
(%i46) ```

### Related Help

Help for Scurvature