How about something along these lines:
Clear[coord, metric, inversemetric, affine, r, \[Theta], t];
n = 3;
coord = {r, \[Theta], t};
metric = {{(1 - 2 m/r)^(-1), 0, 0}, {0, r^2, 0}, {0, 0, -(1 - 2 m/r)}};
metric // MatrixForm
inversemetric = Simplify[Inverse[metric]];
inversemetric // MatrixForm
affine := affine = Simplify[Table[(1/2)*Sum[(inversemetric[[i, s]])*
(D[metric[[s, j]], coord[[k]] ] +
D[metric[[s, k]], coord[[j]] ] -
D[metric[[j, k]], coord[[s]] ]), {s, 1, n}],
{i, 1, n}, {j, 1, n}, {k, 1, n}] ]
listaffine :=
Table[If[UnsameQ[affine[[i, j, k]],
0], {ToString[\[CapitalGamma][(i - 1), (j - 1), (k - 1)]],
affine[[i, j, k]]}] , {i, 1, n}, {j, 1, n}, {k, 1, j}]
TableForm[Partition[DeleteCases[Flatten[listaffine], Null], 2],
TableSpacing -> {2, 2}]
\[CapitalGamma]^kuseSuperscript[\[CapitalGamma], k]. – Artes May 08 '13 at 17:20Doon its own can be used for nested loops. No need to repeatDothree times. – Sjoerd C. de Vries May 08 '13 at 17:30n=2and enumerate metric tensor inices with1and2like in standard riemannian geometry. – Artes May 08 '13 at 17:48\Superscript, not merely^. – merv May 08 '13 at 17:49