"plugins/vscode:/vscode.git/clone" did not exist on "f5058fe487a99bfd9d27229d908d58f9aa0aaeca"
Commit 5f248e63 authored by Saurabh Belsare's avatar Saurabh Belsare
Browse files

Uncommented all the calculate LabFramePermanentDipoles functions

parent 587ba7f2
...@@ -316,13 +316,13 @@ public: ...@@ -316,13 +316,13 @@ public:
* This can be overridden by explicitly setting an alpha parameter and grid dimensions to use. * This can be overridden by explicitly setting an alpha parameter and grid dimensions to use.
*/ */
void setEwaldErrorTolerance(double tol); void setEwaldErrorTolerance(double tol);
/* /**
* Get the fixed dipole moments of all particles in the global reference frame. * Get the fixed dipole moments of all particles in the global reference frame.
* *
* @param context the Context for which to get the fixed dipoles * @param context the Context for which to get the fixed dipoles
* @param[out] dipoles the fixed dipole moment of particle i is stored into the i'th element * @param[out] dipoles the fixed dipole moment of particle i is stored into the i'th element
*/ */
// void getLabFramePermanentDipoles(Context& context, std::vector<Vec3>& dipoles); void getLabFramePermanentDipoles(Context& context, std::vector<Vec3>& dipoles);
/** /**
* Get the induced dipole moments of all particles. * Get the induced dipole moments of all particles.
* *
......
...@@ -348,7 +348,7 @@ public: ...@@ -348,7 +348,7 @@ public:
*/ */
virtual double execute(ContextImpl& context, bool includeForces, bool includeEnergy) = 0; virtual double execute(ContextImpl& context, bool includeForces, bool includeEnergy) = 0;
// virtual void getLabFramePermanentDipoles(ContextImpl& context, std::vector<Vec3>& dipoles) = 0; virtual void getLabFramePermanentDipoles(ContextImpl& context, std::vector<Vec3>& dipoles) = 0;
virtual void getInducedDipoles(ContextImpl& context, std::vector<Vec3>& dipoles) = 0; virtual void getInducedDipoles(ContextImpl& context, std::vector<Vec3>& dipoles) = 0;
virtual void getElectrostaticPotential(ContextImpl& context, const std::vector< Vec3 >& inputGrid, virtual void getElectrostaticPotential(ContextImpl& context, const std::vector< Vec3 >& inputGrid,
......
...@@ -81,7 +81,7 @@ public: ...@@ -81,7 +81,7 @@ public:
* @param covalentDegree covalent degrees for the CovalentEnd lists * @param covalentDegree covalent degrees for the CovalentEnd lists
*/ */
static void getCovalentDegree(const AmoebaMultipoleForce& force, std::vector<int>& covalentDegree); static void getCovalentDegree(const AmoebaMultipoleForce& force, std::vector<int>& covalentDegree);
// void getLabFramePermanentDipoles(ContextImpl& context, std::vector<Vec3>& dipoles); void getLabFramePermanentDipoles(ContextImpl& context, std::vector<Vec3>& dipoles);
void getInducedDipoles(ContextImpl& context, std::vector<Vec3>& dipoles); void getInducedDipoles(ContextImpl& context, std::vector<Vec3>& dipoles);
void getElectrostaticPotential(ContextImpl& context, const std::vector< Vec3 >& inputGrid, void getElectrostaticPotential(ContextImpl& context, const std::vector< Vec3 >& inputGrid,
......
...@@ -234,9 +234,9 @@ void AmoebaMultipoleForce::getInducedDipoles(Context& context, vector<Vec3>& dip ...@@ -234,9 +234,9 @@ void AmoebaMultipoleForce::getInducedDipoles(Context& context, vector<Vec3>& dip
dynamic_cast<AmoebaMultipoleForceImpl&>(getImplInContext(context)).getInducedDipoles(getContextImpl(context), dipoles); dynamic_cast<AmoebaMultipoleForceImpl&>(getImplInContext(context)).getInducedDipoles(getContextImpl(context), dipoles);
} }
//void AmoebaMultipoleForce::getLabFramePermanentDipoles(Context& context, vector<Vec3>& dipoles) { void AmoebaMultipoleForce::getLabFramePermanentDipoles(Context& context, vector<Vec3>& dipoles) {
// dynamic_cast<AmoebaMultipoleForceImpl&>(getImplInContext(context)).getLabFramePermanentDipoles(getContextImpl(context), dipoles); dynamic_cast<AmoebaMultipoleForceImpl&>(getImplInContext(context)).getLabFramePermanentDipoles(getContextImpl(context), dipoles);
//} }
void AmoebaMultipoleForce::getElectrostaticPotential(const std::vector< Vec3 >& inputGrid, Context& context, std::vector< double >& outputElectrostaticPotential) { void AmoebaMultipoleForce::getElectrostaticPotential(const std::vector< Vec3 >& inputGrid, Context& context, std::vector< double >& outputElectrostaticPotential) {
dynamic_cast<AmoebaMultipoleForceImpl&>(getImplInContext(context)).getElectrostaticPotential(getContextImpl(context), inputGrid, outputElectrostaticPotential); dynamic_cast<AmoebaMultipoleForceImpl&>(getImplInContext(context)).getElectrostaticPotential(getContextImpl(context), inputGrid, outputElectrostaticPotential);
......
...@@ -183,9 +183,9 @@ void AmoebaMultipoleForceImpl::getCovalentDegree(const AmoebaMultipoleForce& for ...@@ -183,9 +183,9 @@ void AmoebaMultipoleForceImpl::getCovalentDegree(const AmoebaMultipoleForce& for
return; return;
} }
//void AmoebaMultipoleForceImpl::getLabFramePermanentDipoles(ContextImpl& context, vector<Vec3>& dipoles) { void AmoebaMultipoleForceImpl::getLabFramePermanentDipoles(ContextImpl& context, vector<Vec3>& dipoles) {
// kernel.getAs<CalcAmoebaMultipoleForceKernel>().getLabFramePermanentDipoles(context, dipoles); kernel.getAs<CalcAmoebaMultipoleForceKernel>().getLabFramePermanentDipoles(context, dipoles);
//} }
void AmoebaMultipoleForceImpl::getInducedDipoles(ContextImpl& context, vector<Vec3>& dipoles) { void AmoebaMultipoleForceImpl::getInducedDipoles(ContextImpl& context, vector<Vec3>& dipoles) {
kernel.getAs<CalcAmoebaMultipoleForceKernel>().getInducedDipoles(context, dipoles); kernel.getAs<CalcAmoebaMultipoleForceKernel>().getInducedDipoles(context, dipoles);
......
...@@ -710,24 +710,24 @@ void ReferenceCalcAmoebaMultipoleForceKernel::getInducedDipoles(ContextImpl& con ...@@ -710,24 +710,24 @@ void ReferenceCalcAmoebaMultipoleForceKernel::getInducedDipoles(ContextImpl& con
delete amoebaReferenceMultipoleForce; delete amoebaReferenceMultipoleForce;
} }
//void ReferenceCalcAmoebaMultipoleForceKernel::getLabFramePermanentDipoles(ContextImpl& context, vector<Vec3>& outputDipoles) { void ReferenceCalcAmoebaMultipoleForceKernel::getLabFramePermanentDipoles(ContextImpl& context, vector<Vec3>& outputDipoles) {
// int numParticles = context.getSystem().getNumParticles(); int numParticles = context.getSystem().getNumParticles();
// outputDipoles.resize(numParticles); outputDipoles.resize(numParticles);
//
// // Create an AmoebaReferenceMultipoleForce to do the calculation. // Create an AmoebaReferenceMultipoleForce to do the calculation.
//
// AmoebaReferenceMultipoleForce* amoebaReferenceMultipoleForce = setupAmoebaReferenceMultipoleForce(context); AmoebaReferenceMultipoleForce* amoebaReferenceMultipoleForce = setupAmoebaReferenceMultipoleForce(context);
// vector<RealVec>& posData = extractPositions(context); vector<RealVec>& posData = extractPositions(context);
//
// // Retrieve the permanent dipoles in the lab frame. // Retrieve the permanent dipoles in the lab frame.
//
// vector<RealVec> labFramePermanentDipoles; vector<RealVec> labFramePermanentDipoles;
// amoebaReferenceMultipoleForce->calculateLabFramePermanentDipoles(posData, charges, dipoles, quadrupoles, tholes, amoebaReferenceMultipoleForce->calculateLabFramePermanentDipoles(posData, charges, dipoles, quadrupoles, tholes,
// dampingFactors, polarity, axisTypes, multipoleAtomZs, multipoleAtomXs, multipoleAtomYs, multipoleAtomCovalentInfo, labFramePermanentDipoles); dampingFactors, polarity, axisTypes, multipoleAtomZs, multipoleAtomXs, multipoleAtomYs, multipoleAtomCovalentInfo, labFramePermanentDipoles);
// for (int i = 0; i < numParticles; i++) for (int i = 0; i < numParticles; i++)
// outputDipoles[i] = labFramePermanentDipoles[i]; outputDipoles[i] = labFramePermanentDipoles[i];
// delete amoebaReferenceMultipoleForce; delete amoebaReferenceMultipoleForce;
//} }
......
...@@ -374,13 +374,13 @@ public: ...@@ -374,13 +374,13 @@ public:
* @param dipoles the induced dipole moment of particle i is stored into the i'th element * @param dipoles the induced dipole moment of particle i is stored into the i'th element
*/ */
void getInducedDipoles(ContextImpl& context, std::vector<Vec3>& dipoles); void getInducedDipoles(ContextImpl& context, std::vector<Vec3>& dipoles);
/* /**
* Get the fixed dipole moments of all particles in the global reference frame. * Get the fixed dipole moments of all particles in the global reference frame.
* *
* @param context the Context for which to get the fixed dipoles * @param context the Context for which to get the fixed dipoles
* @param dipoles the fixed dipole moment of particle i is stored into the i'th element * @param dipoles the fixed dipole moment of particle i is stored into the i'th element
*/ */
// void getLabFramePermanentDipoles(ContextImpl& context, std::vector<Vec3>& dipoles); void getLabFramePermanentDipoles(ContextImpl& context, std::vector<Vec3>& dipoles);
/** /**
* Calculate the electrostatic potential given vector of grid coordinates. * Calculate the electrostatic potential given vector of grid coordinates.
* *
......
...@@ -1819,31 +1819,31 @@ void AmoebaReferenceMultipoleForce::calculateInducedDipoles(const vector<RealVec ...@@ -1819,31 +1819,31 @@ void AmoebaReferenceMultipoleForce::calculateInducedDipoles(const vector<RealVec
} }
//void AmoebaReferenceMultipoleForce::calculateLabFramePermanentDipoles(const vector<RealVec>& particlePositions, void AmoebaReferenceMultipoleForce::calculateLabFramePermanentDipoles(const vector<RealVec>& particlePositions,
// const vector<RealOpenMM>& charges, const vector<RealOpenMM>& charges,
// const vector<RealOpenMM>& dipoles, const vector<RealOpenMM>& dipoles,
// const vector<RealOpenMM>& quadrupoles, const vector<RealOpenMM>& quadrupoles,
// const vector<RealOpenMM>& tholes, const vector<RealOpenMM>& tholes,
// const vector<RealOpenMM>& dampingFactors, const vector<RealOpenMM>& dampingFactors,
// const vector<RealOpenMM>& polarity, const vector<RealOpenMM>& polarity,
// const vector<int>& axisTypes, const vector<int>& axisTypes,
// const vector<int>& multipoleAtomZs, const vector<int>& multipoleAtomZs,
// const vector<int>& multipoleAtomXs, const vector<int>& multipoleAtomXs,
// const vector<int>& multipoleAtomYs, const vector<int>& multipoleAtomYs,
// const vector< vector< vector<int> > >& multipoleAtomCovalentInfo, const vector< vector< vector<int> > >& multipoleAtomCovalentInfo,
// vector<RealVec>& outputRotatedPermanentDipoles) { vector<RealVec>& outputRotatedPermanentDipoles) {
// // setup, including calculating permanent dipoles // setup, including calculating permanent dipoles
//
// vector<MultipoleParticleData> particleData; vector<MultipoleParticleData> particleData;
// setup(particlePositions, charges, dipoles, quadrupoles, tholes, setup(particlePositions, charges, dipoles, quadrupoles, tholes,
// dampingFactors, polarity, axisTypes, multipoleAtomZs, multipoleAtomXs, multipoleAtomYs, dampingFactors, polarity, axisTypes, multipoleAtomZs, multipoleAtomXs, multipoleAtomYs,
// multipoleAtomCovalentInfo, particleData); multipoleAtomCovalentInfo, particleData);
// for (int i = 0; i < _numParticles; i++) for (int i = 0; i < _numParticles; i++)
// { {
// _labFramePermanentDipole[i] = particleData[i].dipole; _labFramePermanentDipole[i] = particleData[i].dipole;
// } }
// outputRotatedPermanentDipoles = _labFramePermanentDipole; outputRotatedPermanentDipoles = _labFramePermanentDipole;
//} }
void AmoebaReferenceMultipoleForce::calculateAmoebaSystemMultipoleMoments(const vector<RealOpenMM>& masses, void AmoebaReferenceMultipoleForce::calculateAmoebaSystemMultipoleMoments(const vector<RealOpenMM>& masses,
const vector<RealVec>& particlePositions, const vector<RealVec>& particlePositions,
......
...@@ -538,19 +538,19 @@ public: ...@@ -538,19 +538,19 @@ public:
* @param outputMultipoleMoments output multipole moments * @param outputMultipoleMoments output multipole moments
*/ */
// void calculateLabFramePermanentDipoles(const vector<RealVec>& particlePositions, void calculateLabFramePermanentDipoles(const vector<RealVec>& particlePositions,
// const vector<RealOpenMM>& charges, const vector<RealOpenMM>& charges,
// const vector<RealOpenMM>& dipoles, const vector<RealOpenMM>& dipoles,
// const vector<RealOpenMM>& quadrupoles, const vector<RealOpenMM>& quadrupoles,
// const vector<RealOpenMM>& tholes, const vector<RealOpenMM>& tholes,
// const vector<RealOpenMM>& dampingFactors, const vector<RealOpenMM>& dampingFactors,
// const vector<RealOpenMM>& polarity, const vector<RealOpenMM>& polarity,
// const vector<int>& axisTypes, const vector<int>& axisTypes,
// const vector<int>& multipoleAtomZs, const vector<int>& multipoleAtomZs,
// const vector<int>& multipoleAtomXs, const vector<int>& multipoleAtomXs,
// const vector<int>& multipoleAtomYs, const vector<int>& multipoleAtomYs,
// const vector< vector< vector<int> > >& multipoleAtomCovalentInfo, const vector< vector< vector<int> > >& multipoleAtomCovalentInfo,
// vector<RealVec>& outputRotatedPermanentDipoles); vector<RealVec>& outputRotatedPermanentDipoles);
/** /**
* Calculate system multipole moments. * Calculate system multipole moments.
...@@ -1013,7 +1013,7 @@ protected: ...@@ -1013,7 +1013,7 @@ protected:
* *
* @param particleData vector of particle positions and parameters (charge, labFrame dipoles, quadrupoles, ...) * @param particleData vector of particle positions and parameters (charge, labFrame dipoles, quadrupoles, ...)
*/ */
// virtual void calculateLabFramePermanentDipoles(const std::vector<MultipoleParticleData>& particleData); virtual void calculateLabFramePermanentDipoles(const std::vector<MultipoleParticleData>& particleData);
/** /**
* Setup: * Setup:
...@@ -1268,7 +1268,7 @@ private: ...@@ -1268,7 +1268,7 @@ private:
* *
* @param particleData vector of particle positions and parameters (charge, labFrame dipoles, quadrupoles, ...) * @param particleData vector of particle positions and parameters (charge, labFrame dipoles, quadrupoles, ...)
*/ */
// void calculateLabFramePermanentDipoles(const std::vector<MultipoleParticleData>& particleData); void calculateLabFramePermanentDipoles(const std::vector<MultipoleParticleData>& particleData);
/** /**
* Calculate fields due induced dipoles at each site. * Calculate fields due induced dipoles at each site.
......
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