FEM Workbench/ja

はじめに
FEM Workbenchは、FreeCAD用の最新の有限要素解析（FEA）ワークフローを提供します. 主にこれは、分析を行うすべてのツールが1つのグラフィカルユーザーインターフェイス（GUI）に統合されていることを意味します.



ワークフロー
有限要素解析を実行する手順は次のとおりです. ＃前処理：分析問題を設定する. ＃Solving：FreeCAD内の外部ソルバーを使用して方程式系を解く. ＃Postprocessing：FreeCAD内の解析結果を視覚化します.
 * 1) ジオメトリのモデリング：FreeCADでジオメトリを作成するか、別のアプリケーションからジオメトリをインポートします.
 * 2) 分析を作成する.
 * 3) 幾何モデルのための有限要素メッシュの作成.
 * 4) 荷重や固定されたサポートなどの制約をモデルに追加する.
 * 5) 解析モデルに材料を追加する.

FreeCAD 0.15以降、FEM WorkbenchはWindows、MacOSX、Linuxプラットフォームで使用できます. ワークベンチは外部ソルバーを使用するため、手動セットアップの量は使用しているオペレーティングシステムによって異なります. 外部ツールの設定方法については、 FEM Installページを参照してください.





メニュー：モデル

 * [[Image:FEM_Analysis.svg|32px]] Analysis container: Creates a new container for a mechanical analysis. If a solid is selected in the tree view before clicking on it, the meshing dialog will be opened next.

材料

 * [[Image:FEM_MaterialSolid.svg|32px]] Material for solid: Lets you select a solid material from the database.


 * [[Image:FEM_MaterialFluid.svg|32px]] Material for fluid: Lets you select a fluid material from the database.


 * [[Image:FEM_MaterialMechanicalNonlinear.svg|32px]] Nonlinear mechanical material: Lets you add a nonlinear mechanical material model.


 * [[Image:FEM_MaterialReinforced.svg|32px]] Reinforced material (concrete): Lets you select reinforced materials consisting of a matrix and a reinforcement from the database.


 * [[Image:FEM_MaterialEditor.svg|32px]] Material editor: Lets you open the material editor to edit materials.



要素の幾何学

 * [[Image:FEM_ElementGeometry1D.svg|32px]] Beam cross section: Used to define cross sections for beam elements.


 * [[Image:FEM_ElementRotation1D.svg|32px]] Beam rotation: Used to rotate cross sections of beam elements.


 * [[Image:FEM_ElementGeometry2D.svg|32px]] Shell plate thickness: Used to define shell element thickness.


 * [[Image:FEM_ElementFluid1D.svg|32px]] Fluid section for 1D flow: Used to create fluid section element for pneumatic and hydraulic networks.

Electromagnetic boundary conditions

 * [[Image:FEM_ConstraintElectrostaticPotential.svg|32px]] Electrostatic potential boundary condition: Used to define electrostatic potential.


 * [[Image:FEM_ConstraintCurrentDensity.svg|32px]] Current density boundary condition: Used to define a current density.


 * [[Image:FEM_ConstraintMagnetization.svg|32px]] Magnetization boundary condition: Used to define a magnetization.



流体の制約

 * [[Image:FEM_ConstraintInitialFlowVelocity.svg|32px]] Initial flow velocity condition: Used to define an initial flow velocity for a body (volume).


 * [[Image:FEM_ConstraintInitialPressure.svg|32px]] Initial pressure condition: Used to define an initial pressure for a body (volume).


 * [[Image:FEM_ConstraintFlowVelocity.svg|32px]] Flow velocity boundary condition: Used to define a flow velocity as a boundary condition at an edge (2D) or face (3D).

Geometrical analysis features

 * [[Image:FEM_ConstraintPlaneRotation.svg|32px]] Plane multi-point constraint: Used to define a constraint for keeping the nodes in a planar surface in the same plane.


 * [[Image:FEM_ConstraintSectionPrint.svg|32px]] Section print feature: Used to print the predefined facial output variables (forces and moments) to the data file.


 * [[Image:FEM_ConstraintTransform.svg|32px]] Local coordinate system: Used to define a transform constraint on a face.



機械的な制約

 * [[Image:FEM_ConstraintFixed.svg|32px]] Fixed boundary condition: Used to define a fixed constraint on point/edge/face(s).


 * [[Image:FEM_ConstraintDisplacement.svg|32px]] Displacement boundary condition: Used to define a displacement constraint on point/edge/face(s).


 * [[Image:FEM_ConstraintContact.svg|32px]] Contact constraint: Used to define a contact constraint between two faces.


 * [[Image:FEM_ConstraintTie.svg|32px]] Tie constraint: Used to define a tie constraint ("bonded contact") between two faces.


 * [[Image:FEM_ConstraintSpring.svg|32px]] Spring: Used to define a spring.


 * [[Image:FEM_ConstraintForce.svg|32px]] Force load: Used to define a force in [N] applied uniformly to a selectable face in a definable direction.


 * [[Image:FEM_ConstraintPressure.svg|32px]] Pressure load: Used to define a pressure constraint.


 * [[Image:FEM_ConstraintCentrif.svg|32px]] Centrifugal load: Used to define a centrifugal body load constraint.


 * [[Image:FEM_ConstraintSelfWeight.svg|32px]] Gravity load: Used to define a gravity acceleration acting on a model.



熱的制約

 * [[Image:FEM_ConstraintInitialTemperature.svg|32px]] Initial temperature: Used to define the initial temperature of a body.


 * [[Image:FEM_ConstraintHeatflux.svg|32px]] Heat flux load: Used to define a heat flux constraint on a face(s).


 * [[Image:FEM_ConstraintTemperature.svg|32px]] Temperature boundary condition: Used to define a temperature constraint on a point/edge/face(s).


 * [[Image:FEM_ConstraintBodyHeatSource.svg|32px]] Body heat source: Used to define an internally generated body heat.

Overwrite Constants

 * [[Image:FEM_ConstantVacuumPermittivity.svg|32px]] Constant vacuum permittivity: Used to overwrite the permittivity of vacuum with a custom value.



メニュー：メッシュ

 * [[Image:FEM_MeshNetgenFromShape.svg|32px]] FEM mesh from shape by Netgen: Generates a finite element mesh for a model using Netgen.


 * [[Image:FEM_MeshGmshFromShape.svg|32px]] FEM mesh from shape by Gmsh: Generates a finite element mesh for a model using Gmsh.


 * [[Image:FEM_MeshBoundaryLayer.svg|32px]] FEM mesh boundary layer: Creates anisotropic meshes for accurate calculations near boundaries.


 * [[Image:FEM_MeshRegion.svg|32px]] FEM mesh region: Creates a localized area(s) to mesh which highly optimizes analysis time.


 * [[Image:FEM_MeshGroup.svg|32px]] FEM mesh group: Groups and labels elements of a mesh (vertex, edge, surface) together, useful for exporting the mesh to external solvers.


 * [[Image:FEM_CreateNodesSet.svg|32px]] Nodes set: Creates/defines a node set from FEM mesh.


 * [[Image:FEM_FemMesh2Mesh.svg|32px]] FEM mesh to mesh: Convert the surface of a FEM mesh to a mesh.



メニュー：Solve

 * [[Image:FEM_SolverCalculixCxxtools.svg|32px]] Solver CalculiX Standard: Creates a new solver for this analysis.


 * [[Image:FEM_SolverElmer.svg|32px]] Solver Elmer: Creates the solver controller for Elmer.


 * [[Image:FEM_SolverMystran.svg|32px]] Solver Mystran: Creates the solver controller for the MYSTRAN solver.


 * [[Image:FEM_SolverZ88.svg|32px]] Solver Z88: Creates the solver controller for Z88.

Mechanical equations

 * [[Image:FEM_EquationElasticity.svg|32px]] Elasticity equation: Equation for the [[Image:FEM_SolverElmer.svg|32px]] Solver Elmer to perform linear mechanical analyses.


 * [[Image:FEM_EquationDeformation.svg|32px]] Deformation equation: Equation for the [[Image:FEM_SolverElmer.svg|32px]] Solver Elmer to perform nonlinear mechanical analyses (deformations).

Electromagnetic equations

 * [[Image:FEM_EquationElectrostatic.svg|32px]] Electrostatic equation: Equation for the [[Image:FEM_SolverElmer.svg|32px]] Solver Elmer to perform electrostatic analyses.


 * [[Image:FEM_EquationElectricforce.svg|32px]] Electricforce equation: Equation for the [[Image:FEM_SolverElmer.svg|32px]] Solver Elmer to calculate the electric force on surfaces.


 * [[Image:FEM_EquationMagnetodynamic.svg|32px]] Magnetodynamic equation: Equation for the [[Image:FEM_SolverElmer.svg|32px]] Solver Elmer to calculate magnetodynamics.


 * [[Image:FEM_EquationMagnetodynamic2D.svg|32px]] Magnetodynamic 2D equation: Equation for the [[Image:FEM_SolverElmer.svg|32px]] Solver Elmer to calculate magnetodynamics in 2D.


 * [[Image:FEM_EquationFlow.svg|32px]] Flow equation: Equation for the [[Image:FEM_SolverElmer.svg|32px]] Solver Elmer to perform flow analyses.


 * [[Image:FEM_EquationFlux.svg|32px]] Flux equation: Equation for the [[Image:FEM_SolverElmer.svg|32px]] Solver Elmer to perform flux analyses.


 * [[Image:FEM_EquationHeat.svg|32px]] Heat equation: Equation for the [[Image:FEM_SolverElmer.svg|32px]] Solver Elmer to perform heat transfer analyses.


 * [[Image:FEM_SolverControl.svg|32px]] Solver job control: Opens the menu to adjust and start the selected solver.


 * [[Image:FEM_SolverRun.svg|32px]] Run solver calculations: Runs the selected solver of the active analysis.



メニュー：結果

 * [[Image:FEM_ResultsPurge.svg|32px]] Purge results: Deletes the results of the active analysis.


 * [[Image:FEM_ResultShow.svg|24px]] Show result: Used to display the result of an analysis. This dialog is not available for the Solver Elmer as this solver visualizes using the Post pipeline from result object only.


 * [[Image:FEM_PostApplyChanges.svg|32px]] Apply changes to pipeline: Toggles if changes to pipelines and filters are applied immediately.


 * [[Image:FEM_PostPipelineFromResult.svg|32px]] Post pipeline from result: Used to add a new graphical representation of FEM analysis results (color scale and more display options).


 * [[Image:FEM_PostFilterWarp.svg|32px]] Warp filter: Used to visualize the scaled deformed shape of the model.


 * [[Image:FEM_PostFilterClipScalar.svg|32px]] Scalar clip filter: Used to clip a field with a specified scalar value.


 * [[Image:FEM_PostFilterCutFunction.svg|32px]] Function cut filter: Used to display the results on a sphere or a plane cutting through the model.


 * [[Image:FEM_PostFilterClipRegion.svg|32px]] Region clip filter: Used to clip a field with a sphere or a plane cutting through the model.


 * [[Image:FEM_PostFilterContours.svg|32px]] Contours filter: Used to display iso-lines (for analyses in 2D) or iso-contours.


 * [[Image:FEM_PostFilterDataAlongLine.svg|32px]] Line clip filter: Used to plot the values of a field along a specified line.


 * [[Image:FEM_PostFilterLinearizedStresses.svg|32px]] Stress linearization plot: Creates a stress linearization plot.


 * [[Image:FEM_PostFilterDataAtPoint.svg|32px]] Data at point clip filter: Used to display value of a selected field at a given point.

Filter functions

 * [[Image:FEM_PostCreateFunctionPlane.svg|32px]] Plane: Cuts the result mesh with a plane.


 * [[Image:FEM_PostCreateFunctionSphere.svg|32px]] Sphere: Cuts the result mesh with a sphere.


 * [[Image:FEM_PostCreateFunctionCylinder.svg|32px]] Cylinder: Cuts the result mesh with a cylinder.


 * [[Image:FEM_PostCreateFunctionBox.svg|32px]] Box: Cuts the result mesh with a box.



メニュー：ユーティリティ

 * [[Image:FEM_ClippingPlaneAdd.svg|32px]] Clipping plane on face: Adds a clipping plane for the whole model view.


 * [[Image:FEM_ClippingPlaneRemoveAll.svg|32px]] Remove all clipping planes: Removes all existing clipping planes.


 * [[Image:FEM_Examples.svg|32px]] Open FEM examples: Open the GUI to access FEM examples.



コンテキストメニュー

 * [[Image:FEM_MeshClear.svg|32px]] Clear FEM mesh: Deletes the mesh file from the FreeCAD file. Useful to make a FreeCAD file lighter.


 * [[Image:FEM_MeshDisplayInfo.svg|32px]] Display FEM mesh info: Displays basic statistics of existing mesh - number of nodes and elements of each type.

Obsolete tools

 * [[Image:FEM_ConstraintFluidBoundary.svg|32px]] Fluid boundary condition: Used to define a fluid boundary condition. Did not have a solver. Not available in.


 * [[Image:FEM_ConstraintBearing.svg|32px]] Constraint bearing: Used to define a bearing constraint. Did not have a solver. Not available in.


 * [[Image:FEM_ConstraintGear.svg|32px]] Constraint gear: Used to define a gear constraint. Did not have a solver. Not available in.


 * [[Image:FEM_ConstraintPulley.svg|32px]] Constraint pulley: Used to define a pulley constraint. Did not have a solver. Not available in.


 * [[Image:FEM_SolverCalculiX.svg|32px]] Solver CalculiX (new framework): Same as the original framework [[Image:FEM_SolverCalculixCxxtools.svg|32px]] Solver CalculiX Standard with extra checks. Tool was unfinished. Not available in.

環境設定

 * [[Image:Std_DlgPreferences.svg|32px]] Preferences...: Preferences available in FEM Tools.

リンク
FEMインストールをクリックすると、動作中のFEMモジュールを設定する方法の詳細が表示されます.

The following pages explain different topics of the FEM Workbench.

FEM Install: a detailed description on how to set up the external programs used in the workbench.

FEM Mesh: further information on obtaining a mesh for finite element analysis.

FEM Solver: further information on the different solvers available in the workbench, and those that could be used in the future.

FEM CalculiX: further information on CalculiX, the default solver used in the workbench for structural analysis.

FEM Concrete: interesting information on the topic of simulating concrete structures.

チュートリアル
チュートリアル1 FEM CalculiXカンチレバー3D

Tutorial 2: FEM Tutorial; simple tension analysis of a structure.

Tutorial 3: FEM Tutorial Python; set up the cantilever example entirely through scripting in Python, including the mesh.

Tutorial 4: FEM Shear of a Composite Block; see the deformation of a block that is comprised of two materials.

Tutorial 5: Transient FEM analysis

Tutorial 6: Post-Processing of FEM Results with Paraview

Tutorial 7: FEM Example Capacitance Two Balls; Elmer's GUI tutorial 6 "Electrostatics Capacitance Two Balls" using FEM Examples.

Coupled thermal mechanical analysis tutorials by openSIM

Video tutorial 1: FEM video for beginner (including YouTube link)

Video tutorial 2: FEM video for beginner (including YouTube link)

Many video tutorials: anisim Open Source Engineering Software (in German)

Extending the FEM Workbench
The FEM Workbench is under constant development. An objective of the project is to find ways to easily interact with various FEM solvers, so that the end user can streamline the process of creating, meshing, simulating, and optimizing an engineering design problem, all within FreeCAD.

The following information is aimed at power users and developers who want to extend the FEM Workbench in different ways. Familiarity with C++ and Python is expected, and also some knowledge of the "document object" system used in FreeCAD is necessary; this information is available in the Power users hub and the Developer hub. Please notice that since FreeCAD is under active development, some articles may be too old, and thus obsolete. The most up to date information is discussed in the FreeCAD forums, in the Development section. For FEM discussions, advice or assistance in extending the workbench, the reader should refer to the FEM subforum.

The following articles explain how the workbench can be extended, for example, by adding new types of boundary conditions (constraints), or equations.
 * Extend FEM Module
 * Onboarding FEM Devs attempts to orient new devs on how to contribute to the FEM workbench.
 * Add FEM Constraint Tutorial
 * Add FEM Equation Tutorial

A developer's guide has been written to help power users in understanding the complex FreeCAD codebase and the interactions between the core elements and the individual workbenches. The book is hosted at github so multiple users can contribute to it and keep it updated.
 * Early preview of ebook: Module developer' guide to FreeCAD source forum thread.
 * FreeCAD Mod Dev Guide github repository.

Extending the FEM Workbench documentation

 * More information regarding extending or missing FEM documentation can be found in the forum: FEM documentation missing on the Wiki