FEM ConstraintDisplacement: Difference between revisions
m (Change section to 'Usage') |
mNo edit summary |
||
(40 intermediate revisions by 6 users not shown) | |||
Line 1: | Line 1: | ||
<languages/> |
<languages/> |
||
<translate> |
<translate> |
||
<!--T:9--> |
<!--T:9--> |
||
{{Docnav |
|||
{{Docnav|[[FEM_ConstraintFixed|Constraint fixed]]|[[FEM_ConstraintPlaneRotation|Constraint plane rotation]]|[[FEM_Module|FEM]]|IconL=FEM_ConstraintFixed.png|IconC=Workbench_FEM.svg|IconR=FEM_ConstraintPlaneRotation.png}} |
|||
|[[FEM_ConstraintFixed|Constraint fixed]] |
|||
|[[FEM_ConstraintContact|Constraint contact]] |
|||
|[[FEM_Workbench|FEM]] |
|||
|IconL=FEM_ConstraintFixed.svg |
|||
|IconR=FEM_ConstraintContact.svg |
|||
|IconC=Workbench_FEM.svg |
|||
}} |
|||
<!--T:1--> |
<!--T:1--> |
||
{{GuiCommand |
|||
{{GuiCommand|Name=FEM ConstraintDisplacement|MenuLocation=Model → Mechanical Constraints → Constraint displacement||Workbenches=[[Fem Workbench|FEM]]|Shortcut=|SeeAlso=[[FEM_tutorial|FEM tutorial]]}} |
|||
|Name=FEM ConstraintDisplacement |
|||
|MenuLocation=Model → Mechanical boundary conditions and loads → Displacement boundary condition |
|||
|Workbenches=[[FEM_Workbench|FEM]] |
|||
|Shortcut= |
|||
|SeeAlso=[[FEM_tutorial|FEM tutorial]] |
|||
}} |
|||
==Description== <!--T:2--> |
==Description== <!--T:2--> |
||
<!--T:6--> |
<!--T:6--> |
||
Creates a FEM |
Creates a FEM boundary condition for a prescribed displacement of a selected object for specified degrees of freedom. |
||
==Usage== <!--T:3--> |
==Usage== <!--T:3--> |
||
<!--T:7--> |
<!--T:7--> |
||
# Press the {{Button|[[Image:FEM_ConstraintDisplacement.svg|16px]] [[FEM_ConstraintDisplacement|Displacement boundary condition]]}} button or select the menu {{MenuCommand|Model → Mechanical boundary conditions and loads → [[Image:FEM_ConstraintDisplacement.svg|16px]] Displacement boundary condition}}. |
|||
#Click on [[Image:FEM ConstraintDisplacement.png|32px]] or choose {{KEY|Model}} → '''Mechanical Constraints''' → {{KEY|[[Image:FEM ConstraintDisplacement.png|32px]] Constraint displacement}} from the top menu. |
|||
# |
# In the [[3D_view|3D view]] select the object the boundary condition should be applied to, which can be a vertex (corner), edge, or face. |
||
# Press the {{Button|Add}} button. |
|||
## vertices (corners) |
|||
# Uncheck ''Unspecified'' to activate the necessary fields for editing. |
|||
## edges |
|||
# Set the values or ({{Version|0.21}}) specify a formula for the displacements. |
|||
## faces |
|||
#Choose a degree of freedom to fix or prescribe a displacement to. |
|||
== |
==Formulas== <!--T:13--> |
||
<!--T:14--> |
|||
{{Version|0.21}} |
|||
===General=== <!--T:15--> |
|||
<!--T:16--> |
|||
For the [[Image:FEM_SolverElmer.svg|32px]] [[FEM_SolverElmer|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. |
|||
<!--T:17--> |
|||
Take for example the case that we want to perform a [[FEM_SolverElmer_SolverSettings#Timestepping_(transient_analyses)|transient analysis]]. For every time step the displacement <math>d</math> should be increased by 6 mm: |
|||
<!--T:18--> |
|||
<math>\quad |
|||
d(t)=0.006\cdot t |
|||
</math> |
|||
<!--T:19--> |
|||
enter this in the ''Formula'' field:</br> |
|||
{{incode| Variable "time"; Real MATC "0.006*tx"}} |
|||
<!--T:20--> |
|||
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=== <!--T:21--> |
|||
<!--T:22--> |
|||
Elmer only uses the '''Displacement *''' fields of the boundary condition. To define rotations, we need a formula. |
|||
<!--T:23--> |
|||
If for example a face should be rotated according to this condition: |
|||
<!--T:24--> |
|||
<math>\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} |
|||
</math> |
|||
<!--T:25--> |
|||
then we need to enter for '''Displacement x'''</br> |
|||
{{incode| Variable "time, Coordinate" |
|||
Real MATC "(cos(tx(0)*pi)-1.0)*tx(1)-sin(tx(0)*pi)*tx(2)}} |
|||
<!--T:26--> |
|||
and for '''Displacement y'''</br> |
|||
{{incode| Variable "time, Coordinate" |
|||
Real MATC "(cos(tx(0)*pi)-1.0)*tx(2)+sin(tx(0)*pi)*tx(1)}} |
|||
<!--T:27--> |
|||
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 <math>\pi</math> and was added so that after <math>t=1\rm\, s</math> a rotation of 180° is performed |
|||
==Notes== <!--T:5--> |
==Notes== <!--T:5--> |
||
<!--T:8--> |
<!--T:8--> |
||
For the [[Image:FEM_SolverCalculixCxxtools.svg|32px]] [[FEM_SolverCalculixCxxtools|solver CalculiX]]: |
|||
#The constraint uses the *BOUNDARY card in CalculiX. Fixing a degree of freedom is explained at http://web.mit.edu/calculix_v2.7/CalculiX/ccx_2.7/doc/ccx/node164.html and 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 |
|||
* 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 |
|||
<!--T:10--> |
<!--T:10--> |
||
{{Docnav |
|||
{{Docnav|[[FEM_ConstraintFixed|Constraint fixed]]|[[FEM_ConstraintPlaneRotation|Constraint plane rotation]]|[[FEM_Module|FEM]]|IconL=FEM_ConstraintFixed.png|IconC=Workbench_FEM.svg|IconR=FEM_ConstraintPlaneRotation.png}} |
|||
|[[FEM_ConstraintFixed|Constraint fixed]] |
|||
|[[FEM_ConstraintContact|Constraint contact]] |
|||
<!--T:11--> |
|||
|[[FEM_Workbench|FEM]] |
|||
{{FEM Tools navi}} |
|||
|IconL=FEM_ConstraintFixed.svg |
|||
|IconR=FEM_ConstraintContact.svg |
|||
|IconC=Workbench_FEM.svg |
|||
}} |
|||
<!--T:12--> |
|||
{{Userdocnavi}} |
|||
</translate> |
</translate> |
||
{{FEM Tools navi{{#translation:}}}} |
|||
{{clear}} |
|||
{{Userdocnavi{{#translation:}}}} |
Latest revision as of 14:17, 16 November 2023
FEM ConstraintDisplacement |
Menu location |
---|
Model → Mechanical boundary conditions and loads → Displacement boundary condition |
Workbenches |
FEM |
Default shortcut |
None |
Introduced in version |
- |
See also |
FEM tutorial |
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.
- In the 3D view select the object the boundary condition should be applied to, which can be a vertex (corner), edge, or face.
- Press the Add button.
- Uncheck Unspecified to activate the necessary fields for editing.
- Set the values or (introduced in version 0.21) specify a formula for the displacements.
Formulas
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 should be increased by 6 mm:
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:
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 and was added so that after 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
- Materials: Solid, Fluid, Nonlinear mechanical, Reinforced (concrete); Material editor
- Element geometry: Beam (1D), Beam rotation (1D), Shell (2D), Fluid flow (1D)
Constraints
- Electromagnetic: Electrostatic potential, Current density, Magnetization
- Geometrical: Plane rotation, Section print, Transform
- Mechanical: Fixed, Displacement, Contact, Tie, Spring, Force, Pressure, Centrif, Self weight
- Thermal: Initial temperature, Heat flux, Temperature, Body heat source
- Overwrite Constants: Constant vacuum permittivity
- Solve: CalculiX Standard, Elmer, Mystran, Z88; Equations: Deformation, Elasticity, Electrostatic, Electricforce, Magnetodynamic, Magnetodynamic 2D, Flow, Flux, Heat; Solver: Solver control, Solver run
- Results: Purge, Show; Postprocessing: Apply changes, Pipeline from result, Warp filter, Scalar clip filter, Function cut filter, Region clip filter, Contours filter, Line clip filter, Stress linearization plot, Data at point clip filter, Filter function plane, Filter function sphere, Filter function cylinder, Filter function box
- Additional: Preferences; FEM Install, FEM Mesh, FEM Solver, FEM CalculiX, FEM Concrete; FEM Element Types
- Getting started
- Installation: Download, Windows, Linux, Mac, Additional components, Docker, AppImage, Ubuntu Snap
- Basics: About FreeCAD, Interface, Mouse navigation, Selection methods, Object name, Preferences, Workbenches, Document structure, Properties, Help FreeCAD, Donate
- Help: Tutorials, Video tutorials
- Workbenches: Std Base, Arch, Assembly, CAM, Draft, FEM, Inspection, Mesh, OpenSCAD, Part, PartDesign, Points, Reverse Engineering, Robot, Sketcher, Spreadsheet, Start, Surface, TechDraw, Test Framework, Web
- Hubs: User hub, Power users hub, Developer hub