void Molecule::calcForces() { RigidBody* rb; Bond* bond; Bend* bend; Torsion* torsion; std::vector<RigidBody*> rbIter; std::vector<Bond*> bondIter;; std::vector<Bend*> bendIter; std::vector<Torsion*> torsionIter; for (rb = beginRigidBody(rbIter); rb != NULL; rb = nextRigidBody(rbIter)) { rb->updateAtoms(); } for (bond = beginBond(bondIter); bond != NULL; bond = nextBond(bondIter)) { bond->calcForce(); } for (bend = beginBend(bendIter); bend != NULL; bend = nextBend(bendIter)) { bend->calcForce(); } for (torsion = beginTorsion(torsionIter); torsion != NULL; torsion = nextTorsion(torsionIter)) { torsion->calcForce(); } }