GuiCommand:Container| {{GuiCommand Name: FEM ConstraintDisplacement MenuLocation: Model , Mechanical boundary conditions and loads , Displacement boundary condition Workbenches: FEM_Workbench Shortcut: SeeAlso: FEM_tutorial }} {{GuiCommandFemInfo Solvers: CalculiX, Elmer }}
FEM ConstraintDisplacement
Description
Creates a FEM boundary condition for a prescribed displacement of a selected object for specified degrees of freedom.
Usage
- Press the
Displacement boundary condition button or select the menu Model → Mechanical boundary conditions and loads →
Displacement boundary condition.
- Press the Add button.
- In the 3D view select the object the boundary condition should be applied to, which can be a vertex, edge, or face (but all the selected objects have to be of the same type). To remove objects from the list, press the Remove button and click on them.
- Check the boxes next to the degrees of freedom that you want to use. By default, they are set to zero (fixed) but any value ((v0.21) : or a formula for Elmer) can be specified.
Formulas
(v0.21)
General
For the solver Elmer it is possible to define the displacement as a formula. In this case the solver sets the displacement according to the given formula variable.
Take for example the case that we want to perform a transient analysis. For every time step the displacement $d$ should be increased by 6 mm:
$\quad d(t)=0.006\cdot t$
enter this in the Formula field: Variable "time"; Real MATC "0.006*tx"
This code has the following syntax:
- the prefix Variable specifies that the displacement is not a constant but a variable
- the variable is the current time
- the displacement values are returned as Real (floating point) values
- MATC is a prefix for the Elmer solver indicating that the following code is a formula
- tx is always the name of the variable in MATC formulas, no matter that tx in our case is actually t
Rotations
Elmer only uses the Displacement * fields of the boundary condition. To define rotations, we need a formula.
If for example a face should be rotated according to this condition:
$\quad \begin{align} d{x}(t)= & \left(\cos(\phi)-1\right)x-\sin(\phi)y\ d{y}(t)= & \left(\cos(\phi)-1\right)y+\sin(\phi)x \end{align}$
then we need to enter for Displacement x Variable "time, Coordinate" Real MATC "(cos(tx(0)*pi)-1.0)*tx(1)-sin(tx(0)*pi)*tx(2)
and for Displacement y Variable "time, Coordinate" Real MATC "(cos(tx(0)*pi)-1.0)*tx(2)+sin(tx(0)*pi)*tx(1)
This code has the following syntax:
- we have 4 variables, the time and all possible coordinates (x, y z)
- tx is a vector, tx(0) refers to the first variable, the time, while tx(1) refers to the first coordinate x
- pi denotes $\pi$ and was added so that after $t=1\rm\, s$ a rotation of 180° is performed
Notes
For the solver CalculiX:
- This tool uses the *BOUNDARY card.
- Fixing a degree of freedom is explained at http://web.mit.edu/calculix_v2.7/CalculiX/ccx_2.7/doc/ccx/node164.html
- Prescribing a displacement for a degree of freedom is explained at http://web.mit.edu/calculix_v2.7/CalculiX/ccx_2.7/doc/ccx/node165.html
{{FEM Tools navi}}
⏵ documentation index > FEM > FEM ConstraintDisplacement
This page is retrieved from https://github.com/FreeCAD/FreeCAD-documentation/blob/main/wiki/FEM_ConstraintDisplacement.md