NuTo
Numerics Tool
ConstraintCompanion.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "nuto/base/Group.h"
8 
9 namespace NuTo
10 {
11 
12 namespace Constraint
13 {
14 
19 RhsFunction RhsRamp(double timeEnd, double valueEnd);
20 
24 inline RhsFunction RhsConstant(double constantValue)
25 {
26  return [=](double) { return constantValue; };
27 }
28 
29 
35 std::vector<Equation> Component(const NodeSimple& node, std::vector<eDirection> directions, double value = 0.0);
36 
42 std::vector<Equation> Component(const Group<NodeSimple>& nodes, std::vector<eDirection> directions, double value = 0.0);
43 
49 std::vector<Equation> Component(const NodeSimple& node, std::vector<eDirection> directions, RhsFunction rhs);
50 
56 std::vector<Equation> Component(const Group<NodeSimple>& nodes, std::vector<eDirection> directions, RhsFunction rhs);
57 
58 
64 Equation Direction(const NodeSimple& node, Eigen::VectorXd direction, RhsFunction rhs);
65 
71 Equation Direction(const NodeSimple& node, Eigen::VectorXd direction, double value = 0.0);
72 
78 std::vector<Equation> Direction(const Group<NodeSimple>& nodes, Eigen::VectorXd direction, RhsFunction rhs);
79 
85 std::vector<Equation> Direction(const Group<NodeSimple>& nodes, Eigen::VectorXd direction, double value = 0.0);
86 
91 Equation Value(const NodeSimple& node, double value = 0.0);
92 
97 Equation Value(const NodeSimple& node, RhsFunction rhs);
98 
103 std::vector<Equation> Value(const Group<NodeSimple>& nodes, double value = 0.0);
104 
109 std::vector<Equation> Value(const Group<NodeSimple>& nodes, RhsFunction rhs);
110 
111 } /* Constraint */
112 } /* NuTo */
Store node values and its dof.
Definition: NodeSimple.h:11
stores a constraint equation
Definition: Equation.h:12
string value
Definition: single_edge_notch_tension_test.py:6
RhsFunction RhsRamp(double timeEnd, double valueEnd)
linear function
Definition: ConstraintCompanion.cpp:12
std::vector< Equation > Component(const NodeSimple &node, std::vector< eDirection > directions, double value)
constraints components of vector valued nodes in X and/or Y and/or Z
Definition: ConstraintCompanion.cpp:21
node
Definition: Brick8NCoupling.py:104
Equation Direction(const NodeSimple &node, Eigen::VectorXd direction, RhsFunction rhs)
creates a constraint equation for constraints that are not axes aligned
Definition: ConstraintCompanion.cpp:57
Definition: Exception.h:6
rhs
Definition: SparseDirectSolverMKLDSS.py:46
std::function< double(double)> RhsFunction
Definition: Equation.h:9
direction
Definition: Brick8NCoupling.py:110
Equation Value(const NodeSimple &node, double value)
Constraint single value node.
Definition: ConstraintCompanion.cpp:100
Ordered container class for elements, nodes and the like.
Definition: Group.h:15
RhsFunction RhsConstant(double constantValue)
constant function
Definition: ConstraintCompanion.h:24