Freeware for Engineers
Computational software has revolutionized the engineering industry in recent times, enabling engineers to simulate and optimize complex designs, reducing development costs, and improving product performance and reliability. These software tools have become an integral part of engineering processes, offering improved design, simulation, analysis, and optimization of engineering systems and processes. However, the high cost of proprietary software often makes it inaccessible to small companies or individuals. Apart from the financial aspect, using proprietary software can sometimes be a hassle. Some of my previous interactions with software vendors are paraphrased below.
"Oh! you want to change the output format and process it further? that would require an additional toolset, costing an extra 30%".
"Sorry, the current version of the software cannot interact with a 3rd party package. But no worries, we have a software in our suit that can do little bit of that work".
This article aims to provide insights on commonly used software for engineering applications and their free alternatives. Although freeware may have its own set of issues, it can be superior to proprietary software in certain aspects. Whether you are looking for a free alternative to a particular software or simply seeking to explore different engineering tools, this article may be useful to you.
This cartoon encapsulates one of the major issues in the proprietary software market (by Scott Adams)
Index
- 1. Objective
- 2. Engineering tools and applications
- 3. General features - Free & Proprietary software
- 4. Proprietary software and Free alternatives
-
- 4.1 CAE
-
- 4.1.1 FEM Workflow
- 4.1.2 Proprietary Software
- 4.1.3 Freeware
- 4.2 CAD
- 4.3 Numerical Analysis
- 5. Workflw Example - Motor design with freeware
- 6. References/Sources
- Objective
- Introduction of a diverse range of software suitable for various engineering applications.
- Recommendation for free alternatives to commonly used proprietary software.
- Promotion of open source software and packages.
- To keep me up to date with the latest developments.
- Engineering tools and applications
- Structural mechanics
- Thermal analysis
- Electromagnetics
- Fluid dynamics
- Acoustics
- Computer-Aided Design (CAD): CAD software is used to create 2D and 3D models of engineering components and systems. Engineers use CAD software to design and visualize components, assemblies, and systems before they are built.
- Finite Element Analysis (FEA): FEA software is used to simulate the behavior of engineering systems under various loading conditions. Engineers use FEA software to analyze stresses, deformations, and other physical phenomena that occur in engineering systems.
- Computational Fluid Dynamics (CFD): CFD software is used to simulate the behavior of fluids and gases in engineering systems. Engineers use CFD software to analyze fluid flow, heat transfer, and other physical phenomena that occur in engineering systems.
- Simulation software: Simulation software is used to simulate the behavior of engineering systems under various conditions. Engineers use simulation software to predict the performance of engineering systems and optimize their design.
- Project management software: Project management software is used to manage and track engineering projects. Engineers use project management software to keep track of project timelines, budgets, and milestones.
- Data analysis software: Data analysis software is used to analyze and interpret data collected from engineering systems. Engineers use data analysis software to identify patterns, trends, and anomalies in data, and to make informed decisions based on the results.
- General features - Free & Proprietary software
- It is possible to get student or free versions of most software. Although these often have limited functionality, they may be sufficient in some cases.
- For beginners, the learning curve can be difficult. Some analyses may require specific pre & post-processing packages, and freeware may require additional packages. This can be inconvenient at the beginning.
- Some of the freeware requires Linux as an operating system, but WSL (Windows Subsystem for Linux) in Windows may help here. Similarly there are programs like Wine to run Windows programs in Linux. Or another OS can be installed inside a virtual machine as well.
- In between these to catogories, there is a grey area with cheaper CAE software. This can be a good choice for many applications.
- Propriatary software and Free alternatives
- Pre-processing: Definition of the geometry, material properties, and boundary conditions of the system under investigation.
- Processing: Solution of the mathematical equations (PDEs) using numerical methods.
- Post-processing: Analysis & visualization the results to draw conclusions.
- Fundamentally a CAD software, but an excellent platform to integrate various mesh generators & solvers (FEM Workbench).
- Parametric CAD, with external control using python.
- For all applications - thermostructural, mechanical, CFD, electromagnetic & acoustics. Diverse capabilities as per the solver (Calculix, Z88, Elmer & OpenFOAM. Many solvers currently are being integrated).
- Easy integration with 3rd party packages.
- Good documentation & community support.
- Single software for all stages.
- Multiphysics solver, Code_Aster is embedded
- The solver is actively updated with novel models and techniques.
- Single software with all stages for FEM analysis.
- Solver, Calculix is embedded.
- Solver is similar to Abaqus, similar file formats are used.
- Focus on thermomechanical analysis.
- Multiphysics solver - thermo-mechanical, CFD, electro-mechanical analysis.
- Basic GUI is available for simple pre- & post-processing, but better used within another platform such as FreeCAD.
- Single software with all stages for FEM analysis.
- Thermo-mechanical and CFD analysis.
- Focus on biomechanics and biophysics.
- OpenFOAM
- Z88
- Gridap
- deal II
- Fenics
- MFEM
- SU2code
- FreeFEM
- OpenSees
- SfePy
- Firedrake
- GetFEM
- GetDP
- Kratos
- NGSolve
- OOFEM
- PyFR
- warp3D
- Dune
- Moose
- Hermes
- Workflow Example - Motor design with freeware
- Determine the type of motor (induction, PM, etc.) and the general constraints (dimensions, number of slots, etc.).
- Evaluation of the performance/output by electromagnetic analysis
- Thermal analysis
- Mechanical analysis - strength & vibration
- Fluid dynamics
- References/Sources
- List of FEA Software packages - Free/Open source
- Open-Source Finite Element Analysis Software
- Researchgate - open source finite element software for mechanical problems?
- Researchgate - Other than maxwell, what are the softwares available for electric motor design?
- Finite Element Analysis – List of FEA Software’s (Open Source and Commercial Software’s)
- Reddit - Are there any FREE Finite Element Analysis (FEA) software programs out there?
- FEA Compare - Comparison of various proprietary & freeware with price details, but might not be upto date.
- CoFEA Initiative - Contains freeware for FEA with and tutorials.
- CAE Open Source Software
- Open-Source Software and Resources
- Open source code for reactor analysis
- FEA for all - From basics to advanced
- TuxRiders - Youtube channel with various free & open-source software.
The main objectives of this article are,
Engineers use software tools to design, simulate, analyse and optimise various engineering systems and processes. The software can be categorised according to the area of application and the techniques used.
2.1 Multiphysics modeling
Most systems are often simplified by breaking down the physical phenomena that need to be observed. It's simpler to study these phenomena individually rather than having a complicated system where many phenomena are connected or dependent on each other. This systematic analysis of a system helps in simplifying it, which in turn makes the process easier and quicker. Some of the crucial physical phenomena for system analysis include:
2.2 Engineering tools & techniques
There are many engineering techniques available to address the analysis in the above areas. Some of the commonly used software tools for engineering applications are,
Electric motor design flow using Ansys multiphysics analysis tools. This is a decoupled analysis and could go through several iterations before design completion.
These are some of the aspects that are generally considered when choosing software. This comparison is general as there is a huge range of software available and many of the criteria are subjective.
Feature |
Proprietary software |
Freeware |
---|---|---|
Aesthetics | Good | Generally unpolished |
Use friendliness | Good | Could be difficult at the beginning |
Documentation, support & tutorials | Good, mostly with an active community | Good support for majon ones, but limited for the rest |
Customisation - automation & data modification | Restricted | Easy customisation, generally with python |
Compatibility, Integration with external modules and 3rd party packages | Limited, usually only with sibling software or packages | No constraints, usually follows a modular workflow. May require expertise |
Operating system | Mostly supports all (Windows, Mac & Linux) | Generally all, but some only for Linux |
Pre/post processing & analysis in design flow | Generally has the entire suite | May have to use multiple software/packages |
Remarks
From the vast collection of software for various engineering applications, only 3 influential areas are considered here: CAE, CAD and Numerical analysis. The most commonly used software in these areas is listed and bundled according to its application and features.
4.1 CAE
Computer Aided Engineering (CAE) uses various tools such as FEA, CFD and system optimisation to simulate different aspects of product design and development, significantly reducing cost and time to market by allowing engineers to optimise the design before physical prototyping. CAE tools are grouped into thermomechanical, electromagnetic and fluid dynamics analysis, followed by free options for these applications.
4.1.1 FEM Workflow
Most of the CAE tools listed use FEM (Finite Element Method), FDM (Finite Difference Method) or FVM (Finite Volume Method) for simulations, which essentially involves 3 stages in their workflow.
All 3 stages are embedded as a continuous process in a single window in most commonly used proprietary software. This is much easier for the user. However, this luxury is not always available with freeware. You may have to use up to 3 software packages for each of these stages to perform an analysis. In some cases this can be an advantage, especially as many of these are modular - meaning you can use a suitable solver with a preferred pre- or post-processor. Automation & modification of the model during simulation is also possible to some extent.
Pre-processing - 3D modeling, material definition, meshing, load/boundary conditions definitions.
Processing - Solving the system using diagonal matrices.
Post-processing - Visualization and analysis of the data.
4.1.2 Proprietary Software
The majority of the software listed are part of tool suites offered by software giants like Ansys, Altair, and Dassault Systems. This allows for seamless integration between the sibling software. Additionally, most of these software packages handle the three stages of analysis (pre-processing, processing, and post-processing) in a single window.
Software |
Features |
---|---|
Thermo-mechanical analysis | |
Ansys Mechanical | For structural, thermal, vibration, fracture and acoustic analysis. Easy for industrial use. |
Abaqus | Mainly used for thermo-mechanical analysis, has an improved user interface. Easy to implement different material behaviours. |
Altair Hyperworks | Thermo-mechanical analysis with lots of built-in functionality. User interface was poor but getting better & modern. Better integration with meshing, solvers and other sibling software. |
Comsol Multiphysics | Suitable for academia & R&D, nice tool for solving PDEs with multiphysics phenomena. Not optimised for everyday industrial use. |
SimScale | Mechanical, thermal & CFD. Online platform, no need for powerful hardware (SaaS). Uses open source solvers. |
Nastran | FEA solvers for thermo-mechanical systems Known for dynamic analysis. Available from several software companies. |
LS-Dyna | Commonly used for dynamic systems for crash & impact testing. Easily integrated with software in the Ansys suite. |
StressCheck | Model based solution method instead of traditional element centric FEA. |
SolidWorks Simulation | Smooth integration with CAD, easier for live simulation. Doesn't include complex functionality but useful for simple structures (similar to Creo & AutoDesk). |
Computational Fluid Dynamics (CFD) | |
Ansys Fluent | Robust, with good community support and active forums. Many built-in packages available, such as Turbomachinery. Has advanced models and offers more control over the model. |
Simcenter STAR-CCM+ | Single user interface for all steps. Some parts of the simulation can be automated. Provides an extensive library of commonly used models. |
Comsol Multiphysics | Semi-comprehensive CFD package. Can implement custom models that consider multiple physical phenomena, but not as many built-in modules as others. |
Altair CFD (Acusolve) | Moderate number of models & packages, but improving. Easier integration with meshing tools, CAD & Altair suite. Good documentation & community support. |
Autodesk CFD | User friendly, easier for beginners, but customisation of the system can be difficult and some functionality is limited. |
SimScale | Cloud platform (SaaS) with GPU based solver. Easier to integrate with thermo-mechanical aspects. Easy to use but lacks advanced physics models for complex scenarios. |
Creo Simulation | CFD embedded in the CAD package. Easy to test simple system during development of 3D modelling in Creo. Output incompatible with some CAD and CAE software. |
SolidWorks Flow Simulation | Another CAD-embedded CFD package for simple systems. Limited control and functionality. Better integration with SolidWorks (3D modelling). |
Electromagnetic Analysis | |
Ansys Maxwell | Non-linear, transient motion of electro-mechanical components and its effect on drive circuit and control system design. 2D & 3D analysis possible. |
Comsol Multiphysics | Handles most multiphysics system phenomena, but not streamlined for industrial use. |
Motor-CAD | Electromagnetic analysis with a focus on motor design. Thermomechanical analysis is possible using sibling software. |
Altair Flux | Actuator design focused electromagnetic and thermal simulations for both 2D and 3D solutions. Smooth interface with other Altair suite software. |
Motorsolve, Magnet, Speed | 2D & 3D analysis, focused on motor design. Thermal analysis also possible with sibling software. |
EMWorks | Can couple electromagnetics with thermal and structural analysis. |
Opera | 2D & 3D model electromechanical analysis including thermomechanical aspects. |
4.1.3 Freeware
Proprietary software allows for all three stages of analysis to be completed in a single window, whereas freeware typically functions as modules. However, there are options for completing the entire process within a single window if desired, or using multiple modules for different steps such as 3D modeling, meshing, material and boundary definition, solving PDEs, and visualization. This approach can be beneficial for data processing between steps or for automation. It should be noted that all software listed in the table includes pre-processing, processing, and post-processing capabilities, and may utilize external mesh generators, solvers, and other add-ons.
Software |
Features |
---|---|
FreeCAD |
|
Salome Meca |
|
PrePromax |
|
Elmer |
|
FEBio Studio |
|
These are some pre- & post-processors for use with the solvers listed above. Multiphysics, Thermomechanics, CFD, Electromagnetics. Also modular with appropriate pre- and post-processors.
4.2 CAD
CAD (Computer-Aided Design) is a tool used to create both 2D and 3D models for designing. Its purpose is to help designers create complex structures that are specifically meant for CAE (Computer-Aided Engineering) analysis. Despite being created by different companies, most CAD software share similar functionalities and user interfaces. Below are some of the commonly used CAD software and some free alternatives.
Software |
Features |
---|---|
Proprietary Software | |
SolidWorks | Easy to use with a focus on 3D modelling. Includes basic simulations that are helpful for faster design modifications. |
Autodesk Inventor | Similar to SolidWorks in terms of 3D modelling and simulation. Has better tools for certain areas such as gears. |
CREO / Pro-E | Includes parametric modelling, easier handling of assemblies and integration with ERP (Enterprise Resource Planning) software. |
AutoCAD | Most used CAD software still in 2023, commonly used for 2D drawings (Architect) |
Freeware | |
FreeCAD | Parametric 3D modeller. Easy to integrate with external libraries and packages. More than a CAD software, excellent platform for integrating various tools. |
Blender | Mainly used for 3D modelling, animation and video editing. Can create complex structures. |
LibreCAD | 2D CAD software. Good for simple 2D models. |
4.3 Numerical Analysis
The term "numerical analysis" doesn't fully describe the capabilities of the software mentioned. MATLAB is one of the popular tools used by people in many scientific fields for various tasks such as mathematical operations, data analysis, simulation, and more. It offers a wide range of tools for different applications. While it may be challenging to find a replacement for MATLAB or other similar proprietary software, there are free alternatives available that can help you manage your work.
Software |
Features |
---|---|
Proprietary Software | |
Matlab | Ideal tool for researchers and engineers with a little programming experience. Has a variety of optional toolsets & 3rd party modules for most of the engineering streams. Immense community support. |
Wolfram Mathematica | Similar to MATLAB, but doesn't have a huge following. Visualisation tools and some mathematical operations are better than MATLAB. Good for symbolic computation. |
Maplesoft | Better for analytical solutions. Doesn't have the community support and packages similar to MATLAB. |
Freeware | |
Gnu Octave | Basically a free MATLAB clone, with slight variations in syntax and some functionality. The libraries are not as large as MATLAB, but are growing with community support. |
Scilab | Also similar to MATLAB, but not as close as Octave. Some libraries are better than Octave, such as the Simulink alternative Xcos. |
Maxima | Suitable for analytical operations over numerical analysis. Similar to Mathematica & Maplesoft. |
Python | Widely used with huge community support and various packages for several applications. Unlike proprietary software, the required tools are in modular form, like SciPy, NumPy & Matplotlib. | Julia | Similar to Python, but with improved operations, functionality & speed. Julia lacks the community support of Python. Software and packages written in Julia are available, such as Juno IDE (currently integrated with Visual Studio). |
This is an example of how a complex system such as an electric motor can be designed using freeware. Different steps during the design phase are shown below. The process may go through several iterations before the design is finalised.
Various freeware and online platforms are available for the above steps. For the electric motor design FEMM is a nice tool to evaluate the electromagnetic properties.
FEMM - Electromagnetic analysis for the design - slot number, winding... (tools like Emetor can also be useful).
FreeCAD - 3D modeling of components and assemblies.
FreeCAD - CAE analysis. Mainly thermomechanical analysis, if needed CFD as well.
Besides my personal experience, I have utilized some sources of information. These articles provide detailed and specific information about many of the software mentioned earlier.