qProductDot.add(qDot1, qDot2); qProductDot.add(qDot3); qDDot1.add(qDDotTemp); qDDot2.add(d2B2DDot); QuaternionTools.multiply(expD1B1_expD2B2, qDDot2, qDDotTemp); QuaternionTools.multiply(qDDotTemp, expD3B3, qDDotTemp); qDDot2.set(qDDotTemp); QuaternionTools.multiply(d1B1Dot, qDot2, qDDotTemp); qDDot2.add(qDDotTemp); QuaternionTools.multiply(qDot2, d3B3Dot, qDDotTemp); qDDot2.add(qDDotTemp); qDDot3.add(qDDotTemp); qProductDDot.add(qDDot1, qDDot2); qProductDDot.add(qDDot3);