File elasticTwistingForce.h

class elasticTwistingForce : public baseForce

Public Functions

elasticTwistingForce(const shared_ptr<softRobots> &m_soft_robots)
~elasticTwistingForce() override
virtual void computeForce(double dt) override
virtual void computeForceAndJacobian(double dt) override

Private Functions

void crossMat(const Vector3d &a, Matrix3d &b)

Private Members

int ci
int ind
int ind1
int ind2
double norm_e
double norm_f
double norm2_e
double norm2_f
double value
double chi
double milen
Vector3d t0
Vector3d t1
Vector3d te
Vector3d tf
Vector3d kbLocal
Vector3d tilde_t
shared_ptr<VectorXd> theta_f
shared_ptr<VectorXd> theta_e
shared_ptr<VectorXd> deltam
VectorXd gradTwistLocal
VectorXd getUndeformedTwist
VectorXd f
vector<shared_ptr<MatrixXd>> gradTwists
vector<shared_ptr<VectorXd>> deltams
vector<shared_ptr<VectorXd>> theta_fs
vector<shared_ptr<VectorXd>> theta_es
Matrix3d D2mDe2
Matrix3d D2mDf2
Matrix3d D2mDeDf
Matrix3d D2mDfDe
Matrix3d teMatrix
Matrix<double, 11, 11> J
Matrix<double, 11, 11> DDtwist
Matrix<double, 11, 11> Jtt
shared_ptr<MatrixXd> gradTwist
double GJ