Commit f5ccdb60 authored by Mark Friedrichs's avatar Mark Friedrichs
Browse files

Minor optimization

parent 90a5e2db
......@@ -386,14 +386,17 @@ static void kSorUpdateMutualInducedField_kernel(
// add self terms to fields
matrixProduct[pos] += term*previousDipole;
matrixProductP[pos] += term*previousDipoleP;
float mProd = matrixProduct[pos];
float mProdP = matrixProductP[pos];
inducedDipole[pos] = fixedEField[pos] + polarizability[pos]*matrixProduct[pos];
inducedDipoleP[pos] = fixedEFieldP[pos] + polarizability[pos]*matrixProductP[pos];
mProd += term*previousDipole;
mProdP += term*previousDipoleP;
inducedDipole[pos] = previousDipole + polarSOR*( inducedDipole[pos] - previousDipole );
inducedDipoleP[pos] = previousDipoleP + polarSOR*( inducedDipoleP[pos] - previousDipoleP );
float inducedDipoleI = fixedEField[pos] + polarizability[pos]*mProd;
float inducedDipoleIP = fixedEFieldP[pos] + polarizability[pos]*mProdP;
inducedDipole[pos] = previousDipole + polarSOR*( inducedDipoleI - previousDipole );
inducedDipoleP[pos] = previousDipoleP + polarSOR*( inducedDipoleIP - previousDipoleP );
matrixProduct[pos] = ( inducedDipole[pos] - previousDipole )*( inducedDipole[pos] - previousDipole );
matrixProductP[pos] = ( inducedDipoleP[pos] - previousDipoleP )*( inducedDipoleP[pos] - previousDipoleP );
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment