blob: e950f3e82123dfe32868daa812c5c4b8075eb983 (
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
89
90
91
92
93
94
95
96
|
/*@@
@header DCGDT_guts.h
@date Jul 98
@author Gabrielle Allen
@desc
Macro to calculate the source term in the evolution equation for the
conformal 3-metric. That is
d g~_ij/dt =( - 2 alpha K_ij + L_beta g_ij )/Psi^4
where g~ is the conformal metric
@enddesc
@@*/
#ifndef DCGDT_GUTS
#define DCGDT_GUTS
#ifdef FCODE
DCGDT_DCGXXDT = - 2*DCGDT_A*DCGDT_KXX
DCGDT_DCGXYDT = - 2*DCGDT_A*DCGDT_KXY
DCGDT_DCGXZDT = - 2*DCGDT_A*DCGDT_KXZ
DCGDT_DCGYYDT = - 2*DCGDT_A*DCGDT_KYY
DCGDT_DCGYZDT = - 2*DCGDT_A*DCGDT_KYZ
DCGDT_DCGZZDT = - 2*DCGDT_A*DCGDT_KZZ
IF (conformal_state .eq. CONFORMAL_METRIC) THEN
DCGDT_IPSI4 = 1D0/(DCGDT_PSI**4)
DCGDT_DCGXXDT = DCGDT_DCGXXDT*DCGDT_IPSI4
DCGDT_DCGXYDT = DCGDT_DCGXYDT*DCGDT_IPSI4
DCGDT_DCGXZDT = DCGDT_DCGXZDT*DCGDT_IPSI4
DCGDT_DCGYYDT = DCGDT_DCGYYDT*DCGDT_IPSI4
DCGDT_DCGYZDT = DCGDT_DCGYZDT*DCGDT_IPSI4
DCGDT_DCGZZDT = DCGDT_DCGZZDT*DCGDT_IPSI4
END IF
IF (shift_state .ne. SHIFT_INACTIVE) THEN
#include "CactusEinstein/Einstein/src/macro/LIEG_guts.h"
DCGDT_DCGXXDT = DCGDT_DCGXXDT + LIEG_LGXX
DCGDT_DCGXYDT = DCGDT_DCGXYDT + LIEG_LGXY
DCGDT_DCGXZDT = DCGDT_DCGXZDT + LIEG_LGXZ
DCGDT_DCGYYDT = DCGDT_DCGYYDT + LIEG_LGYY
DCGDT_DCGYZDT = DCGDT_DCGYZDT + LIEG_LGYZ
DCGDT_DCGZZDT = DCGDT_DCGZZDT + LIEG_LGZZ
END IF
#endif
#ifdef CCODE
DCGDT_DCGXXDT = - 2*DCGDT_A*DCGDT_KXX;
DCGDT_DCGXYDT = - 2*DCGDT_A*DCGDT_KXY;
DCGDT_DCGXZDT = - 2*DCGDT_A*DCGDT_KXZ;
DCGDT_DCGYYDT = - 2*DCGDT_A*DCGDT_KYY;
DCGDT_DCGYZDT = - 2*DCGDT_A*DCGDT_KYZ;
DCGDT_DCGZZDT = - 2*DCGDT_A*DCGDT_KZZ;
if (*conformal_state == CONFORMAL_METRIC)
{
DCGDT_IPSI4 = 1/(DCGDT_PSI*DCGDT_PSI*DCGDT_PSI*DCGDT_PSI);
DCGDT_DCGXXDT = DCGDT_DCGXXDT*DCGDT_IPSI4;
DCGDT_DCGXYDT = DCGDT_DCGXYDT*DCGDT_IPSI4;
DCGDT_DCGXZDT = DCGDT_DCGXZDT*DCGDT_IPSI4;
DCGDT_DCGYYDT = DCGDT_DCGYYDT*DCGDT_IPSI4;
DCGDT_DCGYZDT = DCGDT_DCGYZDT*DCGDT_IPSI4;
DCGDT_DCGZZDT = DCGDT_DCGZZDT*DCGDT_IPSI4;
}
if (*shift_state != SHIFT_INACTIVE)
{
#include "CactusEinstein/Einstein/src/macro/LIEG_guts.h"
DCGDT_DCGXXDT = DCGDT_DCGXXDT + LIEG_LGXX;
DCGDT_DCGXYDT = DCGDT_DCGXYDT + LIEG_LGXY;
DCGDT_DCGXZDT = DCGDT_DCGXZDT + LIEG_LGXZ;
DCGDT_DCGYYDT = DCGDT_DCGYYDT + LIEG_LGYY;
DCGDT_DCGYZDT = DCGDT_DCGYZDT + LIEG_LGYZ;
DCGDT_DCGZZDT = DCGDT_DCGZZDT + LIEG_LGZZ;
}
#endif
#endif
|