Marine systems simulation
ConstraintSet.h
1#pragma once
2#include "ConstraintSolver.h"
3
4namespace CoRiBoDynamics{
5
24{
25public:
33 virtual ~ConstraintSet(){}
34
39 virtual void ComputeConstraints(const double T, const double * const X) = 0;
40
41protected:
46 const std::vector<RigidElement*>& ElementVector();
47
52 void addConstraintResultantForce(int element,const vec6& Force);
53
58 const vec3 Acceleration(int element);
59
64 const vec3 AngularAcceleration(int element);
65
70 const vec6 SecondDerivatives(int element);
71
75 void addMatrix(int i, int j, const mat6& M);
76
77
78private:
79 ConstraintSolver* m_solver;
80};
81
82double structuralAverage(double a, double b);
83
84}
Definition: ConstraintSet.h:24
ConstraintSet(ConstraintSolver *solver)
const vec3 Acceleration(int element)
void addConstraintResultantForce(int element, const vec6 &Force)
virtual void ComputeConstraints(const double T, const double *const X)=0
void addMatrix(int i, int j, const mat6 &M)
const std::vector< RigidElement * > & ElementVector()
const vec3 AngularAcceleration(int element)
const vec6 SecondDerivatives(int element)
Definition: ConstraintSolver.h:31
Definition: CollisionManager.h:6