Commit f0151245 authored by Peter Eastman's avatar Peter Eastman
Browse files

Serialization proxies were storing unnecessary information

parent 182eb10c
...@@ -51,7 +51,7 @@ void AmoebaAngleForceProxy::serialize(const void* object, SerializationNode& nod ...@@ -51,7 +51,7 @@ void AmoebaAngleForceProxy::serialize(const void* object, SerializationNode& nod
node.setDoubleProperty("pentic", force.getAmoebaGlobalAnglePentic()); node.setDoubleProperty("pentic", force.getAmoebaGlobalAnglePentic());
node.setDoubleProperty("sextic", force.getAmoebaGlobalAngleSextic()); node.setDoubleProperty("sextic", force.getAmoebaGlobalAngleSextic());
SerializationNode& bonds = node.createChildNode("Angles").setIntProperty( "size", force.getNumAngles() ); SerializationNode& bonds = node.createChildNode("Angles");
for (unsigned int ii = 0; ii < static_cast<unsigned int>(force.getNumAngles()); ii++) { for (unsigned int ii = 0; ii < static_cast<unsigned int>(force.getNumAngles()); ii++) {
int particle1, particle2, particle3; int particle1, particle2, particle3;
double distance, k; double distance, k;
......
...@@ -48,7 +48,7 @@ void AmoebaBondForceProxy::serialize(const void* object, SerializationNode& node ...@@ -48,7 +48,7 @@ void AmoebaBondForceProxy::serialize(const void* object, SerializationNode& node
node.setDoubleProperty("cubic", force.getAmoebaGlobalBondCubic()); node.setDoubleProperty("cubic", force.getAmoebaGlobalBondCubic());
node.setDoubleProperty("quartic", force.getAmoebaGlobalBondQuartic()); node.setDoubleProperty("quartic", force.getAmoebaGlobalBondQuartic());
SerializationNode& bonds = node.createChildNode("Bonds").setIntProperty( "size", force.getNumBonds() ); SerializationNode& bonds = node.createChildNode("Bonds");
for (unsigned int ii = 0; ii < static_cast<unsigned int>(force.getNumBonds()); ii++) { for (unsigned int ii = 0; ii < static_cast<unsigned int>(force.getNumBonds()); ii++) {
int particle1, particle2; int particle1, particle2;
double distance, k; double distance, k;
......
...@@ -52,11 +52,11 @@ void AmoebaGeneralizedKirkwoodForceProxy::serialize(const void* object, Serializ ...@@ -52,11 +52,11 @@ void AmoebaGeneralizedKirkwoodForceProxy::serialize(const void* object, Serializ
node.setDoubleProperty("GeneralizedKirkwoodSurfaceAreaFactor", force.getSurfaceAreaFactor() ); node.setDoubleProperty("GeneralizedKirkwoodSurfaceAreaFactor", force.getSurfaceAreaFactor() );
node.setIntProperty( "GeneralizedKirkwoodIncludeCavityTerm", force.getIncludeCavityTerm() ); node.setIntProperty( "GeneralizedKirkwoodIncludeCavityTerm", force.getIncludeCavityTerm() );
SerializationNode& particles = node.createChildNode("GeneralizedKirkwoodParticles").setIntProperty( "size", force.getNumParticles() ); SerializationNode& particles = node.createChildNode("GeneralizedKirkwoodParticles");
for (unsigned int ii = 0; ii < static_cast<unsigned int>(force.getNumParticles()); ii++) { for (unsigned int ii = 0; ii < static_cast<unsigned int>(force.getNumParticles()); ii++) {
double radius, charge, scalingFactor; double radius, charge, scalingFactor;
force.getParticleParameters( ii, charge, radius, scalingFactor ); force.getParticleParameters( ii, charge, radius, scalingFactor );
particles.createChildNode("Particle").setIntProperty("index", ii).setDoubleProperty("charge", charge).setDoubleProperty("radius", radius).setDoubleProperty("scaleFactor", scalingFactor); particles.createChildNode("Particle").setDoubleProperty("charge", charge).setDoubleProperty("radius", radius).setDoubleProperty("scaleFactor", scalingFactor);
} }
} }
......
...@@ -51,7 +51,7 @@ void AmoebaInPlaneAngleForceProxy::serialize(const void* object, SerializationNo ...@@ -51,7 +51,7 @@ void AmoebaInPlaneAngleForceProxy::serialize(const void* object, SerializationNo
node.setDoubleProperty("pentic", force.getAmoebaGlobalInPlaneAnglePentic()); node.setDoubleProperty("pentic", force.getAmoebaGlobalInPlaneAnglePentic());
node.setDoubleProperty("sextic", force.getAmoebaGlobalInPlaneAngleSextic()); node.setDoubleProperty("sextic", force.getAmoebaGlobalInPlaneAngleSextic());
SerializationNode& bonds = node.createChildNode("InPlaneAngles").setIntProperty( "size", force.getNumAngles() ); SerializationNode& bonds = node.createChildNode("InPlaneAngles");
for ( unsigned int ii = 0; ii < static_cast<unsigned int>(force.getNumAngles()); ii++) { for ( unsigned int ii = 0; ii < static_cast<unsigned int>(force.getNumAngles()); ii++) {
int particle1, particle2, particle3, particle4; int particle1, particle2, particle3, particle4;
double distance, k; double distance, k;
......
...@@ -56,8 +56,6 @@ static void getCovalentTypes( std::vector<std::string>& covalentTypes ){ ...@@ -56,8 +56,6 @@ static void getCovalentTypes( std::vector<std::string>& covalentTypes ){
static void addCovalentMap( SerializationNode& particleExclusions, int particleIndex, std::string mapName, std::vector< int > covalentMap ){ static void addCovalentMap( SerializationNode& particleExclusions, int particleIndex, std::string mapName, std::vector< int > covalentMap ){
SerializationNode& map = particleExclusions.createChildNode(mapName); SerializationNode& map = particleExclusions.createChildNode(mapName);
map.setIntProperty( "index", particleIndex );
map.setIntProperty( "size", covalentMap.size() );
for (unsigned int ii = 0; ii < covalentMap.size(); ii++) { for (unsigned int ii = 0; ii < covalentMap.size(); ii++) {
map.createChildNode("Cv").setIntProperty( "v", covalentMap[ii] ); map.createChildNode("Cv").setIntProperty( "v", covalentMap[ii] );
} }
...@@ -93,7 +91,7 @@ void AmoebaMultipoleForceProxy::serialize(const void* object, SerializationNode& ...@@ -93,7 +91,7 @@ void AmoebaMultipoleForceProxy::serialize(const void* object, SerializationNode&
std::vector<std::string> covalentTypes; std::vector<std::string> covalentTypes;
getCovalentTypes( covalentTypes ); getCovalentTypes( covalentTypes );
SerializationNode& particles = node.createChildNode("MultipoleParticles").setIntProperty( "size", force.getNumMultipoles() ); SerializationNode& particles = node.createChildNode("MultipoleParticles");
for (unsigned int ii = 0; ii < static_cast<unsigned int>(force.getNumMultipoles()); ii++) { for (unsigned int ii = 0; ii < static_cast<unsigned int>(force.getNumMultipoles()); ii++) {
int axisType, multipoleAtomZ, multipoleAtomX, multipoleAtomY; int axisType, multipoleAtomZ, multipoleAtomX, multipoleAtomY;
...@@ -106,13 +104,13 @@ void AmoebaMultipoleForceProxy::serialize(const void* object, SerializationNode& ...@@ -106,13 +104,13 @@ void AmoebaMultipoleForceProxy::serialize(const void* object, SerializationNode&
axisType, multipoleAtomZ, multipoleAtomX, multipoleAtomY, thole, dampingFactor, polarity ); axisType, multipoleAtomZ, multipoleAtomX, multipoleAtomY, thole, dampingFactor, polarity );
SerializationNode& particle = particles.createChildNode("Particle"); SerializationNode& particle = particles.createChildNode("Particle");
particle.setIntProperty("index", ii).setIntProperty("axisType", axisType).setIntProperty("multipoleAtomZ", multipoleAtomZ).setIntProperty("multipoleAtomX", multipoleAtomX).setIntProperty("multipoleAtomY", multipoleAtomY); particle.setIntProperty("axisType", axisType).setIntProperty("multipoleAtomZ", multipoleAtomZ).setIntProperty("multipoleAtomX", multipoleAtomX).setIntProperty("multipoleAtomY", multipoleAtomY);
particle.setDoubleProperty("charge", charge).setDoubleProperty("thole", thole).setDoubleProperty("damp", dampingFactor).setDoubleProperty("polarity", polarity); particle.setDoubleProperty("charge", charge).setDoubleProperty("thole", thole).setDoubleProperty("damp", dampingFactor).setDoubleProperty("polarity", polarity);
SerializationNode& dipole = particle.createChildNode("Dipole").setIntProperty( "size", 3 ); SerializationNode& dipole = particle.createChildNode("Dipole");
dipole.setDoubleProperty( "d0", molecularDipole[0] ).setDoubleProperty( "d1", molecularDipole[1] ).setDoubleProperty( "d2", molecularDipole[2] ); dipole.setDoubleProperty( "d0", molecularDipole[0] ).setDoubleProperty( "d1", molecularDipole[1] ).setDoubleProperty( "d2", molecularDipole[2] );
SerializationNode& quadrupole = particle.createChildNode("Quadrupole").setIntProperty( "size", 9 ); SerializationNode& quadrupole = particle.createChildNode("Quadrupole");
quadrupole.setDoubleProperty( "q0", molecularQuadrupole[0] ).setDoubleProperty( "q1", molecularQuadrupole[1] ).setDoubleProperty( "q2", molecularQuadrupole[2] ); quadrupole.setDoubleProperty( "q0", molecularQuadrupole[0] ).setDoubleProperty( "q1", molecularQuadrupole[1] ).setDoubleProperty( "q2", molecularQuadrupole[2] );
quadrupole.setDoubleProperty( "q3", molecularQuadrupole[3] ).setDoubleProperty( "q4", molecularQuadrupole[4] ).setDoubleProperty( "q5", molecularQuadrupole[5] ); quadrupole.setDoubleProperty( "q3", molecularQuadrupole[3] ).setDoubleProperty( "q4", molecularQuadrupole[4] ).setDoubleProperty( "q5", molecularQuadrupole[5] );
quadrupole.setDoubleProperty( "q6", molecularQuadrupole[6] ).setDoubleProperty( "q7", molecularQuadrupole[7] ).setDoubleProperty( "q8", molecularQuadrupole[8] ); quadrupole.setDoubleProperty( "q6", molecularQuadrupole[6] ).setDoubleProperty( "q7", molecularQuadrupole[7] ).setDoubleProperty( "q8", molecularQuadrupole[8] );
......
...@@ -49,7 +49,7 @@ void AmoebaOutOfPlaneBendForceProxy::serialize(const void* object, Serialization ...@@ -49,7 +49,7 @@ void AmoebaOutOfPlaneBendForceProxy::serialize(const void* object, Serialization
node.setDoubleProperty("pentic", force.getAmoebaGlobalOutOfPlaneBendPentic()); node.setDoubleProperty("pentic", force.getAmoebaGlobalOutOfPlaneBendPentic());
node.setDoubleProperty("sextic", force.getAmoebaGlobalOutOfPlaneBendSextic()); node.setDoubleProperty("sextic", force.getAmoebaGlobalOutOfPlaneBendSextic());
SerializationNode& bonds = node.createChildNode("OutOfPlaneBend").setIntProperty( "size", force.getNumOutOfPlaneBends() ); SerializationNode& bonds = node.createChildNode("OutOfPlaneBend");
for (unsigned int ii = 0; ii < static_cast<unsigned int>(force.getNumOutOfPlaneBends()); ii++) { for (unsigned int ii = 0; ii < static_cast<unsigned int>(force.getNumOutOfPlaneBends()); ii++) {
int particle1, particle2, particle3, particle4; int particle1, particle2, particle3, particle4;
double k; double k;
......
...@@ -44,7 +44,7 @@ AmoebaPiTorsionForceProxy::AmoebaPiTorsionForceProxy() : SerializationProxy("Amo ...@@ -44,7 +44,7 @@ AmoebaPiTorsionForceProxy::AmoebaPiTorsionForceProxy() : SerializationProxy("Amo
void AmoebaPiTorsionForceProxy::serialize(const void* object, SerializationNode& node) const { void AmoebaPiTorsionForceProxy::serialize(const void* object, SerializationNode& node) const {
node.setIntProperty("version", 1); node.setIntProperty("version", 1);
const AmoebaPiTorsionForce& force = *reinterpret_cast<const AmoebaPiTorsionForce*>(object); const AmoebaPiTorsionForce& force = *reinterpret_cast<const AmoebaPiTorsionForce*>(object);
SerializationNode& bonds = node.createChildNode("PiTorsion").setIntProperty( "size", force.getNumPiTorsions() ); SerializationNode& bonds = node.createChildNode("PiTorsion");
for ( unsigned int ii = 0; ii < static_cast<unsigned int>(force.getNumPiTorsions()); ii++) { for ( unsigned int ii = 0; ii < static_cast<unsigned int>(force.getNumPiTorsions()); ii++) {
int particle1, particle2, particle3, particle4, particle5, particle6; int particle1, particle2, particle3, particle4, particle5, particle6;
double k; double k;
......
...@@ -44,7 +44,7 @@ AmoebaStretchBendForceProxy::AmoebaStretchBendForceProxy() : SerializationProxy( ...@@ -44,7 +44,7 @@ AmoebaStretchBendForceProxy::AmoebaStretchBendForceProxy() : SerializationProxy(
void AmoebaStretchBendForceProxy::serialize(const void* object, SerializationNode& node) const { void AmoebaStretchBendForceProxy::serialize(const void* object, SerializationNode& node) const {
node.setIntProperty("version", 1); node.setIntProperty("version", 1);
const AmoebaStretchBendForce& force = *reinterpret_cast<const AmoebaStretchBendForce*>(object); const AmoebaStretchBendForce& force = *reinterpret_cast<const AmoebaStretchBendForce*>(object);
SerializationNode& bonds = node.createChildNode("StretchBendAngles").setIntProperty( "size", force.getNumStretchBends() ); SerializationNode& bonds = node.createChildNode("StretchBendAngles");
for (unsigned int ii = 0; ii < static_cast<unsigned int>(force.getNumStretchBends()); ii++) { for (unsigned int ii = 0; ii < static_cast<unsigned int>(force.getNumStretchBends()); ii++) {
int particle1, particle2, particle3; int particle1, particle2, particle3;
double distanceAB, distanceCB, angle, k; double distanceAB, distanceCB, angle, k;
......
...@@ -76,7 +76,6 @@ void AmoebaTorsionTorsionForceProxy::serialize(const void* object, Serialization ...@@ -76,7 +76,6 @@ void AmoebaTorsionTorsionForceProxy::serialize(const void* object, Serialization
// value5 = F_xy partial f wrt x,y // value5 = F_xy partial f wrt x,y
SerializationNode& grids = node.createChildNode("TorsionTorsionGrids"); SerializationNode& grids = node.createChildNode("TorsionTorsionGrids");
grids.setIntProperty("size", static_cast<int>(force.getNumTorsionTorsionGrids()));
for (unsigned int kk = 0; kk < static_cast<unsigned int>(force.getNumTorsionTorsionGrids()); kk++) { for (unsigned int kk = 0; kk < static_cast<unsigned int>(force.getNumTorsionTorsionGrids()); kk++) {
const std::vector< std::vector< std::vector<double> > > grid = force.getTorsionTorsionGrid( kk ); const std::vector< std::vector< std::vector<double> > > grid = force.getTorsionTorsionGrid( kk );
...@@ -87,11 +86,10 @@ void AmoebaTorsionTorsionForceProxy::serialize(const void* object, Serialization ...@@ -87,11 +86,10 @@ void AmoebaTorsionTorsionForceProxy::serialize(const void* object, Serialization
gridCount += grid[ii].size(); gridCount += grid[ii].size();
} }
SerializationNode& gridNode = grids.createChildNode("TorsionTorsionGrid").setIntProperty("size", static_cast<int>(gridCount) ); SerializationNode& gridNode = grids.createChildNode("TorsionTorsionGrid");
for ( unsigned int ii = 0; ii < grid.size(); ii++) { for ( unsigned int ii = 0; ii < grid.size(); ii++) {
SerializationNode& gridSerializationRow = gridNode.createChildNode("RowNode"); SerializationNode& gridSerializationRow = gridNode.createChildNode("RowNode");
gridSerializationRow.setIntProperty("dim", ii ); gridSerializationRow.setIntProperty("dim", ii );
gridSerializationRow.setIntProperty("size", static_cast<int>(grid[ii].size() ) );
for ( unsigned int jj = 0; jj < grid[ii].size(); jj++) { for ( unsigned int jj = 0; jj < grid[ii].size(); jj++) {
SerializationNode& gridSerializationColumnNode = gridSerializationRow.createChildNode("ColumnNode"); SerializationNode& gridSerializationColumnNode = gridSerializationRow.createChildNode("ColumnNode");
gridSerializationColumnNode.setIntProperty("dim", jj ); gridSerializationColumnNode.setIntProperty("dim", jj );
......
...@@ -51,7 +51,7 @@ void AmoebaVdwForceProxy::serialize(const void* object, SerializationNode& node) ...@@ -51,7 +51,7 @@ void AmoebaVdwForceProxy::serialize(const void* object, SerializationNode& node)
node.setIntProperty("method", (int) force.getNonbondedMethod()); node.setIntProperty("method", (int) force.getNonbondedMethod());
SerializationNode& particles = node.createChildNode("VdwParticles").setIntProperty("size", force.getNumParticles() ); SerializationNode& particles = node.createChildNode("VdwParticles");
for (unsigned int ii = 0; ii < static_cast<unsigned int>(force.getNumParticles()); ii++) { for (unsigned int ii = 0; ii < static_cast<unsigned int>(force.getNumParticles()); ii++) {
int ivIndex; int ivIndex;
...@@ -59,14 +59,12 @@ void AmoebaVdwForceProxy::serialize(const void* object, SerializationNode& node) ...@@ -59,14 +59,12 @@ void AmoebaVdwForceProxy::serialize(const void* object, SerializationNode& node)
force.getParticleParameters( ii, ivIndex, sigma, epsilon, reductionFactor ); force.getParticleParameters( ii, ivIndex, sigma, epsilon, reductionFactor );
SerializationNode& particle = particles.createChildNode("Particle"); SerializationNode& particle = particles.createChildNode("Particle");
particle.setIntProperty("index", ii).setIntProperty("ivIndex", ivIndex).setDoubleProperty("sigma", sigma).setDoubleProperty("epsilon", epsilon).setDoubleProperty("reductionFactor", reductionFactor); particle.setIntProperty("ivIndex", ivIndex).setDoubleProperty("sigma", sigma).setDoubleProperty("epsilon", epsilon).setDoubleProperty("reductionFactor", reductionFactor);
std::vector< int > exclusions; std::vector< int > exclusions;
force.getParticleExclusions( ii, exclusions ); force.getParticleExclusions( ii, exclusions );
SerializationNode& particleExclusions = particle.createChildNode("ParticleExclusions"); SerializationNode& particleExclusions = particle.createChildNode("ParticleExclusions");
particleExclusions.setIntProperty("size", exclusions.size() );
particleExclusions.setIntProperty("index", ii );
for (unsigned int jj = 0; jj < exclusions.size(); jj++) { for (unsigned int jj = 0; jj < exclusions.size(); jj++) {
particleExclusions.createChildNode( "excl" ).setIntProperty( "index", exclusions[jj] ); particleExclusions.createChildNode( "excl" ).setIntProperty( "index", exclusions[jj] );
} }
......
...@@ -53,11 +53,11 @@ void AmoebaWcaDispersionForceProxy::serialize(const void* object, SerializationN ...@@ -53,11 +53,11 @@ void AmoebaWcaDispersionForceProxy::serialize(const void* object, SerializationN
node.setDoubleProperty("Dispoff", force.getDispoff()); node.setDoubleProperty("Dispoff", force.getDispoff());
node.setDoubleProperty("Slevy", force.getSlevy()); node.setDoubleProperty("Slevy", force.getSlevy());
SerializationNode& particles = node.createChildNode("WcaDispersionParticles").setIntProperty( "size", force.getNumParticles() ); SerializationNode& particles = node.createChildNode("WcaDispersionParticles");
for (unsigned int ii = 0; ii < static_cast<unsigned int>(force.getNumParticles()); ii++) { for (unsigned int ii = 0; ii < static_cast<unsigned int>(force.getNumParticles()); ii++) {
double radius, epsilon; double radius, epsilon;
force.getParticleParameters( ii, radius, epsilon ); force.getParticleParameters( ii, radius, epsilon );
particles.createChildNode("Particle").setIntProperty("index", ii).setDoubleProperty("radius", radius).setDoubleProperty("epsilon", epsilon); particles.createChildNode("Particle").setDoubleProperty("radius", radius).setDoubleProperty("epsilon", epsilon);
} }
} }
......
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