FEM EquationElasticity: Difference between revisions

From FreeCAD Documentation
(page is now finished)
m (→‎Solver Settings: add interlink)
(8 intermediate revisions by the same user not shown)
Line 37: Line 37:


The elasticity equation provides these special settings:
The elasticity equation provides these special settings:

* {{PropertyData|Calculate Pangle}}: If the principal angles should be calculated.
* {{PropertyData|Calculate Pangle}}: If the principal angles should be calculated.
* {{PropertyData|Calculate Principal}}: If all stresses should be calculated.
* {{PropertyData|Calculate Principal}}: If all stresses should be calculated.
* {{PropertyData|Calculate Strains}}: If strains will be calculated. This will also calculate the stresses, even if {{PropertyData|Calculate Principal}} or {{PropertyData|Calculate Stresses}} is ''false''.
* {{PropertyData|Calculate Strains}}: If strains will be calculated. This will also calculate the stresses, even if {{PropertyData|Calculate Principal}} or {{PropertyData|Calculate Stresses}} is ''false''.
* {{PropertyData|Calculate Stresses}}: If stresses should be calculated. Compared to {{PropertyData|Calculate Principal}} the Tresca and the pincipal stress will not be calculated.
* {{PropertyData|Calculate Stresses}}: If stresses should be calculated. Compared to {{PropertyData|Calculate Principal}} the Tresca and the pincipal stress will not be calculated.
* {{PropertyData|Do Frequency Analysis}}: If a frequency analysis should be performed (calculation of eigenmodes and eigenfrequencies).
* {{PropertyData|Constant Bulk System}}: See the Elmer manual for more info.
* {{PropertyData|Eigenmodes Count}}: The number of the highest eigenmode that should be calculated.
* {{PropertyData|Displace Mesh}}: If mesh can be deformed. This is by default ''true'' and must be set to ''false'' for eigenfrequency analyses.
* {{PropertyData|Fix Displacement}}: If displacements or forces are set. thereby {{PropertyData|Model Lumping}} is automatically used.
* {{PropertyData|Geometric Stiffness}}: Considers the geometric stiffness of the body.
* {{PropertyData|Incompressible}}: Computation of incompressible material in connection with viscoelastic Maxwell material and a custom {{PropertyData|Variable}}.
* {{PropertyData|Maxwell Material}}: Compute the viscoelastic material model.
* {{PropertyData|Model Lumping}}: Uses [https://en.wikipedia.org/wiki/Lumped-element_model model lumping].
* {{PropertyData|Model Lumping Filename}}: File to save the results from the model lumping.
* {{PropertyData|Stability Analysis}}: If ''true'' {{PropertyData|Eigen Analysis}} becomes a stability analysis. Otherwise a modal analysis is performed.
* {{PropertyData|Update Transient System}}: See the Elmer manual for more info.
* {{PropertyData|Variable}}: The variable for the elasticity equation. Only change this if {{PropertyData|Incompressible}} is set to ''true'' in accordance to the Elmer manual.

Eigenvalues:
* {{PropertyData|Eigen Analysis}}: If an eigen analysis should be performed (calculation of eigenmodes and eigenfrequencies).
* {{PropertyData|Eigen System Complex}}: Should be ''true'' if the eigen system is complex. it must be ''false'' for a damped eigen value analyses.
* {{PropertyData|Eigen System Compute Residuals}}: Computes residuals of the eigen value system.
* {{PropertyData|Eigen System Damped}}: Set a damped eigen analysis. Can only be used if {{PropertyData|[[FEM_SolverElmer_SolverSettings#Linear_System|Linear Solver Type]]}} is ''Iterative''.
* {{PropertyData|Eigen System Select}}: Selection of which eigenvalues are computed. Note that the selection of ''Largest*'' cause an infinite run for recent Elmer (as of August 2022).
* {{PropertyData|Eigen System Tolerance}}: Convergence tolerance for iterative eigensystem solve. The default is 100 times the {{PropertyData|[[FEM_SolverElmer_SolverSettings#Linear_System|Linear Tolerance]]}}.
* {{PropertyData|Eigen System Values}}: The number of the highest eigenmode that should be calculated.

Equation:
* {{PropertyData|Plane Stress}}: Computes solution according to the plane stress situation. Applies only for 2D geometry.


==Constraint Information==
==Constraint Information==
Line 49: Line 69:
The elasticity equation takes the following constraints into account if they are set:
The elasticity equation takes the following constraints into account if they are set:


* [[Image:FEM_ConstraintPlaneRotation.svg|32px]] [[FEM_ConstraintPlaneRotation|Constraint plane rotation]]
* [[Image:FEM_ConstraintTransform.svg|32px]] [[FEM_ConstraintTransform|Constraint transform]]
* [[Image:FEM_ConstraintFixed.svg|32px]] [[FEM_ConstraintFixed|Constraint fixed]]
* [[Image:FEM_ConstraintFixed.svg|32px]] [[FEM_ConstraintFixed|Constraint fixed]]
* [[Image:FEM_ConstraintDisplacement.svg|32px]] [[FEM_ConstraintDisplacement|Constraint displacement]]
* [[Image:FEM_ConstraintDisplacement.svg|32px]] [[FEM_ConstraintDisplacement|Constraint displacement]]
Line 56: Line 74:
* [[Image:FEM_ConstraintPressure.svg|32px]] [[FEM_ConstraintPressure|Constraint pressure]]
* [[Image:FEM_ConstraintPressure.svg|32px]] [[FEM_ConstraintPressure|Constraint pressure]]
* [[Image:FEM_ConstraintSelfWeight.svg|32px]] [[FEM_ConstraintSelfWeight|Constraint self weight]]
* [[Image:FEM_ConstraintSelfWeight.svg|32px]] [[FEM_ConstraintSelfWeight|Constraint self weight]]
* [[Image:FEM_ConstraintInitialTemperature.svg|32px]] [[FEM_ConstraintInitialTemperature|Constraint initial temperature]]


===Notes===
===Notes===
Line 64: Line 83:


To perform an eigenmode analysis (calculation if the eigenmodes and eigenfrequencies), you need to
To perform an eigenmode analysis (calculation if the eigenmodes and eigenfrequencies), you need to
# Set {{PropertyData|Do Frequency Analysis}}: to ''true''
# Set {{PropertyData|Eigen Analysis}}: to ''true''
# Set {{PropertyData|Displace Mesh}}: to ''false''
# Set {{PropertyData|Eigenmodes Cout}}: to the highest number of eigenmodes you are interested in. The smaller this number the shorter the solver runtime since higher modes can be omitted to be determined.
# Set {{PropertyData|Eigen System Values}}: to the highest number of eigenmodes you are interested in. The smaller this number the shorter the solver runtime since higher modes can be omitted from computation.
# Add a [[FEM_ConstraintFixed|constraint fixed]] and set at least one face of the body as fixed.
# Add a [[FEM_ConstraintFixed|constraint fixed]] and set at least one face of the body as fixed.
# Run the solver.
# Accordingto the Elmer manual the best results for eigenmode analysis are obtained with direct solving. Therefore
## Set {{PropertyData|Linear Sover Type}} to ''Direct''.
## Set {{PropertyData|Linear Direct Method}} to ''Umfpack''.
# Eventually run the solver.


'''Note''': If you use more than one CPU core for the solver ({{Version|1.0}}), you cannot use ''Umfpack'', the only direct method for parallel solving is ''MUMPS''.</br>Also note that iterative solving is not recommended for eigenmode analysis.
'''Note''': If you use more than one CPU core for the solver ({{Version|1.0}}), you cannot use ''Umfpack'', the only direct method for parallel solving is ''MUMPS''.</br>Also note that iterative solving is not recommended for eigenmode analysis. Therefore either only use one CPU core or install the ''MUMPS'' module to Elmer.


==Results==
==Results==


The available results depend on the [[#Solver_Settings|solver settings]]. If none of them was set to ''true'', only the displacement is calculated. Otherwise also the corresponding results will be available. If {{PropertyData|Do Frequency Analysis}} was set to ''true'' all results will be available for every calculated eigenmode.
The available results depend on the [[#Solver_Settings|solver settings]]. If none of them was set to ''true'', only the displacement is calculated. Otherwise also the corresponding results will be available. If {{PropertyData|Eigen Analysis}} was set to ''true'' all results will be available for every calculated eigenmode.

If {{PropertyData|Do Frequency Analysis}} was set to ''true'', the eigenvalues are output at the end of the document '''SolverElmerOutput''' that will be created in the tree view after the solver has finished.
A typical output would for example be
EigenSolve: Computed 5 Eigen Values
EigenSolve: 1: 9.584853E+04 0.000000E+00
EigenSolve: 2: 3.080755E+06 0.000000E+00
EigenSolve: 3: 3.725429E+06 0.000000E+00
EigenSolve: 4: 2.909430E+07 0.000000E+00
EigenSolve: 5: 3.525298E+07 0.000000E+00


If {{PropertyData|Eigen Analysis}} was set to ''true'', the eigenfrequencies are output at the end of the solver log in the solver dialog and also in the document '''SolverElmerOutput''' that will be created in the tree view after the solver has finished.
The second column is hereby the real part of the eigenvalue <math>\omega^2</math>, the third column the imaginary part.


'''Note:''' The eigenmode displacement <math>\vec{d}</math> vector has an arbitrary value since the result is
To calculate the eigenfrequency <math>f_e</math> out of it, this has to be done (because of the root the imaginary part cannot just be omitted):


<math>\quad
<math>\quad
\vec{d} = c\cdot\vec{u}
f_{e} =\cfrac{\sqrt{\omega^{2}}}{2\pi}
</math>
</math>


whereas <math>\vec{u}</math> is the eigenvector and <math>c</math> is a complex number.


<!--T:5-->
<!--T:5-->

Revision as of 23:02, 13 August 2022

FEM EquationElasticity

Menu location
Solve → Elasticity equation
Workbenches
FEM
Default shortcut
None
Introduced in version
0.19
See also
FEM tutorial

Description

This equation describes the mechanical properties of rigid bodies.

Usage

  1. After adding an Elmer solver as described here, select it in the tree view.
  2. Now either use the toolbar button or the menu Solve → Elasticity equation.
  3. Change the equation's solver settings or the general solver settings if necessary.

Solver Settings

For the general solver settings, see the Elmer solver settings.

The elasticity equation provides these special settings:

  • DataCalculate Pangle: If the principal angles should be calculated.
  • DataCalculate Principal: If all stresses should be calculated.
  • DataCalculate Strains: If strains will be calculated. This will also calculate the stresses, even if DataCalculate Principal or DataCalculate Stresses is false.
  • DataCalculate Stresses: If stresses should be calculated. Compared to DataCalculate Principal the Tresca and the pincipal stress will not be calculated.
  • DataConstant Bulk System: See the Elmer manual for more info.
  • DataDisplace Mesh: If mesh can be deformed. This is by default true and must be set to false for eigenfrequency analyses.
  • DataFix Displacement: If displacements or forces are set. thereby DataModel Lumping is automatically used.
  • DataGeometric Stiffness: Considers the geometric stiffness of the body.
  • DataIncompressible: Computation of incompressible material in connection with viscoelastic Maxwell material and a custom DataVariable.
  • DataMaxwell Material: Compute the viscoelastic material model.
  • DataModel Lumping: Uses model lumping.
  • DataModel Lumping Filename: File to save the results from the model lumping.
  • DataStability Analysis: If true DataEigen Analysis becomes a stability analysis. Otherwise a modal analysis is performed.
  • DataUpdate Transient System: See the Elmer manual for more info.
  • DataVariable: The variable for the elasticity equation. Only change this if DataIncompressible is set to true in accordance to the Elmer manual.

Eigenvalues:

  • DataEigen Analysis: If an eigen analysis should be performed (calculation of eigenmodes and eigenfrequencies).
  • DataEigen System Complex: Should be true if the eigen system is complex. it must be false for a damped eigen value analyses.
  • DataEigen System Compute Residuals: Computes residuals of the eigen value system.
  • DataEigen System Damped: Set a damped eigen analysis. Can only be used if DataLinear Solver Type is Iterative.
  • DataEigen System Select: Selection of which eigenvalues are computed. Note that the selection of Largest* cause an infinite run for recent Elmer (as of August 2022).
  • DataEigen System Tolerance: Convergence tolerance for iterative eigensystem solve. The default is 100 times the DataLinear Tolerance.
  • DataEigen System Values: The number of the highest eigenmode that should be calculated.

Equation:

  • DataPlane Stress: Computes solution according to the plane stress situation. Applies only for 2D geometry.

Constraint Information

The elasticity equation takes the following constraints into account if they are set:

Notes

For all above constraints it is important that they act on a face. Constraints set to lines or vertices are not recognized by the Elmer solver.

Eigenmode Analysis

To perform an eigenmode analysis (calculation if the eigenmodes and eigenfrequencies), you need to

  1. Set DataEigen Analysis: to true
  2. Set DataDisplace Mesh: to false
  3. Set DataEigen System Values: to the highest number of eigenmodes you are interested in. The smaller this number the shorter the solver runtime since higher modes can be omitted from computation.
  4. Add a constraint fixed and set at least one face of the body as fixed.
  5. Run the solver.

Note: If you use more than one CPU core for the solver (introduced in version 1.0), you cannot use Umfpack, the only direct method for parallel solving is MUMPS.
Also note that iterative solving is not recommended for eigenmode analysis. Therefore either only use one CPU core or install the MUMPS module to Elmer.

Results

The available results depend on the solver settings. If none of them was set to true, only the displacement is calculated. Otherwise also the corresponding results will be available. If DataEigen Analysis was set to true all results will be available for every calculated eigenmode.

If DataEigen Analysis was set to true, the eigenfrequencies are output at the end of the solver log in the solver dialog and also in the document SolverElmerOutput that will be created in the tree view after the solver has finished.

Note: The eigenmode displacement vector has an arbitrary value since the result is

whereas is the eigenvector and is a complex number.