NuTo
Numerics Tool
Classes | Typedefs | Functions
NuTo::Constraint Namespace Reference

Classes

class  Constraints
 stores constraint equations, separated by their dof type More...
 
class  Equation
 stores a constraint equation More...
 
struct  JKNumbering
 represents a numbering where first the independent dofs are consecutively numbered leaving out the dependent ones and then the dependent dof numbers are appended. More...
 
class  Term
 stores constraint equation terms More...
 

Typedefs

typedef std::function< double(double)> RhsFunction
 

Functions

RhsFunction RhsRamp (double timeEnd, double valueEnd)
 linear function More...
 
std::vector< EquationComponent (const NodeSimple &node, std::vector< eDirection > directions, double value=0.0)
 constraints components of vector valued nodes in X and/or Y and/or Z More...
 
std::vector< EquationComponent (const NodeSimple &node, std::vector< eDirection > directions, RhsFunction rhs)
 constraints components of vector valued nodes in X and/or Y and/or Z More...
 
std::vector< EquationComponent (const Group< NodeSimple > &nodes, std::vector< eDirection > directions, double value=0.0)
 constraints components of vector valued nodes in X and/or Y and/or Z More...
 
std::vector< EquationComponent (const Group< NodeSimple > &nodes, std::vector< eDirection > directions, RhsFunction rhs)
 constraints components of vector valued nodes in X and/or Y and/or Z More...
 
Equation Direction (const NodeSimple &node, Eigen::VectorXd direction, RhsFunction rhs)
 creates a constraint equation for constraints that are not axes aligned More...
 
Equation Direction (const NodeSimple &node, Eigen::VectorXd direction, double value=0.0)
 creates a constraint equation for constraints that are not axes aligned More...
 
std::vector< EquationDirection (const Group< NodeSimple > &nodes, Eigen::VectorXd direction, RhsFunction rhs)
 creates multiple constraint equations for constraints that are not axes aligned More...
 
std::vector< EquationDirection (const Group< NodeSimple > &nodes, Eigen::VectorXd direction, double value=0.0)
 creates multiple constraint equations for constraints that are not axes aligned More...
 
Equation Value (const NodeSimple &node, double value=0.0)
 Constraint single value node. More...
 
Equation Value (const NodeSimple &node, RhsFunction rhs)
 Constraint single value node. More...
 
std::vector< EquationValue (const Group< NodeSimple > &nodes, double value=0.0)
 Constraint group of single value nodes. More...
 
std::vector< EquationValue (const Group< NodeSimple > &nodes, RhsFunction rhs)
 Constraint group of single value nodes. More...
 
RhsFunction RhsConstant (double constantValue)
 constant function More...
 

Typedef Documentation

typedef std::function<double(double)> NuTo::Constraint::RhsFunction

Function Documentation

std::vector< Equation > NuTo::Constraint::Component ( const NodeSimple node,
std::vector< eDirection directions,
double  value = 0.0 
)

constraints components of vector valued nodes in X and/or Y and/or Z

Parameters
nodenode reference
directionsvector of directions (X, Y, Z)
valueconstant value
Returns
vector of constraint equations
std::vector< Equation > NuTo::Constraint::Component ( const NodeSimple node,
std::vector< eDirection directions,
RhsFunction  rhs 
)

constraints components of vector valued nodes in X and/or Y and/or Z

Parameters
nodenode reference
directionsvector of directions (X, Y, Z)
rhstime dependent constraint function (double time) –> double
Returns
vector of constraint equations
std::vector< Equation > NuTo::Constraint::Component ( const Group< NodeSimple > &  nodes,
std::vector< eDirection directions,
double  value = 0.0 
)

constraints components of vector valued nodes in X and/or Y and/or Z

Parameters
nodesgroup of nodes
directionsvector of directions (X, Y, Z)
valueconstant value
Returns
vector of constraint equations
std::vector< Equation > NuTo::Constraint::Component ( const Group< NodeSimple > &  nodes,
std::vector< eDirection directions,
RhsFunction  rhs 
)

constraints components of vector valued nodes in X and/or Y and/or Z

Parameters
nodesgroup of nodes
directionsvector of directions (X, Y, Z)
rhstime dependent constraint function (double time) –> double
Returns
vector of constraint equations
Equation NuTo::Constraint::Direction ( const NodeSimple node,
Eigen::VectorXd  direction,
RhsFunction  rhs 
)

creates a constraint equation for constraints that are not axes aligned

Parameters
nodenode reference
directiondirections (X, Y, Z)
rhstime dependent constraint function (double time) –> double
Returns
constraint equation
Equation NuTo::Constraint::Direction ( const NodeSimple node,
Eigen::VectorXd  direction,
double  value = 0.0 
)

creates a constraint equation for constraints that are not axes aligned

Parameters
nodenode reference
directiondirections (X, Y, Z)
valueconstant value
Returns
constraint equation
std::vector< Equation > NuTo::Constraint::Direction ( const Group< NodeSimple > &  nodes,
Eigen::VectorXd  direction,
RhsFunction  rhs 
)

creates multiple constraint equations for constraints that are not axes aligned

Parameters
nodesgroup of nodes
directiondirections (X, Y, Z)
rhstime dependent constraint function (double time) –> double
Returns
vector of constraint equations
std::vector< Equation > NuTo::Constraint::Direction ( const Group< NodeSimple > &  nodes,
Eigen::VectorXd  direction,
double  value = 0.0 
)

creates multiple constraint equations for constraints that are not axes aligned

Parameters
nodesgroup of nodes
directiondirections (X, Y, Z)
valueconstant value
Returns
vector of constraint equations
RhsFunction NuTo::Constraint::RhsConstant ( double  constantValue)
inline

constant function

Parameters
constantValueconstant value
Returns
constant function f(t) = constant value
RhsFunction NuTo::Constraint::RhsRamp ( double  timeEnd,
double  valueEnd 
)

linear function

Parameters
timeEndend time
valueEndend value
Returns
linear function crossing (0,0) and (timeEnd, valueEnd)
Equation NuTo::Constraint::Value ( const NodeSimple node,
double  value = 0.0 
)

Constraint single value node.

Parameters
nodenode reference
valueconstant value
Returns
constraint equation
Equation NuTo::Constraint::Value ( const NodeSimple node,
RhsFunction  rhs 
)

Constraint single value node.

Parameters
nodenode reference
rhstime dependent constraint function (double time) –> double
Returns
constraint equation
std::vector< Equation > NuTo::Constraint::Value ( const Group< NodeSimple > &  nodes,
double  value = 0.0 
)

Constraint group of single value nodes.

Parameters
nodesgroup of nodes
valueconstant value
Returns
vector of constraint equations
std::vector< Equation > NuTo::Constraint::Value ( const Group< NodeSimple > &  nodes,
RhsFunction  rhs 
)

Constraint group of single value nodes.

Parameters
nodesgroup of nodes
rhstime dependent constraint function (double time) –> double
Returns
vector of constraint equations