Commit 1beac75d authored by Mark Friedrichs's avatar Mark Friedrichs
Browse files

Mods associated w/ polarization type parameter

parent b1dc92cc
......@@ -70,10 +70,11 @@ void loadCovalentMap( const SerializationNode& map, std::vector< int >& covalent
}
void AmoebaMultipoleForceProxy::serialize(const void* object, SerializationNode& node) const {
node.setIntProperty("version", 1);
node.setIntProperty("version", 2);
const AmoebaMultipoleForce& force = *reinterpret_cast<const AmoebaMultipoleForce*>(object);
node.setIntProperty("nonbondedMethod", force.getNonbondedMethod());
node.setIntProperty("polarizationType", force.getPolarizationType());
node.setIntProperty("pmeBSplineOrder", force.getPmeBSplineOrder());
node.setIntProperty("mutualInducedIterationMethod", force.getMutualInducedIterationMethod());
node.setIntProperty("mutualInducedMaxIterations", force.getMutualInducedMaxIterations());
......@@ -125,13 +126,16 @@ void AmoebaMultipoleForceProxy::serialize(const void* object, SerializationNode&
}
void* AmoebaMultipoleForceProxy::deserialize(const SerializationNode& node) const {
if (node.getIntProperty("version") != 1)
if (node.getIntProperty("version") > 2)
throw OpenMMException("Unsupported version number");
AmoebaMultipoleForce* force = new AmoebaMultipoleForce();
try {
force->setNonbondedMethod( static_cast<AmoebaMultipoleForce::AmoebaNonbondedMethod>(node.getIntProperty( "nonbondedMethod" )) );
if( node.getIntProperty("version") == 2 ){
force->setPolarizationType( static_cast<AmoebaMultipoleForce::AmoebaPolarizationType>(node.getIntProperty( "polarizationType" )) );
}
force->setPmeBSplineOrder( node.getIntProperty( "pmeBSplineOrder" ) );
force->setMutualInducedIterationMethod( static_cast<AmoebaMultipoleForce::MutualInducedIterationMethod>(node.getIntProperty( "mutualInducedIterationMethod" ) ) );
force->setMutualInducedMaxIterations( node.getIntProperty( "mutualInducedMaxIterations" ) );
......
......@@ -247,6 +247,7 @@ UNITS = {
("AmoebaMultipoleForce", "getNumMultipoles") : ( None,()),
("AmoebaMultipoleForce", "getNonbondedMethod") : ( None,()),
("AmoebaMultipoleForce", "getPolarizationType") : ( None,()),
("AmoebaMultipoleForce", "getCutoffDistance") : ( 'unit.nanometer',()),
("AmoebaMultipoleForce", "getAEwald") : ( '1/unit.nanometer',()),
("AmoebaMultipoleForce", "getPmeBSplineOrder") : ( None,()),
......
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