8{
12
17
21
22
50
78
106
107
124
137 "levi_civita(0,1,p,q)(2,3)");
141 "levi_civita(0,1,p,q)(3,2)");
143
152 "levi_civita(0,2,p,q)(1,3)");
159 "levi_civita(0,2,p,q)(3,1)");
162
170 "levi_civita(0,3,p,q)(1,2)");
174 "levi_civita(0,3,p,q)(2,1)");
181
194 "levi_civita(1,0,p,q)(2,3)");
198 "levi_civita(1,0,p,q)(3,2)");
200
217
222 "levi_civita(1,2,p,q)(0,3)");
232 "levi_civita(1,2,p,q)(3,0)");
236
240 "levi_civita(1,3,p,q)(0,2)");
247 "levi_civita(1,3,p,q)(2,0)");
255
264 "levi_civita(2,0,p,q)(1,3)");
271 "levi_civita(2,0,p,q)(3,1)");
274
279 "levi_civita(2,1,p,q)(0,3)");
289 "levi_civita(2,1,p,q)(3,0)");
293
310
313 "levi_civita(2,3,p,q)(0,1)");
317 "levi_civita(2,3,p,q)(1,0)");
329
337 "levi_civita(3,0,p,q)(1,2)");
341 "levi_civita(3,0,p,q)(2,1)");
348
352 "levi_civita(3,1,p,q)(0,2)");
359 "levi_civita(3,1,p,q)(2,0)");
367
370 "levi_civita(3,2,p,q)(0,1)");
374 "levi_civita(3,2,p,q)(1,0)");
386
403
420
433 "levi_civita(0,n,1,q)(2,3)");
437 "levi_civita(0,o,1,q)(3,2)");
439
448 "levi_civita(0,o,2,q)(1,3)");
455 "levi_civita(0,o,2,q)(3,1)");
458
466 "levi_civita(0,o,3,q)(1,2)");
470 "levi_civita(0,o,3,q)(2,1)");
477
490 "levi_civita(1,o,0,q)(2,3)");
494 "levi_civita(1,o,0,q)(3,2)");
496
513
518 "levi_civita(1,o,2,q)(0,3)");
528 "levi_civita(1,o,2,q)(3,0)");
532
536 "levi_civita(1,o,3,q)(0,2)");
543 "levi_civita(1,o,3,q)(2,0)");
551
560 "levi_civita(2,o,0,q)(1,3)");
567 "levi_civita(2,o,0,q)(3,1)");
570
575 "levi_civita(2,o,1,q)(0,3)");
585 "levi_civita(2,o,1,q)(3,0)");
589
606
609 "levi_civita(2,o,3,q)(0,1)");
613 "levi_civita(2,o,3,q)(1,0)");
625
633 "levi_civita(3,o,0,q)(1,2)");
637 "levi_civita(3,o,0,q)(2,1)");
644
648 "levi_civita(3,o,1,q)(0,2)");
655 "levi_civita(3,o,1,q)(2,0)");
663
666 "levi_civita(3,o,2,q)(0,1)");
670 "levi_civita(3,o,2,q)(1,0)");
682
699
716
732 "levi_civita(0,o,p,1)(3,2)");
734
743 "levi_civita(0,o,p,2)(1,3)");
750 "levi_civita(0,o,p,2)(3,1)");
753
761 "levi_civita(0,o,p,3)(1,2)");
765 "levi_civita(0,o,p,3)(2,1)");
772
785 "levi_civita(1,o,p,0)(2,3)");
789 "levi_civita(1,o,p,0)(3,2)");
791
808
813 "levi_civita(1,o,p,2)(0,3)");
823 "levi_civita(1,o,p,2)(3,0)");
827
831 "levi_civita(1,o,p,3)(0,2)");
838 "levi_civita(1,o,p,3)(2,0)");
846
855 "levi_civita(2,o,p,0)(1,3)");
862 "levi_civita(2,o,p,0)(3,1)");
865
870 "levi_civita(2,o,p,1)(0,3)");
880 "levi_civita(2,o,p,1)(3,0)");
884
901
904 "levi_civita(2,o,p,3)(0,1)");
908 "levi_civita(2,o,p,3)(1,0)");
920
928 "levi_civita(3,o,p,0)(1,2)");
932 "levi_civita(3,o,p,0)(2,1)");
939
943 "levi_civita(3,o,p,1)(0,2)");
950 "levi_civita(3,o,p,1)(2,0)");
958
961 "levi_civita(3,o,p,2)(0,1)");
965 "levi_civita(3,o,p,2)(1,0)");
977
994
1011
1024 "levi_civita(n,0,n,1,q)(2,3)");
1028 "levi_civita(n,0,1,q)(3,2)");
1030
1039 "levi_civita(n,0,2,q)(1,3)");
1046 "levi_civita(n,0,2,q)(3,1)");
1049
1057 "levi_civita(n,0,3,q)(1,2)");
1061 "levi_civita(n,0,3,q)(2,1)");
1068
1081 "levi_civita(n,1,0,q)(2,3)");
1085 "levi_civita(n,1,0,q)(3,2)");
1087
1104
1109 "levi_civita(n,1,2,q)(0,3)");
1119 "levi_civita(n,1,2,q)(3,0)");
1123
1127 "levi_civita(n,1,3,q)(0,2)");
1134 "levi_civita(n,1,3,q)(2,0)");
1142
1151 "levi_civita(n,2,0,q)(1,3)");
1158 "levi_civita(n,2,0,q)(3,1)");
1161
1166 "levi_civita(n,2,1,q)(0,3)");
1176 "levi_civita(n,2,1,q)(3,0)");
1180
1197
1200 "levi_civita(n,2,3,q)(0,1)");
1204 "levi_civita(n,2,3,q)(1,0)");
1216
1224 "levi_civita(n,3,0,q)(1,2)");
1228 "levi_civita(n,3,0,q)(2,1)");
1235
1239 "levi_civita(n,3,1,q)(0,2)");
1246 "levi_civita(n,3,1,q)(2,0)");
1254
1257 "levi_civita(n,3,2,q)(0,1)");
1261 "levi_civita(n,3,2,q)(1,0)");
1273
1290
1307
1320 "levi_civita(n,0,n,1)(2,3)");
1324 "levi_civita(n,0,p,1)(3,2)");
1326
1335 "levi_civita(n,0,p,2)(1,3)");
1342 "levi_civita(n,0,p,2)(3,1)");
1345
1353 "levi_civita(n,0,p,3)(1,2)");
1357 "levi_civita(n,0,p,3)(2,1)");
1364
1377 "levi_civita(n,1,p,0)(2,3)");
1381 "levi_civita(n,1,p,0)(3,2)");
1383
1400
1405 "levi_civita(n,1,p,2)(0,3)");
1415 "levi_civita(n,1,p,2)(3,0)");
1419
1423 "levi_civita(n,1,p,3)(0,2)");
1430 "levi_civita(n,1,p,3)(2,0)");
1438
1447 "levi_civita(n,2,p,0)(1,3)");
1454 "levi_civita(n,2,p,0)(3,1)");
1457
1462 "levi_civita(n,2,p,1)(0,3)");
1472 "levi_civita(n,2,p,1)(3,0)");
1476
1493
1496 "levi_civita(n,2,p,3)(0,1)");
1500 "levi_civita(n,2,p,3)(1,0)");
1512
1520 "levi_civita(n,3,p,0)(1,2)");
1524 "levi_civita(n,3,p,0)(2,1)");
1531
1535 "levi_civita(n,3,p,1)(0,2)");
1542 "levi_civita(n,3,p,1)(2,0)");
1550
1553 "levi_civita(n,3,p,2)(0,1)");
1557 "levi_civita(n,3,p,2)(1,0)");
1569
1586
1603
1616 "levi_civita(n,o,0,n,1)(2,3)");
1620 "levi_civita(n,o,0,1)(3,2)");
1622
1631 "levi_civita(n,o,0,2)(1,3)");
1638 "levi_civita(n,o,0,2)(3,1)");
1641
1649 "levi_civita(n,o,0,3)(1,2)");
1653 "levi_civita(n,o,0,3)(2,1)");
1660
1673 "levi_civita(n,o,1,0)(2,3)");
1677 "levi_civita(n,o,1,0)(3,2)");
1679
1696
1701 "levi_civita(n,o,1,2)(0,3)");
1711 "levi_civita(n,o,1,2)(3,0)");
1715
1719 "levi_civita(n,o,1,3)(0,2)");
1726 "levi_civita(n,o,1,3)(2,0)");
1734
1743 "levi_civita(n,o,2,0)(1,3)");
1750 "levi_civita(n,o,2,0)(3,1)");
1753
1758 "levi_civita(n,o,2,1)(0,3)");
1768 "levi_civita(n,o,2,1)(3,0)");
1772
1789
1792 "levi_civita(n,o,2,3)(0,1)");
1796 "levi_civita(n,o,2,3)(1,0)");
1808
1816 "levi_civita(n,o,3,0)(1,2)");
1820 "levi_civita(n,o,3,0)(2,1)");
1827
1831 "levi_civita(n,o,3,1)(0,2)");
1838 "levi_civita(n,o,3,1)(2,0)");
1846
1849 "levi_civita(n,o,3,2)(0,1)");
1853 "levi_civita(n,o,3,2)(1,0)");
1865
1882}
const double n
refractive index of diffusive medium
FTensor::Index< 'l', 3 > l
FTensor::Index< 'k', 3 > k
constexpr std::enable_if<(Dim0<=2 &&Dim1<=2), Tensor2_Expr< Levi_Civita< T >, T, Dim0, Dim1, i, j > >::type levi_civita(const Index< i, Dim0 > &, const Index< j, Dim1 > &)
levi_civita functions to make for easy adhoc use
FTensor::Index< 'm', 3 > m
void test_for_zero(const T &t, const std::string &s)