FEM SolverCalculixCxxtools

From FreeCAD Documentation

FEM SolverCalculixCxxtools

Menu location
Solve → Solver CalculiX Standard
Workbenches
FEM
Default shortcut
S X
Introduced in version
-
See also
FEM tutorial

Description

CalculiXccxTools enables usage of the CalculiX solver. It may be used for:

  1. Setting analysis parameters
  2. Selecting working directory
  3. Running the CalculiX solver

Usage

  1. A CalculiXcxxTools solver object is created automatically with the creation of an Analysis container.
    To create it manually, use one of the following alternatives:
    • Press the Solver CalculiX Standard button.
    • Select Solve → Solver CalculiX Standard from the menu.
    • Press the S then X shortcut keys.
  2. Optionally change the properties of the CalculiXcxxTools solver object in the Property editor.
  3. Double click the CalculiXcxxTools solver object.
  4. Select the Analysis type.
  5. Click the Write .inp file button.
  6. Click the Run CalculiX button.

Options

Click the Edit .inp file button to display and edit the CalculiX input file manually before running the analysis. In that case it can be useful to set the DataSplit Input Writer property to true.

Properties

Default values can be set in the menu Edit → Preferences → FEM → CalculiX

  • DataAnalysis Type:
    • static - static stress analysis
    • frequency - modal (natural frequency) analysis
    • thermomech - thermo-mechanical analysis
    • check - no calculation, performs input deck checks
    • buckling - linear buckling analysis introduced in version 0.20
  • DataBeam Shell Result Output 3D: note that CalculiX internally expands 1D and 2D elements into 3D elements to accomplish FE analysis
    • true - resulting mesh will contain 1D and 2D elements expanded to 3D elements
    • false - results of 1D and 2D elements will be averaged to the nodes of original 1D or 2D mesh (i.e. purely bended beam will show 0 nodal stresses due to averaging)
  • DataEigenmode High Limit: Eigenvalues above this limit will not be calculated; Note: if eigenvalues of the model are above the high limit, CalculiX will finish without output
  • DataEigenmode Low Limit: Eigenvalues below this limit will not be calculated
  • DataEigenmodes Count: number of lowest eigenmodes to be calculated
  • DataGeometric Nonlinearity:
    • linear - linear analysis will be performed if the model does not contain nonlinear material
    • nonlinear - nonlinear analysis will be performed
  • DataIterations Control Parameter Time Use
    • true - activates DataIterations Control parameter Cutb and DataIterations Control Parameter Iter
    • false
  • DataIterations Thermo Mech Maximum: maximum number of increments in thermo-mechanical analysis after which the job will be stopped.
  • DataIterations User Defined Incrementations:
    • true - automatic incrementation control will be switched off by DIRECT parameter
    • false - incrementation control will be automatic
  • DataIterations User Defined Time Step Length:
    • true - activates DataTime End and DataTime Initial Step parameters
    • false
  • DataMaterial Nonlinearity:
    • linear - only linear material properties will be included in the analysis
    • nonlinear - nonlinear material properties will be used from Nonlinear mechanical material object
  • DataMatrix Solver Type: type of the solver to solve equation system inside FE analysis. It may significantly affect calculation speed and memory demands. Suitability depends on your FE model and available hardware
    • default - automatically selects matrix solver depending on the available solvers (typically it is Spooles)
    • introduced in version 0.22: pastix - one of the fastest solvers (along with Pardiso), available (and default) in official builds since ccx 2.18, may still cause occasional issues
    • introduced in version 0.22: pardiso - one of the fastest solvers (along with PaStiX) but not open-source, requires a different build of CalculiX (ccx_dynamic) and additional libraries not provided with FreeCAD, more reliable than PaStiX
    • spooles - direct solver with the support of multiple CPUs. The number of CPUs needs to be set in the preferences at Solver defaults → Number of CPU's to use.
    • iterativescaling - iterative solver with the lowest memory demands, suitable if the model contains mostly 3D elements
    • iterativecholesky - iterative solver with preconditioning with and with low memory demands, suitable if the model contains mostly 3D elements
  • DataModel Space - introduced in version 0.22: switches between 3D and 2D analyses, the latter require surface geometry on the XY plane (on the right of the Y axis in the axisymmetric case) with thickness definition (value ignored in the axisymmetric case) and proper boundary conditions (displacement boundary condition with degrees of freedom X and Y has to be used instead of fixed boundary condition) and in-plane loads applied to edges
    • 3D - three-dimensional solid/shell/beam elements are used
    • plane stress - plane stress 2D solid elements are used
    • plane strain - plane strain 2D solid elements are used
    • axisymmetric - axisymmetric 2D solid elements are used
  • DataOutput Frequency - introduced in version 0.22: defines the frequency of results writing in increments (the default setting of 1 means that the results are written every increment, setting 2 would save the results every 2 increments and so on), particularly useful for nonlinear and transient simulations, helps reduce the clutter in the tree since currently a pair of results objects (CCX_Results and Pipeline_CCX_Results) is created for each results frame
  • DataSplit Input Writer:
    • false - write whole input into one *.inp file to be used by CalculiX solver
    • true - split solver inputs into more *.inp files, that can clarify hand editing
  • DataThermo Mechanical Steady State:
    • true - steady state thermo-mechanical analysis
    • false - transient thermo-mechanical analysis
  • DataTime End: time period of the step, used when parameter DataIterations User Defined Incrementations or DataIterations User Defined Time Step Length is true
  • DataTime Initial Step: initial time increment of the step, used when parameter DataIterations User Defined Incrementations or DataIterations User Defined Time Step Length is true
  • DataWorking Dir: path to the working directory which will be used for CalculiX analysis files.

Limitations

When running a CalculiX, you might end up with error 4294977295. This means you don't have enough RAM space. You have then 2 options:

  1. reduce the number of mesh nodes, preferably by omitting geometry that is not absolutely necessary for your analysis
  2. buy more RAM for your PC

Notes

Original CalculiX documentation can be found at http://dhondt.de/ in the "ccx" paragraph.

Scripting