/dports/science/simbody/simbody-Simbody-3.7/Simbody/src/ |
H A D | RigidBodyNodeSpec_Planar.h | 68 void setQToFitTransformImpl(const SBStateDigest& sbs, const Transform& X_FM, in setQToFitTransformImpl() argument 71 setQToFitTranslationImpl(sbs, X_FM.p(), q); // see below in setQToFitTransformImpl() 72 setQToFitRotationImpl(sbs, X_FM.R(), q); in setQToFitTransformImpl() 129 Transform& X_FM) const override in calcX_FM() argument 134 X_FM.updR().setRotationFromAngleAboutZ(qCache[CosQ], qCache[SinQ]); in calcX_FM() 135 X_FM.updP() = Vec3(q[1], q[2], 0); in calcX_FM()
|
H A D | RigidBodyNodeSpec_PolarCoords.h | 144 Transform& X_FM) const in calcX_FM() argument 147 X_FM.updR().setRotationFromAngleAboutZ(qCache[CosQ], qCache[SinQ]); in calcX_FM() 149 X_FM.updP() = X_FM.R()*Vec3(q[1],0,0); // 15 flops; could be cheaper in calcX_FM()
|
H A D | RigidBodyNodeSpec_Pin.h | 117 Transform& X_FM) const in calcX_FM() argument 120 X_FM.updR().setRotationFromAngleAboutZ(qCache[CosQ], qCache[SinQ]); in calcX_FM() 121 X_FM.updP() = 0; // can't translate in calcX_FM()
|
H A D | RigidBodyNodeSpec_Screw.h | 123 Transform& X_FM) const in calcX_FM() argument 126 X_FM.updR().setRotationFromAngleAboutZ(qCache[CosQ], qCache[SinQ]); in calcX_FM() 130 X_FM.updP() = Vec3(0,0,q[0]*pitch); in calcX_FM()
|
H A D | RigidBodyNodeSpec_Cylinder.h | 113 Transform& X_FM) const in calcX_FM() argument 116 X_FM.updR().setRotationFromAngleAboutZ(qCache[CosQ], qCache[SinQ]); in calcX_FM() 117 X_FM.updP() = Vec3(0,0,q[1]); in calcX_FM()
|
H A D | RigidBodyNode_LoneParticle.cpp | 80 Transform& X_FM) const override { in calcX_FM() 82 X_FM = Transform(Rotation(), Vec3::getAs(&q[0])); in calcX_FM() 149 Transform& X_FM = toB(pc.bodyJointInParentJointFrame); in realizeInstance() local 150 X_FM.updR().setRotationToIdentityMatrix(); in realizeInstance() 165 Transform& X_FM = toB(pc.bodyJointInParentJointFrame); in realizePosition() local 167 X_FM.updP() = q; in realizePosition() 168 updX_PB(pc) = X_FM; in realizePosition() 169 updX_GB(pc) = X_FM; in realizePosition()
|
H A D | RigidBodyNodeSpec_Universal.h | 138 Transform& X_FM) const in calcX_FM() argument 144 X_FM.updR() = Rotation(BodyRotationSequence, q[0], XAxis, q[1], YAxis); in calcX_FM() 145 X_FM.updP() = 0; in calcX_FM()
|
H A D | RigidBodyNodeSpec_SphericalCoords.h | 201 Transform& X_FM) const in calcX_FM() argument 211 X_FM.updR() = Rotation( BodyRotationSequence, in calcX_FM() 215 X_FM.updP() = t * X_FM.R()(axisT); // i.e., t*Mx or t*Mz, expressed in F in calcX_FM()
|
H A D | RigidBodyNodeSpec_Ellipsoid.h | 166 Transform X_FM; in setUToFitLinearVelocityImpl() local 167 this->calcAcrossJointTransform(sbs,q,X_FM); in setUToFitLinearVelocityImpl() 169 const Vec3 v_FM_M = ~X_FM.R()*v_FM; // we can only do vx and vy in this frame in setUToFitLinearVelocityImpl() 170 const Vec3 r_FM_M = ~X_FM.R()*X_FM.p(); in setUToFitLinearVelocityImpl() 171 const Vec3 wnow_FM_M = ~X_FM.R()*this->fromU(u); // preserve z component in setUToFitLinearVelocityImpl() 178 const Vec3 w_FM = X_FM.R()*w_FM_M; in setUToFitLinearVelocityImpl()
|
H A D | Force_LinearBushing.cpp | 47 Transform X_GF, X_GM, X_FM; member 342 return getImpl().getPositionCache(s).X_FM; } in getX_FM() 432 pc.X_FM = ~pc.X_GF *pc.X_GM; // 63 flops in ensurePositionCacheValid() 437 pc.p_FM_G = pc.X_GF.R() * pc.X_FM.p(); // 15 flops in ensurePositionCacheValid() 441 pc.q.updSubVec<3>(0) = pc.X_FM.R().convertRotationToBodyFixedXYZ(); in ensurePositionCacheValid() 444 pc.q.updSubVec<3>(3) = pc.X_FM.p(); in ensurePositionCacheValid() 457 const Rotation& R_FM = pc.X_FM.R(); in ensureVelocityCacheValid() 526 const Rotation& R_FM = pc.X_FM.R(); in ensureForceCacheValid() 527 const Vec3& p_FM = pc.X_FM.p(); in ensureForceCacheValid()
|
H A D | RigidBodyNodeSpec_Slider.h | 103 Transform& X_FM) const in calcX_FM() argument 109 X_FM = Transform(Rotation(), Vec3(q[0],0,0)); in calcX_FM()
|
H A D | RigidBodyNodeSpec_Bushing.h | 83 void setQToFitTransformImpl(const SBStateDigest& sbs, const Transform& X_FM, in setQToFitTransformImpl() argument 86 setQToFitTranslationImpl(sbs, X_FM.p(), q); // see below in setQToFitTransformImpl() 87 setQToFitRotationImpl(sbs, X_FM.R(), q); in setQToFitTransformImpl()
|
H A D | RigidBodyNodeSpec_Translation.h | 103 Transform& X_FM) const in calcX_FM() argument 108 X_FM = Transform(Rotation(), Vec3::getAs(&q[0])); in calcX_FM()
|
H A D | RigidBodyNodeSpec.h | 471 void setQToFitTransformImpl(const SBStateDigest& sbs, const Transform& X_FM, in setQToFitTransformImpl() argument 473 setQToFitRotationImpl (sbs,X_FM.R(),q); in setQToFitTransformImpl() 474 setQToFitTranslationImpl(sbs,X_FM.p(),q); in setQToFitTransformImpl() 561 const Transform& X_FM = getX_FM(pc); // just calculated in calcBodyTransforms() local 564 const Transform X_FB = (noX_MB ? X_FM // cheap in calcBodyTransforms() 565 : X_FM*X_MB); // 63 flops in calcBodyTransforms()
|
H A D | RigidBodyNodeSpec_Free.h | 80 void setQToFitTransformImpl(const SBStateDigest& sbs, const Transform& X_FM, in setQToFitTransformImpl() argument 83 setQToFitTranslationImpl(sbs, X_FM.p(), q); // see below in setQToFitTransformImpl() 84 setQToFitRotationImpl(sbs, X_FM.R(), q); in setQToFitTransformImpl()
|
H A D | RigidBodyNodeSpec_Custom.h | 193 void setQToFitTransformImpl(const SBStateDigest& sbs, const Transform& X_FM, Vector& q) const { in setQToFitTransformImpl() argument 194 …impl.setQToFitTransform(sbs.getState(), X_FM, this->getNQInUse(sbs.getModelVars()), &q[this->getQI… in setQToFitTransformImpl()
|
H A D | RigidBodyNodeSpec_FreeLine.h | 95 void setQToFitTransformImpl(const SBStateDigest& sbs, const Transform& X_FM, in setQToFitTransformImpl() argument 98 setQToFitTranslationImpl(sbs, X_FM.p(), q); // see below in setQToFitTransformImpl() 99 setQToFitRotationImpl(sbs, X_FM.R(), q); in setQToFitTransformImpl()
|
H A D | RigidBodyNode_Weld.cpp | 92 Transform& X_FM) const override in calcX_FM() 94 X_FM.setToZero(); } in calcX_FM() 96 void setQToFitTransformImpl(const SBStateDigest& sbs, const Transform& X_FM, in setQToFitTransformImpl() argument
|
H A D | RigidBodyNode.h | 397 (const SBStateDigest& sbs, const Transform& X_FM, Vector& q) const in setQToFitTransform() argument 398 { setQToFitTransformImpl(sbs, isReversed() ? Transform(~X_FM) : X_FM, q); } in setQToFitTransform()
|
H A D | MobilizedBody.cpp | 2300 setDefaultTransform(const Transform& X_FM) { in setDefaultTransform() argument 2301 setDefaultTranslation(X_FM.p()); in setDefaultTransform() 2302 setDefaultQuaternion(X_FM.R().convertRotationToQuaternion()); in setDefaultTransform() 2909 setQToFitTransform(const State& state, const Transform& X_FM, in setQToFitTransform() argument 2915 const State& state, int nq, const Transform& X_FM) in setQToFitTransform() argument 2916 : OptimizerSystem(nq), impl(impl), state(state), X_FM(X_FM) {} in setQToFitTransform() 2921 f = (transform.p()-X_FM.p()).norm(); in setQToFitTransform() 2922 f += std::abs((~transform.R()*X_FM.R()).convertRotationToAngleAxis()[0]); in setQToFitTransform() 2928 const Transform& X_FM; in setQToFitTransform() member in SimTK::MobilizedBody::Custom::Implementation::setQToFitTransform::OptimizerFunction 2930 OptimizerFunction function(*this, state, nq, X_FM); in setQToFitTransform()
|
H A D | MobilizedBodyImpl.h | 248 void setQToFitTransform(State& s, const Transform& X_FM) const; 1717 …void buildH(Vector& q, Vector& u, const Transform& X_FM, const Array_<const Function*>& functions,… in buildH() argument 1768 …void buildHdot(Vector& q, Vector& u, const Transform& X_FM, const Array_<const Function*>& functio… in buildHdot() argument
|
/dports/science/simbody/simbody-Simbody-3.7/Simbody/include/simbody/internal/ |
H A D | MobilizedBody_Bushing.h | 129 Bushing& setDefaultTransform(const Transform& X_FM) in setDefaultTransform() argument 131 q.updSubVec<3>(0) = X_FM.R().convertRotationToBodyFixedXYZ(); in setDefaultTransform() 132 q.updSubVec<3>(3) = X_FM.p(); in setDefaultTransform()
|
H A D | MobilizedBody_Custom.h | 346 virtual void setQToFitTransform(const State&, const Transform& X_FM, int nq, Real* q) const;
|
/dports/science/opensim-core/opensim-core-4.1/OpenSim/Simulation/Model/ |
H A D | TwoFrameLinker.h | 447 SimTK::Transform X_FM = this->computeRelativeOffset(s); in computeDeflection() local 453 dq.updSubVec<3>(0) = X_FM.R().convertRotationToBodyFixedXYZ(); in computeDeflection() 455 dq.updSubVec<3>(3) = X_FM.p(); in computeDeflection() 471 SimTK::Transform X_FM = ~X_GF * X_GM; in computeRelativeVelocity() local 481 SimTK::Vec3 p_FM_G = X_GF.R() * X_FM.p(); // 15 flops in computeRelativeVelocity() 502 SimTK::Transform X_FM = this->computeRelativeOffset(s); in computeDeflectionRate() local 507 const SimTK::Vec3 w_FM_M = ~(X_FM.R()) * V_FM[0]; in computeDeflectionRate() 537 SimTK::Transform X_FM = ~X_GF * X_GM; in convertInternalForceToForcesOnFrames() local 557 SimTK::Vec3 p_FM_G = X_GF.R() * X_FM.p(); // 15 flops in convertInternalForceToForcesOnFrames()
|
/dports/science/simbody/simbody-Simbody-3.7/Simbody/tests/ |
H A D | TestCustomMobilizedBodies.cpp | 94 void setQToFitTransform(const State&, const Transform& X_FM, int nq, Real* q) const override { in setQToFitTransform() argument 96 Vec3::updAs(q) = X_FM.p(); in setQToFitTransform() 200 void setQToFitTransform(const State& s, const Transform& X_FM, int nq, Real* q) const override { in setQToFitTransform() argument 203 Vec3::updAs(q) = X_FM.R().convertRotationToBodyFixedXYZ(); in setQToFitTransform() 207 Vec4::updAs(q) = X_FM.R().convertRotationToQuaternion().asVec4(); in setQToFitTransform() 315 void setQToFitTransform(const State& s, const Transform& X_FM, int nq, Real* q) const override { in setQToFitTransform() argument 318 Vec3::updAs(q) = X_FM.R().convertRotationToBodyFixedXYZ(); in setQToFitTransform() 322 Vec4::updAs(q) = X_FM.R().convertRotationToQuaternion().asVec4(); in setQToFitTransform() 324 Vec3::updAs(&q[nq-3]) = X_FM.p(); in setQToFitTransform()
|