Jump to content

FEM: Vincolo di dislocamento

From FreeCAD Documentation
This page is a translated version of the page FEM ConstraintDisplacement and the translation is 14% complete.
Outdated translations are marked like this.

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

The FEM displacement task panel

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 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 d should be increased by 6 mm:

d(t)=0.006t

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:

dx(t)=(cos(ϕ)1)xsin(ϕ)ydy(t)=(cos(ϕ)1)y+sin(ϕ)x

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 t=1s a rotation of 180° is performed

Properties

  • DatiEnable Amplitude - introduced in 1.1: Enables the use of CalculiX's amplitude for the time variation of the displacement boundary condition. At a given time, magnitude of the boundary condition is multiplied by the amplitude value corresponding to that time. Linear interpolation is used between the specified values. Constant values are used outside of the specified range.
  • DatiAmplitude Values - introduced in 1.1: Amplitude table in the following format:
time_1, amplitude_value_1
…
Default is linear increase from 0% at t=0 to 100% at t=1:
0, 0
1, 1

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