aboutsummaryrefslogtreecommitdiff
path: root/src/macro/KK_guts.h
blob: 44cf7dbc4debd75c5e8f8b0d58fac0fce4622943 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
/*@@
  @header   KK_guts.h
  @date     Jun 98
  @author   Gabrielle Allen
  @desc

  Macro to calculate term K_{ik}K^{k}_{l}

  The macro is defined in terms of standard variables in
  KK_declare.h

  Requires: Upper physical metric
            Lower extrinsic curvature

  Provides: Components of K_{ik}K^{k}_{l}

  @enddesc
@@*/

#ifndef KK_GUTS
#define KK_GUTS

#include "UPPERMET_guts.h"

#ifdef FCODE

      KK_KKXX = 2*(UPPERMET_UYZ*KK_HXY*KK_HXZ + KK_HXX*(UPPERMET_UXY*KK_HXY + \
     UPPERMET_UXZ*KK_HXZ)) + UPPERMET_UXX*KK_HXX*KK_HXX + \
     UPPERMET_UYY*KK_HXY*KK_HXY + UPPERMET_UZZ*KK_HXZ*KK_HXZ

      KK_KKXY = KK_HXY*(UPPERMET_UXX*KK_HXX + UPPERMET_UYY*KK_HYY) + \
     UPPERMET_UZZ*KK_HXZ*KK_HYZ + UPPERMET_UXZ*(KK_HXY*KK_HXZ + \
     KK_HXX*KK_HYZ) + UPPERMET_UYZ*(KK_HXZ*KK_HYY + KK_HXY*KK_HYZ) + \
     UPPERMET_UXY*(KK_HXX*KK_HYY + KK_HXY*KK_HXY) 

      KK_KKXZ = UPPERMET_UYY*KK_HXY*KK_HYZ + UPPERMET_UXY*(KK_HXY*KK_HXZ + \
     KK_HXX*KK_HYZ) + KK_HXZ*(UPPERMET_UXX*KK_HXX + UPPERMET_UZZ*KK_HZZ) + \
     UPPERMET_UYZ*(KK_HXZ*KK_HYZ + KK_HXY*KK_HZZ) + \
     UPPERMET_UXZ*(KK_HXX*KK_HZZ + KK_HXZ*KK_HXZ) 

      KK_KKYY = 2*(UPPERMET_UYZ*KK_HYY*KK_HYZ + KK_HXY*(UPPERMET_UXY*KK_HYY + \
     UPPERMET_UXZ*KK_HYZ)) + UPPERMET_UXX*KK_HXY*KK_HXY  + \
     UPPERMET_UYY*KK_HYY*KK_HYY + UPPERMET_UZZ*KK_HYZ*KK_HYZ ;

      KK_KKYZ = UPPERMET_UXX*KK_HXY*KK_HXZ + UPPERMET_UXY*(KK_HXZ*KK_HYY + \
     KK_HXY*KK_HYZ) + KK_HYZ*(UPPERMET_UYY*KK_HYY + UPPERMET_UZZ*KK_HZZ) + \
     UPPERMET_UXZ*(KK_HXZ*KK_HYZ + KK_HXY*KK_HZZ) + \
     UPPERMET_UYZ*(KK_HYY*KK_HZZ + KK_HYZ*KK_HYZ) 

      KK_KKZZ = 2*(UPPERMET_UYZ*KK_HYZ*KK_HZZ + KK_HXZ*(UPPERMET_UXY*KK_HYZ + \
     UPPERMET_UXZ*KK_HZZ)) + UPPERMET_UXX*KK_HXZ*KK_HXZ + \
     UPPERMET_UYY*KK_HYZ*KK_HYZ + UPPERMET_UZZ*KK_HZZ*KK_HZZ 

#endif

#ifdef CCODE

KK_KKXX = 2*(UPPERMET_UYZ*KK_HXY*KK_HXZ + KK_HXX*(UPPERMET_UXY*KK_HXY +
UPPERMET_UXZ*KK_HXZ)) + UPPERMET_UXX*KK_HXX*KK_HXX +
UPPERMET_UYY*KK_HXY*KK_HXY + UPPERMET_UZZ*KK_HXZ*KK_HXZ;

KK_KKXY = KK_HXY*(UPPERMET_UXX*KK_HXX + UPPERMET_UYY*KK_HYY) +
UPPERMET_UZZ*KK_HXZ*KK_HYZ + UPPERMET_UXZ*(KK_HXY*KK_HXZ +
KK_HXX*KK_HYZ) + UPPERMET_UYZ*(KK_HXZ*KK_HYY + KK_HXY*KK_HYZ) +
UPPERMET_UXY*(KK_HXX*KK_HYY + KK_HXY*KK_HXY) ;

KK_KKXZ = UPPERMET_UYY*KK_HXY*KK_HYZ + UPPERMET_UXY*(KK_HXY*KK_HXZ +
KK_HXX*KK_HYZ) + KK_HXZ*(UPPERMET_UXX*KK_HXX + UPPERMET_UZZ*KK_HZZ) +
UPPERMET_UYZ*(KK_HXZ*KK_HYZ + KK_HXY*KK_HZZ) +
UPPERMET_UXZ*(KK_HXX*KK_HZZ + KK_HXZ*KK_HXZ) ;

KK_KKYY = 2*(UPPERMET_UYZ*KK_HYY*KK_HYZ + KK_HXY*(UPPERMET_UXY*KK_HYY +
UPPERMET_UXZ*KK_HYZ)) + UPPERMET_UXX*KK_HXY*KK_HXY  +
UPPERMET_UYY*KK_HYY*KK_HYY + UPPERMET_UZZ*KK_HYZ*KK_HYZ ;

KK_KKYZ = UPPERMET_UXX*KK_HXY*KK_HXZ + UPPERMET_UXY*(KK_HXZ*KK_HYY +
KK_HXY*KK_HYZ) + KK_HYZ*(UPPERMET_UYY*KK_HYY + UPPERMET_UZZ*KK_HZZ) +
UPPERMET_UXZ*(KK_HXZ*KK_HYZ + KK_HXY*KK_HZZ) +
UPPERMET_UYZ*(KK_HYY*KK_HZZ + KK_HYZ*KK_HYZ) ;

KK_KKZZ = 2*(UPPERMET_UYZ*KK_HYZ*KK_HZZ + KK_HXZ*(UPPERMET_UXY*KK_HYZ +
UPPERMET_UXZ*KK_HZZ)) + UPPERMET_UXX*KK_HXZ*KK_HXZ +
UPPERMET_UYY*KK_HYZ*KK_HYZ + UPPERMET_UZZ*KK_HZZ*KK_HZZ ;

#endif

#endif