20 Open Source Industrial Design Software

Planning: h4cd; finishing: Xiao Ying

Industrial software supports the entire industrial system, but its market share is so small that it is not valued, even in the field of open source. As the basic software for the research and development, design and processing of industrial products, design software is a relatively prosperous branch of industrial software. 

According to the different aspects of design, industrial design software is usually divided into CAD, CAE, EDA, CAO, CAM, CFD, TCAD, CAPP and other categories. Broadly speaking, these softwares that use computers to solve engineering problems can be included in the category of CAE (Computer Aided Engineering). 

This article introduces 20 open source CAE software, involving CAD, geometric operations, pre-processing, mesh creation, CFD (computational fluid dynamics), FEA (finite element analysis), mathematics and data analysis, post-processing and so on. 

1. CAD, geometric operations, pre-processing

(1) SALOME

Distributed under the LGPL license, SALOME provides a common platform for pre- and post-processing of numerical simulations, modeling and simulating physical processes in various fields, as well as handling large-scale numerical simulations such as multiphysics and parametric studies. 

It includes a parametric CAD modeler, mesh generation and editing module, calculation manager, and data analysis and processing tools, as well as creating tools for specific applications such as civil engineering, piping, or fast dynamics in rotating machines. 

Official address: https://www.oschina.net/p/salome

(2) FreeCAD 

 

 

FreeCAD is a general-purpose parametric 3D CAD modeler, equipped with FEA tools, experimental CFD, CAM/CNC workbench, robot simulation modules, etc., released under the LGPL license. 

Like most CAD modelers, it has many 2D components for drawing flat shapes or creating production drawings. In addition, FreeCAD makes extensive use of open source libraries for scientific computing, including the powerful CAD kernel Open Cascade Technology (OCCT), the Open Inventor-compatible 3D graphics development toolkit Coin3D, the well-known UI framework Qt, and the scripting language Python. In addition, FreeCAD itself can be used as a library by other programs. 

FreeCAD is licensed under the LGPL and supports Linux, Unix, Windows and Mac OSX systems, with the same look and functionality on all platforms. 

Official address: https://www.oschina.net/p/freecad

(3) Blender 

 

 

Blender is a 3D authoring suite distributed under the GPL license. It supports the entire 3D pipeline - modeling, rigging, animation, simulation, rendering, compositing and motion tracking, even video editing and game creation. Use Blender's Python scripting API to customize applications and write specialized tools. 

Blender has lower memory and driver requirements than other 3D modeling tools. It can run under Linux, macOS and Windows systems, to provide users with a consistent experience, its interface uses OpenGL. 

Official address: https://www.oschina.net/p/blender

(Sì) MeshLab  

Developed based on the C++ mesh processing library VCG, MeshLab provides a set of tools for editing, cleaning, repairing, checking, rendering, texturing and transforming mesh data for processing and editing unstructured large 3D triangular meshes. 

Released under GPL, MeshLab is a portable and extensible system that supports mainstream operating systems such as Windows, macOS, and Linux. 

Official address: https://www.oschina.net/p/meshlab 

2. Grid creation

(1) cfMesh

cfmesh meshes are very powerful and cover all requirements for generating fluid meshes and are distributed under the GPL license. Unlike traditional unstructured mesh generators, cfMesh uses an inside-out approach to mesh generation. It has the advantage that it does not require input of high-quality geometry and can tolerate smaller gaps, cracks and protrusions. In addition, cfMesh is highly automated, can adapt to complex geometries, and can run on parallel processors.  

It should be noted that although the lead developers are all the same person, cfMesh and CF-MESH+ are two different software , and CF-MESH+ is a commercial product provided by Creative Fields Holding. The main differences between the two are the quality of boundary layer generation, mesh optimization algorithms and automatic element sizing. Additionally, CF-MESH+ comes with a GUI that allows quick setup and operation of patches. 

Official address: https://www.oschina.net/p/cfmesh

(2) enGrid 

 

 enGrid is a grid generation software specifically for CFD (Computational Fluid Dynamics) , released under the GPL. It uses the Netgen library to generate tetrahedral meshes as well as prismatic boundary meshes, has a Qt-based GUI, and aims to be a useful addition to the open source CFD community. 

Currently, enGrid has interfaces for Blender, Gmsh and STL files, and has added functions to support OpenFOAM and SU2 local export. 

Official address: https://www.oschina.net/p/engrid

(3) Gmsh 

Gmsh is an automatic 3D finite element mesh generator with built-in CAD engine and post-processor, and is released externally using GPL. In terms of mesh quality, Gmsh is in no way inferior to commercial mesh engines. 

Gmsh is built around four modules: geometry, mesh, solver, and postprocessing. Module input can be done interactively using the UI interface, or in ASCII text files using Gmsh's own scripting language (.geo files), or using the C++, C, Python or Julia API. 

Official address: https://www.oschina.net/p/gmsh

(4) Triangle  

 

Triangle is a tool for constructing artistic images using the point set Delaunay triangulation technique, where an input image can be converted into an abstract image composed of triangular blocks. 

Although Triangle is available for free, it is copyrighted by its author and may not be sold or included in commercial products without permission. 

Official address: https://www.oschina.net/p/triangle

(5) TetGen  

TetGen is a  Delaunay ( triangulation ) tetrahedral mesh generation tool that provides various capabilities to generate high quality and adaptive tetrahedral meshes suitable for numerical methods such as finite element or finite volume methods. It generates Delaunay tetrahedra, Voronoi diagrams and convex hulls for 3D point sets, constrained Delaunay tetrahedra and high quality tetrahedral meshes for 3D domains with piecewise linear boundaries.  

Written in C++, TetGen is essentially a fast implementation of arbitrary-precision floating-point operations on fixed-precision floating-point numbers, so it can be compiled into a stand-alone program called from the command line or a library linked with other programs, supports Unix, Linux, macOS, Windows other mainstream operating systems. 

The figures below show the TetGen-generated 3D polyhedron (left), a Delaunay tetrahedral mesh with uniform boundaries (middle), and its dual-Voronoi partition map (right). 

 

For a set of 3D points, TetGen computes its exact Delaunay tetrahedralization and its dual Voronoi diagram. The image below shows a set of 164 points sampled in a cube (left), a Delaunay tetrahedron and its dual Voronoi diagram (middle), Voronoi faces are randomly colored for visualization, bounded Voronoi cells (right), inner Voronoi cells grid is highlighted. 

 

Official address: https://www.oschina.net/p/tetgen

 (6) NETGEN 

NETGEN is a 3D tetrahedral mesh generator that accepts solid model input in STL file format based on Constructive Solid Geometry (CSG) or Boundary Representation (BRep). It interfaces with the geometry kernel and can handle IGES and STEP files. 

NETGEN is generally used in combination with the NGSolve library (relevant tutorials are generally written as NETGEN/NGSolve). NGSolve is a finite element library that contains all standard element geometry of arbitrary order finite elements, which can be linked to Netgen for use. 

NETGEN/NGSolve includes modules for mesh optimization and hierarchical mesh refinement to complete the complete workflow of finite element simulations, including seamless integration from geometric modeling, mesh generation, numerical simulation to visualization, NETGEN/NGSolve NGSolve is distributed under the LGPL. 

Netgen 6.x supports scripting through a Python interface for Unix, Linux, Windows and macOS. 

Official address: https://www.oschina.net/p/netgen

3. CFD

(一)OpenFOAM  

OpenFOAM is a computational fluid dynamics (CFD) software package. It supports polyhedral meshes, such as the polyhedral meshes generated by CCM+ launched by CD-adapco, so it can handle complex geometric shapes and support massively parallel computing. 

OpenFOAM is versatile enough to simulate turbulence in automotive aerodynamics, fire and suppression in buildings (including combustion, chemical reactions, heat transfer, liquid sprays and films), and any scenario in solid dynamics and electromagnetism. It contains tools for meshing in and around complex geometries such as vehicles, data processing and visualization, and more. 

OpenFOAM is distributed under the GPL and has several versions. The org version is maintained by The OpenFOAM Foundation, a non-profit organization, and the com version is maintained by ESI Corporation. 

Official address: https://www.oschina.net/p/OpenFOAM

(2) SU2 

SU2 is a set of tools written in C++/Python for the numerical solution of partial differential equations (PDEs) and optimization of PDE constraints. It is designed with computational fluid dynamics (CFD) and aerodynamic shape optimization in mind, and is scalable so it can handle other systems of governing equations such as fluid dynamics, elastodynamics, electrodynamics, chemical reaction flow, and more.

SU2 was developed by the Aerospace Design Laboratory (ADL) and community members of Stanford University's Department of Aeronautics and Astronautics, and is released under the LGPL license.

 Four, FEA

(1) Calculix  

 CalculiX is an analysis software that uses the finite element method to construct, calculate and post-process finite element models. Preprocessors and Postprocessors are interactive 3D tools that use the openGL API and support solvers for software such as Nastran, Abaqus, Ansys, ISAAC, and OpenFOAM. 

The solver is capable of linear and nonlinear calculations, providing static, dynamic and thermal solutions. Because the solver uses the Abaqus input format, commercial preprocessors can also be used. ( Abaqus is commercial software developed by HKS,  CalculiX has been licensed by HKS.) 

CalculiX is distributed under GPL, its processor and solver can be used separately, and it provides external CAD interface, can run on Linux, IRIX, Unix, Windows. 

Official address: https://www.oschina.net/p/calculi

(二)Code_Aster  

Code_Aster is a coupled calculation software for structural mechanics and thermal mechanics based on finite element theory for 3D thermal and mechanical analysis of machines, pressure vessels and civil engineering structures. 

In addition to the standard functionality of solid mechanics FEM software, Code_Aster covers several specific areas: fatigue, damage, fracture, contact, geological materials, porous media, multiphysics coupling, and more. 

Code_Aster was developed by EDF (EDF) for more than 30 years. It has been verified by a large number of industrial applications and benchmarked against mainstream mechanics commercial software such as Abaqus and Ansys. 

Official address: https://www.oschina.net/p/code_aster

5. Mathematics and data analysis

(1) Scilab

Scilab is released based on GPL, with matrix as the main data type, and has rich plotting functions, including about 1700 mathematical functions for scientific and engineering calculations, which can be used for signal processing, statistical analysis, image enhancement, fluid dynamics simulation, Numerical optimization and modeling, simulation of explicit and implicit dynamical systems, and (if the appropriate toolbox is installed) symbolic manipulation.

Scilab also includes a free software package called Xcos for modeling and simulating explicit and implicit dynamical systems, including continuous and discrete subsystems. Xcos is the open-source equivalent of Simulink in MathWorks. 

Scilab includes a source code converter to assist in converting code from MATLAB to Scilab. 

Official address: https://www.oschina.net/p/scilab

) 二) GNU Octave

 

GNU Octave is distributed under the GPL, has built-in 2D/3D plotting and visualization tools, is compatible with many Matlab scripts, and the Octave interpreter can be run in GUI mode, as a console, or invoked as part of a shell script. 

Official address: https://www.oschina.net/p/octave

(3) OpenTURNS

 

OpenTURNS is a C++ and Python library with built-in models and algorithms designed to deal with uncertain data. The main goal of this library is to provide all the functionality needed to deal with uncertainty in research for industrial applications. Officials say the software is aimed at all engineers who wish to introduce a probabilistic dimension to their deterministic research so far. 

Official address: https://www.oschina.net/p/openturns 

6. Post-processing 

(1) ParaView 

ParaView is a multi-platform data analysis and visualization software. Users can quickly build visualizations to analyze data using qualitative and quantitative techniques, support 3D interactions, and program batch processing.

ParaView was originally developed to analyze very large datasets using distributed in-memory computing resources and can be deployed on Windows, macOS, Linux, SGI, IBM Blue Gene, Cray and various Unix workstations, clusters and supercomputers. Behind the scenes, ParaView uses the Visualization Toolkit (VTK) as the data processing and rendering engine, and has a UI written in Qt.

Official address: https://www.oschina.net/p/paraview

(2) Gnuplot 

 

 

Gnuplot is a command-line driven plotting program for Linux, macOS, Windows, VMS, etc. The source code is copyrighted, but can be distributed for free (i.e. you don't have to pay for it). Originally created to allow scientists and students to interactively visualize mathematical functions and data, it has grown to support many non-interactive uses such as web scripting. It is also used as a drawing engine by third-party applications such as Octave. 

Gnuplot is mostly distributed under GPL and has the letters "Gnu", but officially says it has nothing to do with the GNU Project or FSF. 

Official address: https://www.oschina.net/p/gnuplot

(3) VisI

Distributed under the BSD license, VisIt is an infrastructure for parallel, general-purpose post-processing of extremely large datasets. Target use cases include data exploration, comparative analysis, visual debugging, quantitative analysis, and graphical presentations. 

Its basic design is a client-server model, where the servers are parallelized. The tool has enabled the visualization of many large datasets, including structured grids of 216 billion data points, 1 billion particle simulations, and curved, unstructured, and AMR grids with hundreds of millions to billions of elements. 

In addition to being able to handle trillion-scale datasets, VisIt also handles small datasets in the kilobyte range well and runs on Windows, macOS, Linux, and Unix systems. 

Official address: https://www.oschina.net/p/visit 

In fact, open source industrial design software is far more than the above, and I will leave it to the next time.

Reference link: https://mp.weixin.qq.com/s/BL8RE2xaF9Hv5aAlbLnOJQ

{{o.name}}
{{m.name}}

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=324146532&siteId=291194637