aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorhawke <hawke@578cdeb0-5ea1-4b81-8215-5a3b8777ee0b>2003-07-17 07:52:07 +0000
committerhawke <hawke@578cdeb0-5ea1-4b81-8215-5a3b8777ee0b>2003-07-17 07:52:07 +0000
commit16c984f44503a050e25cf23f6d3aa1008e45303b (patch)
tree65e6fd3834ec5e4de2564b5335facd85f3229471 /src
parent914705c9c1061631babe6376cf5b6e32dc4544db (diff)
Fix an error in the internal arrays for when changing from constrained/SandR to evolved.
Add a load more debugging statements (ifdef'd). git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@21 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
Diffstat (limited to 'src')
-rw-r--r--src/ChangeType.c23
-rw-r--r--src/InitialCopy.c5
-rw-r--r--src/Registration.c8
3 files changed, 31 insertions, 5 deletions
diff --git a/src/ChangeType.c b/src/ChangeType.c
index 966445e..9361f3a 100644
--- a/src/ChangeType.c
+++ b/src/ChangeType.c
@@ -164,6 +164,11 @@ CCTK_INT MoL_ChangeToEvolved(CCTK_INT EvolvedIndex, CCTK_INT RHSIndex)
EvolvedVariableIndex[MoLNumEvolvedVariables] = EvolvedIndex;
RHSVariableIndex[MoLNumEvolvedVariables] = RHSIndex;
MoLNumEvolvedVariables++;
+#ifdef MOLDEBUG
+ printf("Changing (unknown): vars %d var %d (%s).\n",
+ MoLNumEvolvedVariables, EvolvedIndex,
+ CCTK_VarName(EvolvedIndex));
+#endif
break;
}
@@ -187,9 +192,14 @@ CCTK_INT MoL_ChangeToEvolved(CCTK_INT EvolvedIndex, CCTK_INT RHSIndex)
ConstrainedVariableIndex[index] = ConstrainedVariableIndex[index+1];
}
MoLNumConstrainedVariables--;
- EvolvedVariableIndex[index] = EvolvedIndex;
- RHSVariableIndex[index] = RHSIndex;
+ EvolvedVariableIndex[MoLNumEvolvedVariables] = EvolvedIndex;
+ RHSVariableIndex[MoLNumEvolvedVariables] = RHSIndex;
MoLNumEvolvedVariables++;
+#ifdef MOLDEBUG
+ printf("Changing (constrained): vars %d var %d (%s).\n",
+ MoLNumEvolvedVariables, EvolvedIndex,
+ CCTK_VarName(EvolvedIndex));
+#endif
break;
}
@@ -206,9 +216,14 @@ CCTK_INT MoL_ChangeToEvolved(CCTK_INT EvolvedIndex, CCTK_INT RHSIndex)
SandRVariableIndex[index] = SandRVariableIndex[index+1];
}
MoLNumSandRVariables--;
- EvolvedVariableIndex[index] = EvolvedIndex;
- RHSVariableIndex[index] = RHSIndex;
+ EvolvedVariableIndex[MoLNumEvolvedVariables] = EvolvedIndex;
+ RHSVariableIndex[MoLNumEvolvedVariables] = RHSIndex;
MoLNumEvolvedVariables++;
+#ifdef MOLDEBUG
+ printf("Changing (SandR): vars %d var %d (%s).\n",
+ MoLNumEvolvedVariables, EvolvedIndex,
+ CCTK_VarName(EvolvedIndex));
+#endif
break;
}
diff --git a/src/InitialCopy.c b/src/InitialCopy.c
index 54bbd41..160fdee 100644
--- a/src/InitialCopy.c
+++ b/src/InitialCopy.c
@@ -96,6 +96,11 @@ void MoL_InitialCopy(CCTK_ARGUMENTS)
CCTK_WARN(0, "The index passed does not correspond to a GF.");
}
else if (StorageOn == 0) {
+#ifdef MOLDEBUG
+ printf("Aargh! Vars %d var %d index %d name %s\n",
+ MoLNumEvolvedVariables, var, EvolvedVariableIndex[var],
+ CCTK_VarName(EvolvedVariableIndex[var]));
+#endif
CCTK_VWarn(1,__LINE__,__FILE__,"MoL","Warning for GF %s",
CCTK_VarName(EvolvedVariableIndex[var]));
CCTK_WARN(0, "The grid function does not have storage assigned.");
diff --git a/src/Registration.c b/src/Registration.c
index 13d5d12..2dd4767 100644
--- a/src/Registration.c
+++ b/src/Registration.c
@@ -778,7 +778,13 @@ CCTK_INT MoL_RegisterEvolvedReal(CCTK_INT EvolvedIndex, CCTK_INT RHSIndex)
RHSVariableIndex[MoLNumEvolvedVariables] = RHSIndex;
MoLNumEvolvedVariables++;
-
+
+#ifdef MOLDEBUG
+ printf("The max number is now %d. Just added %d (%s).\n",
+ MoLNumEvolvedVariables, EvolvedIndex,
+ CCTK_VarName(EvolvedIndex));
+#endif
+
if (MoLNumEvolvedVariables > MoL_Num_Evolved_Vars)
{
CCTK_WARN(0,"You have tried to register more evolved variables than the accumulator parameter MoL_Num_Evolved_Variables allows. Check that you are accumulating onto this parameter correctly");