static void TestBianchiIdentities(LorentzMatrixUU F, LorentzVectorOperatorU del) { for (int i = 0; i < 4; i++) { for (int j = 0; j < 4; j++) { for (int k = 0; k < 4; k++) { Assert.AreEqual(del[i] * F[j, k] + del[j] * F[k, i] + del[k] * F[i, j], Symbol.Zero, string.Format("Bianchi {0} {1} {2}", i, j, k)); } } } }
static void TestFieldStrength(LorentzMatrixUU F, EuclideanVector3 E, EuclideanVector3 B) { Assert.AreEqual(F[0, 0], Symbol.Zero, "F[0, 0]"); Assert.AreEqual(F[0, 1], E[0], "F[0, 1]"); Assert.AreEqual(F[0, 2], E[1], "F[0, 2]"); Assert.AreEqual(F[0, 3], E[2], "F[0, 3]"); Assert.AreEqual(F[1, 0], -E[0], "F[1, 0]"); Assert.AreEqual(F[1, 1], Symbol.Zero, "F[1, 1]"); Assert.AreEqual(F[1, 2], B[2], "F[1, 2]"); Assert.AreEqual(F[1, 3], -B[1], "F[1, 3]"); Assert.AreEqual(F[2, 0], -E[1], "F[2, 0]"); Assert.AreEqual(F[2, 1], -B[2], "F[2, 1]"); Assert.AreEqual(F[2, 2], Symbol.Zero, "F[2, 2]"); Assert.AreEqual(F[2, 3], B[0], "F[2, 3]"); Assert.AreEqual(F[3, 0], -E[2], "F[3, 0]"); Assert.AreEqual(F[3, 1], B[1], "F[3, 1]"); Assert.AreEqual(F[3, 2], -B[0], "F[3, 2]"); Assert.AreEqual(F[3, 3], Symbol.Zero, "F[3, 3]"); }