aboutsummaryrefslogtreecommitdiff
path: root/src/RK3.c
diff options
context:
space:
mode:
authortradke <tradke@578cdeb0-5ea1-4b81-8215-5a3b8777ee0b>2005-08-29 11:43:41 +0000
committertradke <tradke@578cdeb0-5ea1-4b81-8215-5a3b8777ee0b>2005-08-29 11:43:41 +0000
commitecdce2f6a326885693af7cbd4f00c67ce6da5e8b (patch)
treedf3795015ee2bca46708117607527e973c49fd63 /src/RK3.c
parent9d6165856a6a21b91b686c71064525fef6295599 (diff)
Small optimisation: substitute division by multiplication with the inverse.
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@91 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
Diffstat (limited to 'src/RK3.c')
-rw-r--r--src/RK3.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/RK3.c b/src/RK3.c
index 1ecdcf5..cf21414 100644
--- a/src/RK3.c
+++ b/src/RK3.c
@@ -262,6 +262,8 @@ void MoL_RK3Add(CCTK_ARGUMENTS)
}
case 1:
{
+ const CCTK_REAL one_third = 1.0 / 3.0;
+
for (var = 0; var < MoLNumEvolvedVariables; var++)
{
OldVar = (CCTK_REAL*)CCTK_VarDataPtrI(cctkGH, 1,
@@ -273,7 +275,7 @@ void MoL_RK3Add(CCTK_ARGUMENTS)
for (index = 0; index < totalsize; index++)
{
- UpdateVar[index] = (OldVar[index] + 2*UpdateVar[index])/3
+ UpdateVar[index] = (OldVar[index] + 2*UpdateVar[index]) * one_third
+ CCTK_DELTA_TIME * RHSVar[index];
}
}
@@ -305,7 +307,7 @@ void MoL_RK3Add(CCTK_ARGUMENTS)
for (index = 0; index < arraytotalsize; index++)
{
- UpdateVar[index] = (OldVar[index] + 2*UpdateVar[index])/3
+ UpdateVar[index] = (OldVar[index] + 2*UpdateVar[index]) * one_third
+ CCTK_DELTA_TIME * RHSVar[index];
}
}