diff options
author | hawke <hawke@578cdeb0-5ea1-4b81-8215-5a3b8777ee0b> | 2003-07-17 07:52:07 +0000 |
---|---|---|
committer | hawke <hawke@578cdeb0-5ea1-4b81-8215-5a3b8777ee0b> | 2003-07-17 07:52:07 +0000 |
commit | 16c984f44503a050e25cf23f6d3aa1008e45303b (patch) | |
tree | 65e6fd3834ec5e4de2564b5335facd85f3229471 /src | |
parent | 914705c9c1061631babe6376cf5b6e32dc4544db (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.c | 23 | ||||
-rw-r--r-- | src/InitialCopy.c | 5 | ||||
-rw-r--r-- | src/Registration.c | 8 |
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"); |