FEM ConstraintDisplacement/it: Difference between revisions

From FreeCAD Documentation
(Updating to match new version of source page)
(Updating to match new version of source page)
 
(4 intermediate revisions by the same user not shown)
Line 1: Line 1:
<languages/>
<languages/>

<div class="mw-translate-fuzzy">
<div class="mw-translate-fuzzy">
{{Docnav/it
{{Docnav/it
Line 25: Line 26:
==Descrizione==
==Descrizione==


<div class="mw-translate-fuzzy">
Crea un vincolo FEM per un determinato dislocamento di un oggetto selezionato per un dato grado di libertà.
Crea un vincolo FEM per un determinato dislocamento di un oggetto selezionato per un dato grado di libertà.
</div>


<span id="Usage"></span>
<span id="Usage"></span>
Line 41: Line 44:
==Formulas==
==Formulas==


{{Version|1.0}}
{{Version|0.21}}


===General===
===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 give formula variable.
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 analysis]]. For every time step the displacement <math>d</math> should be increased by 6 mm:
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
<math>\quad
Line 65: Line 68:
===Rotations===
===Rotations===


Elmer only uses the '''Displacement *''' fields of the constraint. To define rotations, we need a formula.
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:
If for example a face should be rotated according to this condition:
Line 86: Line 89:
This code has the following syntax:
This code has the following syntax:
* we have 4 variables, the time and all possible coordinates (x, y z)
* 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)'' is the first coordinate ''x''
* ''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
* ''pi'' denotes <math>\pi</math> and was added so that after <math>t=1\rm\, s</math> a rotation of 180° is performed


Line 110: Line 113:
{{FEM Tools navi{{#translation:}}}}
{{FEM Tools navi{{#translation:}}}}
{{Userdocnavi{{#translation:}}}}
{{Userdocnavi{{#translation:}}}}
{{clear}}

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