aboutsummaryrefslogtreecommitdiff
path: root/src/macro/DYDCG_guts.h
blob: 3c328d7fff3f667ad09a0b1913c9d9a165e8cf5a (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
/*@@
  @header   DYDCG_guts.h
  @date     Jun 98
  @author   Gabrielle Allen
  @desc
  Macro to calculate the first derivatives of the 
  conformal metric with respect to y

  The macro is defined in terms of standard variables in

  Requires: lower conformal metric at j+1,j-1 ; dy0

  Provides: derivative of lower conformal metric wrt y

  @seefile DYDCG_declare.h
  @enddesc
@@*/

#ifndef DYDCG_GUTS
#define DYDCG_GUTS

#ifdef FCODE 

#include "ADM_Derivative.h"

      if (spatial_order.eq.2) then 
        DYDCG_DYDCGXX = ADM_DY_2(gxx,i,j,k)
        DYDCG_DYDCGXY = ADM_DY_2(gxy,i,j,k)
        DYDCG_DYDCGXZ = ADM_DY_2(gxz,i,j,k)
        DYDCG_DYDCGYY = ADM_DY_2(gyy,i,j,k)
        DYDCG_DYDCGYZ = ADM_DY_2(gyz,i,j,k)
        DYDCG_DYDCGZZ = ADM_DY_2(gzz,i,j,k)
      else
        DYDCG_DYDCGXX = ADM_DY_4(gxx,i,j,k)
        DYDCG_DYDCGXY = ADM_DY_4(gxy,i,j,k)
        DYDCG_DYDCGXZ = ADM_DY_4(gxz,i,j,k)
        DYDCG_DYDCGYY = ADM_DY_4(gyy,i,j,k)
        DYDCG_DYDCGYZ = ADM_DY_4(gyz,i,j,k)
        DYDCG_DYDCGZZ = ADM_DY_4(gzz,i,j,k)
      end if
#endif


#ifdef CCODE

      DYDCG_OO2DY = 1/(2*cctkGH->cctk_delta_space[1]);
    
      DYDCG_DYDCGXX = DYDCG_OO2DY*(DYDCG_GXX_JP - DYDCG_GXX_JM);
      DYDCG_DYDCGXY = DYDCG_OO2DY*(DYDCG_GXY_JP - DYDCG_GXY_JM);
      DYDCG_DYDCGXZ = DYDCG_OO2DY*(DYDCG_GXZ_JP - DYDCG_GXZ_JM);
      DYDCG_DYDCGYY = DYDCG_OO2DY*(DYDCG_GYY_JP - DYDCG_GYY_JM);
      DYDCG_DYDCGYZ = DYDCG_OO2DY*(DYDCG_GYZ_JP - DYDCG_GYZ_JM);
      DYDCG_DYDCGZZ = DYDCG_OO2DY*(DYDCG_GZZ_JP - DYDCG_GZZ_JM);

#endif

#endif