aboutsummaryrefslogtreecommitdiff
path: root/src/macro/DXDB_declare.h
blob: 1e8f18d756f370a1028b2f5b9e4a83d25cfe3801 (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
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
/*@@
  @header   DXDB_declare.h
  @date     Jun 98
  @author   Gabrielle Allen
  @desc
  Declarations for macro @seefile DXDB_guts.h to compute first 
  derivatives of the shift with respect to x
  @enddesc
@@*/

#ifndef DXDB_DECLARE
#define DXDB_DECLARE

#ifdef FCODE

/* Input variables */
#undef  DXDB_BX
#define DXDB_BX betax(i,j,k)
#undef  DXDB_BY
#define DXDB_BY betay(i,j,k)
#undef  DXDB_BZ
#define DXDB_BZ betaz(i,j,k)
#undef  DXDB_BX_IP 
#define DXDB_BX_IP betax(i+1,j,k)
#undef  DXDB_BX_IPP
#define DXDB_BX_IPP betax(i+2,j,k)
#undef  DXDB_BX_IM
#define DXDB_BX_IM betax(i-1,j,k)
#undef  DXDB_BX_IMM
#define DXDB_BX_IMM betax(i-2,j,k)
#undef  DXDB_BY_IP 
#define DXDB_BY_IP betay(i+1,j,k)
#undef  DXDB_BY_IPP 
#define DXDB_BY_IPP betay(i+2,j,k)
#undef  DXDB_BY_IM 
#define DXDB_BY_IM betay(i-1,j,k)
#undef  DXDB_BY_IMM
#define DXDB_BY_IMM betay(i-2,j,k)
#undef  DXDB_BZ_IP 
#define DXDB_BZ_IP betaz(i+1,j,k)
#undef  DXDB_BZ_IPP 
#define DXDB_BZ_IPP betaz(i+2,j,k)
#undef  DXDB_BZ_IM
#define DXDB_BZ_IM betaz(i-1,j,k)
#undef  DXDB_BZ_IMM
#define DXDB_BZ_IMM betaz(i-2,j,k)

/* Output variables */ 
#undef  DXDB_DXDBX
#define DXDB_DXDBX  dxdb_dxdbx
#undef  DXDB_DXDBY
#define DXDB_DXDBY  dxdb_dxdby
#undef  DXDB_DXDBZ
#define DXDB_DXDBZ  dxdb_dxdbz

/* Internal variables */
#undef  DXDB_DX
#define DXDB_DX dx
#undef  DXDB_OO2DX   
#define DXDB_OO2DX dxdb_oo2dx

/* Declare internal variables */
      CCTK_REAL DXDB_OO2DX

/* Declare output variables */
      CCTK_REAL DXDB_DXDBX
      CCTK_REAL DXDB_DXDBY
      CCTK_REAL DXDB_DXDBZ

#endif


#ifdef CCODE

/* Input variables */
#undef  DXDB_BX
#define DXDB_BX betax[ijk]
#undef  DXDB_BY
#define DXDB_BY betay[ijk]
#undef  DXDB_BZ
#define DXDB_BZ betaz[ijk]
#undef  DXDB_BX_IP 
#define DXDB_BX_IP betax[ di+ijk]
#undef  DXDB_BX_IM
#define DXDB_BX_IM betax[-di+ijk]
#undef  DXDB_BY_IP 
#define DXDB_BY_IP betay[ di+ijk]
#undef  DXDB_BY_IM 
#define DXDB_BY_IM betay[-di+ijk]
#undef  DXDB_BZ_IP 
#define DXDB_BZ_IP betaz[ di+ijk]
#undef  DXDB_BZ_IM
#define DXDB_BZ_IM betaz[-di+ijk]

/* Output variables */ 
#undef  DXDB_DXDBX
#define DXDB_DXDBX  delbeta11
#undef  DXDB_DXDBY
#define DXDB_DXDBY  delbeta12
#undef  DXDB_DXDBZ
#define DXDB_DXDBZ  delbeta13

/* Internal variables */
#undef  DXDB_OO2DX   
#define DXDB_OO2DX dxdb_oo2dx

/* Declare internal variables */
CCTK_REAL DXDB_OO2DX;

/* Declare output variables */
CCTK_REAL DXDB_DXDBX;
CCTK_REAL DXDB_DXDBY;
CCTK_REAL DXDB_DXDBZ;

#endif

#endif