aboutsummaryrefslogtreecommitdiff
path: root/interface.ccl
blob: ace52c17822882046a0764b6478fd28f54014d81 (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
# Interface definition for thorn MoL2
# $Header$

implements: MethodOfLines

inherits: nanchecker

INCLUDE HEADER: MoLFunctions.h IN MoLFunctions.h
INCLUDE HEADER: MoL.h IN MoL.h
USES INCLUDE: NaNChecker.h

CCTK_INT FUNCTION MoLRegisterEvolved(CCTK_INT EvolvedIndex, CCTK_INT RHSIndex)
CCTK_INT FUNCTION MoLRegisterConstrained(CCTK_INT ConstrainedIndex)
CCTK_INT FUNCTION MoLRegisterSaveAndRestore(CCTK_INT SandRIndex)
CCTK_INT FUNCTION MoLRegisterEvolvedGroup(CCTK_INT EvolvedIndex, \
                                          CCTK_INT RHSIndex)
CCTK_INT FUNCTION MoLRegisterConstrainedGroup(CCTK_INT ConstrainedIndex)
CCTK_INT FUNCTION MoLRegisterSaveAndRestoreGroup(CCTK_INT SandRIndex)
CCTK_INT FUNCTION MoLChangeToEvolved(CCTK_INT EvolvedIndex, CCTK_INT RHSIndex)
CCTK_INT FUNCTION MoLChangeToConstrained(CCTK_INT ConstrainedIndex)
CCTK_INT FUNCTION MoLChangeToSaveAndRestore(CCTK_INT SandRIndex)
CCTK_INT FUNCTION MoLChangeToNone(CCTK_INT RemoveIndex)

PROVIDES FUNCTION MoLRegisterEvolved WITH MoL_RegisterEvolved LANGUAGE C
PROVIDES FUNCTION MoLRegisterConstrained WITH MoL_RegisterConstrained \
                  LANGUAGE C
PROVIDES FUNCTION MoLRegisterSaveAndRestore WITH MoL_RegisterSaveAndRestore \
                  LANGUAGE C
PROVIDES FUNCTION MoLRegisterEvolvedGroup WITH MoL_RegisterEvolvedGroup \
                  LANGUAGE C
PROVIDES FUNCTION MoLRegisterConstrainedGroup WITH \
                  MoL_RegisterConstrainedGroup LANGUAGE C
PROVIDES FUNCTION MoLRegisterSaveAndRestoreGroup WITH \
                  MoL_RegisterSaveAndRestoreGroup LANGUAGE C
PROVIDES FUNCTION MoLChangeToEvolved WITH MoL_ChangeToEvolved LANGUAGE C
PROVIDES FUNCTION MoLChangeToConstrained WITH MoL_ChangeToConstrained \
                  LANGUAGE C
PROVIDES FUNCTION MoLChangeToSaveAndRestore WITH MoL_ChangeToSaveAndRestore \
                  LANGUAGE C
PROVIDES FUNCTION MoLChangeToNone WITH MoL_ChangeToNone LANGUAGE C

private:

CCTK_REAL RKAlphaCoefficients TYPE=ARRAY DIM=2 SIZE=MoL_Intermediate_Steps,MoL_Num_Scratch_Levels+1 DISTRIB=CONSTANT
{
  RKAlphaCoefficients
} "The alpha coefficients used by the generic Runge-Kutta integrators"

CCTK_REAL RKBetaCoefficients TYPE=ARRAY DIM=1 SIZE=MoL_Intermediate_Steps DISTRIB=CONSTANT
{
  RKBetaCoefficients
} "The beta coefficients used by the generic Runge-Kutta integrators"

CCTK_INT MoL_Counters TYPE = SCALAR
{
  MoL_Intermediate_Step
} "The counter for the time integration method"

CCTK_REAL MoL_Original_Time TYPE = SCALAR
{
  Original_Time
  Original_Delta_Time
} "The original time and delta time which are reset by MoL during evolution"

# This is extremely unforgiving - it doesn't allow whitespace in the
# arithmetic expressions.

CCTK_REAL ScratchSpace[MoL_Num_Evolved_Vars*MoL_Num_Scratch_Levels+1] TYPE = GF Timelevels = 1

CCTK_REAL SandRScratchSpace[MoL_Num_SaveAndRestore_Vars+1] TYPE = GF Timelevels = 1