\begin{gather*}
\begin{align*}
\intertext
{\texttt
{... curvature tensor ...
}
}
\begin{split}
B_{.\,jkm}^i
=
&
+
\frac
{
\partial\Gamma_{jm}^i
}
{
\partial c^k
}
\end{split}    \\
\begin{split}
&
-
\frac
{
\partial\Gamma_{jk}^i
}
{
\partial c^m
}
\end{split}    \\
\begin{split}
&
+
\Gamma_{jm}^a
\Gamma_{ak}^{\,i}
\end{split}    \\
\begin{split}
&
-
\Gamma_{jk}^a
\Gamma_{am}^{\,i}
\end{split}    \\
\end{align*}
\end{gather*}

NB. ... script experimental.ijs ...

B2kt0=:   ((0 3 1|:])"4)@(Gamdc               )
B2kt1=:-@:((0 1 3|:])"4)@(Gamdc               )
B2kt2=:   ((0 2 1|:])"4)@(Gam([smx 0|:])"3 Gam)
B2kt3=:-@:((0 1 2|:])"4)@(Gam([smx 0|:])"3 Gam)

B2k=:B2kt0+B2kt1+B2kt2+B2kt3



\begin{gather*}
\begin{align*}
\intertext
{\texttt
{... a tensor ...
}
}
\begin{split}
(B_x)_{.\,jkm}^i
=
&
\frac
{
\partial x^i
}
{
\partial y^a
}
\frac
{
\partial y^b
}
{
\partial x^j
}
\frac
{
\partial y^c
}
{
\partial x^k
}
\frac
{
\partial y^d
}
{
\partial x^m
}
(B_y)_{\,.\,bcd}^a
\end{split}    \\
\end{align*}
\end{gather*}

NB. ... execute (ijx) ...

   gXcw  =: 1.2  0.3  _    _    _  "_
   gXpAll=: 1.1  1.2  1.3  1.4  1.5"_

   xCpts=:_ 1 3 26,_ 0 1p1 26,_ 0 2p1 26,:_ 0 20 26"_

   vA =:[B2k xRef
   vB0=:((0|:[)smx])"2 4
   vB1=:((0|:[)smx])"2 4
   vB2=:((0|:[)smx])"2 4
   vB3=:((   [)smx])"2 4
   vB =:[(xdy vB3 ydx vB2 ydx vB1 ydx vB0 B2k)yRef

   (gXT([(vA(((2^_44);2^_25)qteq[;])"4 vB)hkxF)]) ((0.1;50"_)pTRandom xCpts)''
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1



\begin{gather*}
\begin{align*}
\intertext
{\texttt
{... derivative of the curvature tensor ...
}
}
\begin{split}
\frac
{
\partial B_{.\,jkm}^i
}
{
\partial c^n
}
=
&
+
\frac
{
\partial^2\Gamma_{jm}^i
}
{
\partial c^k
\partial c^n
}
\end{split}    \\
\begin{split}
&
-
\frac
{
\partial^2\Gamma_{jk}^i
}
{
\partial c^m
\partial c^n
}
\end{split}    \\
\begin{split}
&
+
\Gamma_{jm}^a
\frac
{
\partial\Gamma_{ak}^{\,i}
}
{
\partial c^n
}
\end{split}    \\
\begin{split}
&
+
\frac
{
\partial\Gamma_{jm}^a
}
{
\partial c^n
}
\Gamma_{ak}^{\,i}
\end{split}    \\
\begin{split}
&
-
\Gamma_{jk}^a
\frac
{
\partial\Gamma_{am}^{\,i}
}
{
\partial c^n
}
\end{split}    \\
\begin{split}
&
-
\frac
{
\partial\Gamma_{jk}^a
}
{
\partial c^n
}
\Gamma_{am}^{\,i}
\end{split}    \\
\end{align*}
\end{gather*}

NB. ... script experimental.ijs ...

B2kdct0=:   ((0 3 1 4|:])"5)@(Gamdcdc                        )
B2kdct1=:-@:((0 1 3 4|:])"5)@(Gamdcdc                        )
B2kdct2=:   ((0 2 1 4|:])"5)@(Gam  ((   [)smx 0|:])"3 4 Gamdc)
B2kdct3=:   ((0 3 1 2|:])"5)@(Gamdc((2|:[)smx 0|:])"4 3 Gam  )
B2kdct4=:-@:((0 1 2 4|:])"5)@(Gam  ((   [)smx 0|:])"3 4 Gamdc)
B2kdct5=:-@:((0 1 3 2|:])"5)@(Gamdc((2|:[)smx 0|:])"4 3 Gam  )

B2kdc=:B2kdct0+B2kdct1+B2kdct2+B2kdct3+B2kdct4+B2kdct5

NB. ... execute (ijx) ...

   gXcw  =: 1.2  0.3  _    _    _  "_
   gXpAll=: 1.1  1.2  1.3  1.4  1.5"_

   xCpts=:_ 1 3 26,_ 0 1p1 26,_ 0 2p1 26,:_ 0 20 26"_

   A=:(gXT([B2kdc xRef@hkxF)]) ((0.2;50"_)pTRandom xCpts)''
   B=:(gXT((0|:[:(gXT([(0{])@B2k xRef@hkxF),:@])D.1])"_ 1)]) ((0.2;50"_)pTRandom xCpts)''
   
   A (((2^_44);2^_05)qteq[;])"5 B
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

NB. ... execute (ijx) ...

   gXcw  =: 1.2  0.3  _    _    _  "_
   gXpAll=: 1.1  1.2  1.3  1.4  1.5"_

   yCpts=:__ 0.5 5 8,__ 0.5 5 8,__ 0.5 5 8,:_ 0 20 8"_

   A=:(gXT([B2kdc yRef@hkyF)]) ((0;50"_)pTRandom yCpts)''
   B=:(gXT((0|:[:(gXT([(0{])@B2k yRef@hkyF),:@])D.1])"_ 1)]) ((0;50"_)pTRandom yCpts)''

   A (((2^_44);2^_04)qteq[;])"5 B
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1



\begin{gather*}
\begin{align*}
\intertext
{\texttt
{... covariant derivative of the curvature tensor ...
}
}
\begin{split}
B_{\,.\,jkm\,,\,n}^i
=
&
+
\frac
{
\partial B_{\,.\,jkm}^i
}
{
\partial c^n
}
\end{split}    \\
\begin{split}
&
+
\Gamma_{an}^{\,i}
B_{\,.\,jkm}^a
\end{split}    \\
\begin{split}
&
-
\Gamma_{jn}^a
B_{\,.\,akm}^i
\end{split}    \\
\begin{split}
&
-
\Gamma_{kn}^{\,a}
B_{\,.\,jam}^i
\end{split}    \\
\begin{split}
&
-
\Gamma_{mn}^{\,\,a}
B_{\,.\,jka}^i
\end{split}    \\
\end{align*}
\end{gather*}

NB. ... script experimental.ijs ...

B2kcvt0=:                                             B2kdc
B2kcvt1=:   ((      0|:])"5)@(Gam((0|:[)smx 0|:])"3 4 B2k  )
B2kcvt2=:-@:((0 3 4 1|:])"5)@(Gam((   [)smx 1|:])"3 4 B2k  )
B2kcvt3=:-@:((  0 4 1|:])"5)@(Gam((   [)smx 2|:])"3 4 B2k  )
B2kcvt4=:-@:((    0 1|:])"5)@(Gam((   [)smx    ])"3 4 B2k  )

B2kcv=:B2kcvt0+B2kcvt1+B2kcvt2+B2kcvt3+B2kcvt4



\begin{gather*}
\begin{align*}
\intertext
{\texttt
{... a tensor ...
}
}
\begin{split}
(B_x)_{.\,jkm\,,\,n}^i
=
&
\frac
{
\partial x^i
}
{
\partial y^a
}
\frac
{
\partial y^b
}
{
\partial x^j
}
\frac
{
\partial y^c
}
{
\partial x^k
}
\frac
{
\partial y^d
}
{
\partial x^m
}
\frac
{
\partial y^e
}
{
\partial x^n
}
(B_y)_{\,.\,bcd\,,\,e}^a
\end{split}    \\
\end{align*}
\end{gather*}

NB. ... execute (ijx) ...

   gXcw  =: 1.2  0.3  _    _    _  "_
   gXpAll=: 1.1  1.2  1.3  1.4  1.5"_

   xCpts=:_ 1 3 26,_ 0 1p1 26,_ 0 2p1 26,:_ 0 20 26"_

   vA =:[B2kcv xRef
   vB0=:((0|:[)smx])"2 5
   vB1=:((0|:[)smx])"2 5
   vB2=:((0|:[)smx])"2 5
   vB3=:((0|:[)smx])"2 5
   vB4=:((   [)smx])"2 5
   vB =:[(xdy vB4 ydx vB3 ydx vB2 ydx vB1 ydx vB0 B2kcv)yRef

   (gXT([(vA(((2^_44);2^_24)qteq[;])"5 vB)hkxF)]) ((0.1;50"_)pTRandom xCpts)''
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1



\begin{gather*}
\begin{align*}
\intertext
{\texttt
{...
}
}
\begin{split}
(SB)_{\,.\,jkmn}^i
=
&
S_{km\,.}^{\,\,\,\,\,\,\,\,a}\,
B_{\,.\,jna}^i
\end{split}    \\
\intertext
{\texttt
{...
}
}
\begin{split}
\Lambda_{\,.\,jkmn}^i
=
&
B_{\,.\,jkm\,,\,n}^i
+
B_{\,.\,jmn\,,\,k}^i
+
B_{\,.\,jnk\,,\,m}^i
\end{split}    \\
\begin{split}
\Xi_{\,.\,jkmn}^{\,i}
=
&
(SB)_{\,.\,jkmn}^i
+
(SB)_{\,.\,jmnk}^i
+
(SB)_{\,.\,jnkm}^i
\end{split}    \\
\end{align*}
\end{gather*}

NB. ... script experimental.ijs ...

SBk=:(0 1 4|:])"5@(S smx"3 4 B2k)

Lam=:(]+(2 3|:])+2|:])"5@B2kcv
Xi =:(]+(2 3|:])+2|:])"5@SBk



\begin{gather*}
\begin{align*}
\intertext
{\texttt
{... a tensor ...
}
}
\begin{split}
(\Lambda_x)_{.\,jkmn}^i
=
&
\frac
{
\partial x^i
}
{
\partial y^a
}
\frac
{
\partial y^b
}
{
\partial x^j
}
\frac
{
\partial y^c
}
{
\partial x^k
}
\frac
{
\partial y^d
}
{
\partial x^m
}
\frac
{
\partial y^e
}
{
\partial x^n
}
(\Lambda_y)_{\,.\,bcde}^a
\end{split}    \\
\end{align*}
\end{gather*}

NB. ... execute (ijx) ...

   gXcw  =: 1.2  0.3  _    _    _  "_
   gXpAll=: 1.1  1.2  1.3  1.4  1.5"_

   xCpts=:_ 1 3 26,_ 0 1p1 26,_ 0 2p1 26,:_ 0 20 26"_

   vA =:[Lam xRef
   vB0=:((0|:[)smx])"2 5
   vB1=:((0|:[)smx])"2 5
   vB2=:((0|:[)smx])"2 5
   vB3=:((0|:[)smx])"2 5
   vB4=:((   [)smx])"2 5
   vB =:[(xdy vB4 ydx vB3 ydx vB2 ydx vB1 ydx vB0 Lam)yRef

   (gXT([(vA(((2^_44);2^_24)qteq[;])"5 vB)hkxF)]) ((0.2;50"_)pTRandom xCpts)''
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1



\begin{gather*}
\begin{align*}
\intertext
{\texttt
{... a tensor ...
}
}
\begin{split}
(\Xi_x)_{.\,jkmn}^i
=
&
\frac
{
\partial x^i
}
{
\partial y^a
}
\frac
{
\partial y^b
}
{
\partial x^j
}
\frac
{
\partial y^c
}
{
\partial x^k
}
\frac
{
\partial y^d
}
{
\partial x^m
}
\frac
{
\partial y^e
}
{
\partial x^n
}
(\Xi_y)_{\,.\,bcde}^a
\end{split}    \\
\end{align*}
\end{gather*}

NB. ... execute (ijx) ...

   gXcw  =: 1.2  0.3  _    _    _  "_
   gXpAll=: 1.1  1.2  1.3  1.4  1.5"_

   xCpts=:_ 1 3 26,_ 0 1p1 26,_ 0 2p1 26,:_ 0 20 26"_

   vA =:[Xi xRef
   vB0=:((0|:[)smx])"2 5
   vB1=:((0|:[)smx])"2 5
   vB2=:((0|:[)smx])"2 5
   vB3=:((0|:[)smx])"2 5
   vB4=:((   [)smx])"2 5
   vB =:[(xdy vB4 ydx vB3 ydx vB2 ydx vB1 ydx vB0 Xi)yRef

   (gXT([(vA(((2^_44);2^_29)qteq[;])"5 vB)hkxF)]) ((0.1;50"_)pTRandom xCpts)''
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1



\begin{gather*}
\begin{align*}
\intertext
{\texttt
{... Bianchi Identity ...
}
}
\begin{split}
&
\Lambda_{.\,jkmn}^i
+
\Xi_{.\,jkmn}^i
=
0
\end{split}    \\
\end{align*}
\end{gather*}

NB. ... execute (ijx) ...

   gXcw  =: 1.2  0.3  _    _    _  "_
   gXpAll=: 1.1  1.2  1.3  1.4  1.5"_

   xCpts=:_ 1 3 26,_ 0 1p1 26,_ 0 2p1 26,:_ 0 20 26"_

NB. ... for Bianchi Identity ...

   *./^:5"5 (0=]) ((2^_43)qtsz]) (gXT([(Lam+Xi)xRef@hkxF)]) ((0.1;50"_)pTRandom xCpts)''
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

   *./^:5"5 (0=]) ((2^_44)qtsz]) (gXT([(Lam+Xi)yRef@hkxF)]) ((0.1;50"_)pTRandom xCpts)''
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

NB. ... or ...

   (gXT([(Lam(((2^_43);2^_22)qteq[;])"5 -@Xi)xRef@hkxF)]) ((0.1;50"_)pTRandom xCpts)''
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

   (gXT([(Lam(((2^_44);2^_25)qteq[;])"5 -@Xi)yRef@hkxF)]) ((0.1;50"_)pTRandom xCpts)''
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

TomAllen/Experimental15 (last edited 2012-05-07 02:17:13 by TomAllen)