diff --git a/roboticstoolbox/robot/Robot.py b/roboticstoolbox/robot/Robot.py index eadab10d..2ad479e3 100644 --- a/roboticstoolbox/robot/Robot.py +++ b/roboticstoolbox/robot/Robot.py @@ -1790,7 +1790,8 @@ def rne( v[j] = vJ a[j] = Xup[j] * a_grav + SpatialAcceleration(s[j] * qddk[j]) else: - jp = self.links[j].parent.jindex # type: ignore + parent_name = self.links[j].parent.name + jp = next(i for i, link in enumerate(self.links) if link.name == parent_name) v[j] = Xup[j] * v[jp] + vJ a[j] = ( Xup[j] * a[jp] + SpatialAcceleration(s[j] * qddk[j]) + v[j] @ vJ @@ -1804,7 +1805,8 @@ def rne( Q[k, j] = sum(f[j].A * s[j]) if self.links[j].parent is not None: - jp = self.links[j].parent.jindex # type: ignore + parent_name = self.links[j].parent.name + jp = next(i for i, link in enumerate(self.links) if link.name == parent_name) f[jp] = f[jp] + Xup[j] * f[j] if l == 1: