Notation:
Aa,b = ∂Aa/∂xb and
Ai,j = ∂Ai/∂xj
Aa;b = ∇bAa
The idea here is to write the simplest program to carry out the computation explicit in these equations:
∂tgab = −2αKab + ∇aβb + ∇bβa
∂tKab
= −∇a∇bα + α(Rab + KabK − 2KacKcb)
+ βc∇cKab
+ Kca∇bβc
+ Kcb∇aβc
By simplest I presume to minimize the effort to understand the program and see that it is indeed doing the intended calculation.
We must compute the Christoffel symbols:
Γikl
= (1/2)gim(gmk,l + gml,k − gkl,m)
and for that we need gim — the inverse of the metric tensor.
With these values the covariant derivative is:
∇aβb = βb;a = ∂βb/∂xa − Γcabβc
along with the other familiar equations.
Taking simple derivatives of field values with respect to spacial coordinates is fraught with centering issues. I plan to use the simplest centering, j, k, l < n} schemes and document how each value is centered within the computational zone.
For familiarity I assume calculations on a mesh [0:n]4 = {(i, j, k, l) | 0 ≤ i, j, k, l < n}. Posit: gab values kept for lattice points. Tentatively we keep Kab there too.