FEM ConstraintDisplacement/it: Difference between revisions

From FreeCAD Documentation
(Created page with "FEM: Vincolo di dislocamento")
 
(Updating to match new version of source page)
 
(41 intermediate revisions by 3 users not shown)
Line 1: Line 1:
<languages/>
{{GuiCommand|Name=FEM ConstraintDisplacement|MenuLocation=FEM → Constraint displacement||Workbenches=[[Fem Workbench|FEM]]|Shortcut=|SeeAlso=[[FEM_tutorial|FEM tutorial]]}}


<div class="mw-translate-fuzzy">
==Description==
{{Docnav/it
Creates a FEM constraint for a prescribed displacement of a selected object for a specified degree of freedom.
|[[FEM_ConstraintFixed/it|Vincolo fissaggio]]
|[[FEM_ConstraintPlaneRotation/it|Vincolo piano di rotazione]]
|[[FEM_Workbench/it|FEM]]
|IconL=FEM_ConstraintFixed.png
|IconC=Workbench_FEM.svg
|IconR=FEM_ConstraintPlaneRotation.png
}}
</div>


<div class="mw-translate-fuzzy">
==Use==
{{GuiCommand/it
#Click on [[Image:FEM ConstraintDisplacement.png|32px]] or choose {{KEY| FEM}} → {{KEY|[[Image:FEM ConstraintDisplacement.png|32px]] Constraint displacement}} from the top menu.
|Name=FEM_ConstraintDisplacement
#Select in the 3D-view the object the constraint should be applied to, which can be
|Name/it=Vincolo di dislocamento
## vertices (corners)
|MenuLocation=Modello → Vincoli meccanici → Vincolo dislocamento
## edges
|Workbenches=[[FEM_Workbench/it|FEM]]
## faces
|Shortcut=
#Choose a degree of freedom to fix or prescribe a displacement to.
|SeeAlso=[[FEM_tutorial/it|Tutorial di FEM]]
}}
</div>


<span id="Description"></span>
==Limitations==
==Descrizione==


<div class="mw-translate-fuzzy">
==Notes==
Crea un vincolo FEM per un determinato dislocamento di un oggetto selezionato per un dato grado di libertà.
#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
</div>


<span id="Usage"></span>
==Utilizzo==


<div class="mw-translate-fuzzy">
{{clear}}
#Cliccare su [[Image:FEM ConstraintDisplacement.png|32px]] o scegliere {{KEY|Modello}} → '''Vincoli meccanici''' → {{KEY|[[Image:FEM ConstraintDisplacement.png|32px]] Vincolo dislocamento}} dal menu principale.
<languages/>
#Selezionare nella vista 3D l'oggetto a cui deve essere applicato il vincolo, che può essere
## vertice (angolo)
## bordo
## faccia
#Scegliere un grado di libertà e prescrivere uno spostamento.
</div>

==Formulas==

{{Version|0.21}}

===General===

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.

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:

<math>\quad
d(t)=0.006\cdot t
</math>

enter this in the ''Formula'' field:</br>
{{incode| 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:

<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>

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)}}

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)}}

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

<span id="Notes"></span>
==Note==

<div class="mw-translate-fuzzy">
#Il vincolo utilizza *BOUNDARY card in CalculiX. Come stabilire un grado di libertà è spiegato in http://web.mit.edu/calculix_v2.7/CalculiX/ccx_2.7/doc/ccx/node164.html e prescrivere uno dislocamento per un grado di libertà è spiegato in http://web.mit.edu/calculix_v2.7/CalculiX/ccx_2.7/doc/ccx/node165.html
</div>


<div class="mw-translate-fuzzy">
{{Docnav/it
|[[FEM_ConstraintFixed/it|Vincolo fissaggio]]
|[[FEM_ConstraintPlaneRotation/it|Vincolo piano di rotazione]]
|[[FEM_Workbench/it|FEM]]
|IconL=FEM_ConstraintFixed.png
|IconC=Workbench_FEM.svg
|IconR=FEM_ConstraintPlaneRotation.png
}}
</div>

{{FEM Tools navi{{#translation:}}}}
{{Userdocnavi{{#translation:}}}}

Latest revision as of 16:12, 16 November 2023

Vincolo di dislocamento

Posizione nel menu
Modello → Vincoli meccanici → Vincolo dislocamento
Ambiente
FEM
Avvio veloce
Nessuno
Introdotto nella versione
-
Vedere anche
Tutorial di FEM

Descrizione

Crea un vincolo FEM per un determinato dislocamento di un oggetto selezionato per un dato grado di libertà.

Utilizzo

  1. Cliccare su o scegliere ModelloVincoli meccanici Vincolo dislocamento dal menu principale.
  2. Selezionare nella vista 3D l'oggetto a cui deve essere applicato il vincolo, che può essere
    1. vertice (angolo)
    2. bordo
    3. faccia
  3. Scegliere un grado di libertà e prescrivere uno spostamento.

Formulas

introduced in version 0.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 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

Note

  1. Il vincolo utilizza *BOUNDARY card in CalculiX. Come stabilire un grado di libertà è spiegato in http://web.mit.edu/calculix_v2.7/CalculiX/ccx_2.7/doc/ccx/node164.html e prescrivere uno dislocamento per un grado di libertà è spiegato in http://web.mit.edu/calculix_v2.7/CalculiX/ccx_2.7/doc/ccx/node165.html