Public Member Functions | List of all members
pointConstraint Class Reference

Accumulates point constraints through successive applications of the applyConstraint function. More...

Inheritance diagram for pointConstraint:
Inheritance graph
[legend]
Collaboration diagram for pointConstraint:
Collaboration graph
[legend]

Public Member Functions

 pointConstraint ()
 Construct null. More...
 
 pointConstraint (const Tuple2< label, vector > &)
 Construct from components. More...
 
 pointConstraint (Istream &)
 Construct from Istream. More...
 
void applyConstraint (const vector &cd)
 Apply and accumulate the effect of the given constraint direction. More...
 
void combine (const pointConstraint &)
 Combine constraints. More...
 
tensor constraintTransformation () const
 Return the accumulated constraint transformation tensor. More...
 
void unconstrainedDirections (label &n, tensor &vecs) const
 Return the accumulated unconstrained directions. Directions. More...
 
vector constrainDisplacement (const vector &disp) const
 Constrain a displacement. More...
 
- Public Member Functions inherited from Tuple2< label, vector >
 Tuple2 ()
 Null constructor for lists. More...
 
 Tuple2 (const label &f, const vector &s)
 Construct from components. More...
 
 Tuple2 (Istream &is)
 Construct from Istream. More...
 
const labelfirst () const
 Return first. More...
 
labelfirst ()
 Return first. More...
 
const vectorsecond () const
 Return second. More...
 
vectorsecond ()
 Return second. More...
 

Detailed Description

Accumulates point constraints through successive applications of the applyConstraint function.

After all the constraints have been entered the resulting transformation tensor is returned by the constraintTransformation function.

Source files

Definition at line 56 of file pointConstraint.H.

Constructor & Destructor Documentation

◆ pointConstraint() [1/3]

pointConstraint ( )
inline

Construct null.

Definition at line 28 of file pointConstraintI.H.

Referenced by Foam::transform().

Here is the caller graph for this function:

◆ pointConstraint() [2/3]

pointConstraint ( const Tuple2< label, vector > &  pc)
inline

Construct from components.

Definition at line 34 of file pointConstraintI.H.

◆ pointConstraint() [3/3]

pointConstraint ( Istream is)
inline

Construct from Istream.

Definition at line 40 of file pointConstraintI.H.

Member Function Documentation

◆ applyConstraint()

void applyConstraint ( const vector cd)
inline

◆ combine()

void combine ( const pointConstraint pc)
inline

◆ constraintTransformation()

Foam::tensor constraintTransformation ( ) const
inline

Return the accumulated constraint transformation tensor.

Definition at line 118 of file pointConstraintI.H.

References Tuple2< label, vector >::first(), Foam::I, Tuple2< label, vector >::second(), Foam::sqr(), pointConstraint::unconstrainedDirections(), and Foam::Zero.

Referenced by sixDoFRigidBodyMotion::addConstraints().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ unconstrainedDirections()

void unconstrainedDirections ( label n,
tensor vecs 
) const
inline

Return the accumulated unconstrained directions. Directions.

coded as first n rows of tensor.

Definition at line 140 of file pointConstraintI.H.

References pointConstraint::constrainDisplacement(), Foam::e, Tuple2< label, vector >::first(), Foam::mag(), Tuple2< label, vector >::second(), FixedList< T, Size >::size(), x, Vector< Cmpt >::x(), Vector< Cmpt >::y(), and Foam::Zero.

Referenced by pointConstraint::constraintTransformation().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ constrainDisplacement()

Foam::vector constrainDisplacement ( const vector disp) const
inline

Constrain a displacement.

Definition at line 186 of file pointConstraintI.H.

References Tuple2< label, vector >::first(), Tuple2< label, vector >::second(), and Foam::Zero.

Referenced by pointConstraint::unconstrainedDirections().

Here is the call graph for this function:
Here is the caller graph for this function:

The documentation for this class was generated from the following files: