protected internal abstract void CheckJoint(Joint joint);
protected internal override void CheckJoint(Joint joint) { if (!(joint is ISequentialImpulsesJoint)) { throw new ArgumentException("The joint must implement ISequentialImpulsesJoint to be added to this solver."); } }