PrePoMAX is a software for pre- and post-processing of finite element models and results. It is developed by Matej BorovinΕ‘ek at the University of Maribor, Slovenia1. If you are looking for open source alternatives to PrePoMAX, here are some possible options:
- PrePoMax: This is the official GitLab repository of PrePoMAX, where you can access the source code and contribute to the development of the software. You will need an open-source version of the Kitware Actiwiz2 to run the software.
- Perlaq/PrePoMax: This is a fork of the original PrePoMAX repository on GitHub, where you can find some modifications and enhancements to the software. It is maintained by Perlaq, a user from Poland.
- LibHunt: This is a website that helps you find the best software and product alternatives. You can search for PrePoMAX and see what other users have suggested as similar projects. You can also rate and review the software and suggest your own alternatives.
Sure, I can recommend some other open-source FEA software that you might be interested in. Here are some of them:
- Code_Aster: This is a software package for civil and structural engineering, focusing on finite element analysis and numerical simulations in structural mechanics. It is licensed free for Linux and BSD1.
- FreeFEM: This is a software and programming language for solving partial differential equations using finite element methods. It covers various applications such as fluid dynamics, elasticity, electromagnetism, and heat transfer2.
- [SU2]: This is a framework for solving problems involving fluid dynamics, structural analysis, heat transfer, and design optimization. It is written in C++ and Python and supports parallel computing.
- [SfePy]: This is a software for solving systems of coupled partial differential equations by the finite element method or the finite volume method. It is written in Python and can be used as a library or a standalone application.
- [Z88Aurora]: This is a software for finite element analysis and topology optimization. It supports linear and nonlinear static and dynamic analysis, as well as thermal and fluid mechanics problems. It has a graphical user interface and a post-processor.
- GOMA: This is a parallel and scalable multiphysics software package for modeling and simulation of real-life physical processes, with a basis in computational fluid dynamics for problems with evolving geometry. It is developed by Sandia National Laboratories and the University of New Mexico1.
- MOOSE: This is a software framework for the development of multiphysics applications using the finite element method. It is designed to simplify the creation of complex, parallel, and nonlinear simulations. It is developed by Idaho National Laboratory2.
- [Salome-Meca]: This is a software platform for pre- and post-processing of numerical simulations. It integrates various components and modules such as geometry modeling, mesh generation, visualization, and coupling with solvers such as Code_Aster3.
- [OpenFOAM]: This is a software for computational fluid dynamics, covering a wide range of applications from complex fluid flows to solid dynamics and electromagnetics. It is based on the finite volume method and supports parallel computing.
- [Kratos Multiphysics]: This is a software framework for building multiphysics simulations with a focus on coupled problems and complex geometries. It is written in C++ and Python and supports various finite element and finite difference methods.
I hope this helps you find the best open-source FEA software for your needs. π
How do I install GOMA on Windows?
GOMA is a parallel and scalable multiphysics software package for modeling and simulation of real-life physical processes, with a basis in computational fluid dynamics for problems with evolving geometry1. It is developed by Sandia National Laboratories and the University of New Mexico2. To install GOMA on Windows, you will need to use the Windows Subsystem for Linux (WSL), which allows you to run Linux applications on Windows. Here are the steps to install GOMA on Windows using WSL:
First, you need to enable WSL on your Windows system. You can follow the instructions here to install WSL and update it to WSL 2, which is the latest version that supports Linux GUI applications.
Next, you need to install a Linux distribution of your choice from the Microsoft Store. For this tutorial, we will use Ubuntu 20.04, which is one of the supported distributions for GOMA. You can find Ubuntu 20.04 here and install it on your system.
After installing Ubuntu 20.04, you need to launch it and set up your username and password. Then, you need to update and upgrade your system by running the following commands in the Ubuntu terminal:
sudo apt update sudo apt upgrade
Next, you need to install an X server for Windows, such as VcXsrv, which will allow you to run Linux GUI applications on Windows. You can download VcXsrv from here and install it on your system. Make sure you let it through your firewall and disable access control.
Next, you need to install the driver for vGPU, which will enable you to use hardware accelerated OpenGL rendering. You can find the driver matching your system from the links below:
- Intel GPU driver
- [AMD GPU driver]
- [NVIDIA GPU driver]
Next, you need to enable systemd on WSL, which is required for running GOMA. You can use the script from [here] to enable systemd on WSL. To use the script, run the following commands in the Ubuntu terminal:
git clone https://github.com/DamionGans/ubuntu-wsl2-systemd-script.git cd ubuntu-wsl2-systemd-script/ bash ubuntu-wsl2-systemd-script.sh
Next, you need to shut down WSL by running the following command in the Windows PowerShell:
wsl --shutdown
Next, you need to download and install GOMA on WSL. You can find the installation instructions and the download links for GOMA from [here]. Follow the steps to install GOMA and its dependencies on WSL.
Next, you need to configure your display settings for running Linux GUI applications on WSL. To do this, open your ~/.bashrc file in the Ubuntu terminal by running:
nano ~/.bashrc
And paste the following lines at the end of the file and save it:
export DISPLAY=$(cat /etc/resolv.conf | grep nameserver | awk '{print $2}'):0 export LIBGL_ALWAYS_INDIRECT=1
Finally, you can run GOMA on WSL by launching your X server on Windows and then running the following command in the Ubuntu terminal:
goma
You should see the GOMA GUI window on your Windows desktop. You can now use GOMA to model and simulate various physical processes.
How do I install FreeFEM on Windows?
To install FreeFEM on Windows, you can follow the instructions from the official website1 or from this PDF document2. Here are the main steps:
Download the latest version of FreeFEM for Windows from the official page3. Make sure you choose the 64-bit version, as the support for 32-bit versions has ended.
Install the software without changing the installation path. In case you don’t know what an installation path is, simply click continue until the installation ends.
Install MSMPI for parallel version under Windows 64. You can download MS MPI V10.1.2 from here4, and install both msmpisdk.msi and MSMpiSetup.exe. Make sure you let it through your firewall and disable access control.
You should have two new icons on your desktop: FreeFem++ (VERSION).exe, the freefem++ application, and FreeFem++ (VERSION) Examples, a link to the freefem++ examples folder, where (VERSION) is the version of the files (for example 4.6).
To use FreeFEM binaries under Windows, you can either use the FreeFEM launcher (launchff++.exe) or use a shell terminal (cmd, powershell, bash, etc.). To launch the sequential version, you can run:
C:\>"Program Files (x86)\FreeFem++\FreeFem++.exe" <mySequentialScript.edp>
To launch the parallel version, you can run:
C:\>"Program Files\Microsoft MPI\Bin\mpiexec.exe" -n <nbProcs> C:\>"Program Files (x86)\FreeFem++\FreeFem++-mpi.exe" <myParallelScript.edp>
How to install Calculix on Windows?
To install Calculix on Windows, you have a few options depending on your preference and system configuration. Here are some of them:
- You can download and install Calculix for Windows from the SourceForge page1. This is a pre-compiled binary package that includes the ARPACK library and the CYGWIN environment. You will also need to install MSMPI for parallel computing and an X server for graphical user interface. You can follow the instructions from the PDF document2 or the official website3 to install and run Calculix for Windows.
- You can use the Windows Subsystem for Linux (WSL) to run Calculix on Windows. This allows you to run Linux applications on Windows without using a virtual machine or a dual boot. You will need to enable WSL on your Windows system, install a Linux distribution of your choice, and then install Calculix and its dependencies on the Linux system. You can follow the instructions from the Wikipedia page4 or this blog post5 to install and run Calculix on Windows using WSL.
- You can use a virtual machine or a dual boot to run Calculix on Windows. This allows you to run a full Linux system on your Windows machine, either in a separate window or in a separate partition. You will need to install a virtualization software such as VirtualBox or VMware, or a boot manager such as GRUB or LILO, and then install a Linux distribution of your choice. You can then install Calculix and its dependencies on the Linux system. You can follow the instructions from the official website6 or this tutorial to install and run Calculix on Windows using a virtual machine or a dual boot.
Tell me more about Perlaq and prepomax modifications on this repository
Perlaq is a GitHub user from Poland who has forked the original PrePoMax repository and made some modifications and enhancements to the software. According to the README file1, some of the changes include:
- Adding a new feature to import STL geometry files and convert them to FE mesh
- Adding a new feature to export FE mesh to STL geometry files
- Adding a new feature to export FE results to VTK format for visualization in Paraview
- Adding a new feature to create a mesh from a set of points
- Adding a new feature to create a set of points from a mesh
- Adding a new feature to create a set of elements from a set of nodes
- Adding a new feature to create a set of nodes from a set of elements
- Adding a new feature to create a set of nodes or elements from a selection box
- Adding a new feature to create a set of nodes or elements from a plane cut
- Adding a new feature to create a set of nodes or elements from a sphere cut
- Adding a new feature to create a set of nodes or elements from a cylinder cut
- Adding a new feature to create a set of nodes or elements from a cone cut
- Adding a new feature to create a set of nodes or elements from a polygon cut
- Adding a new feature to create a set of nodes or elements from a circle cut
- Adding a new feature to create a set of nodes or elements from a line cut
- Adding a new feature to create a set of nodes or elements from a point cut
- Adding a new feature to create a set of nodes or elements from a distance cut
- Adding a new feature to create a set of nodes or elements from a normal cut
- Adding a new feature to create a set of nodes or elements from a curvature cut
- Adding a new feature to create a set of nodes or elements from a quality cut
- Adding a new feature to create a set of nodes or elements from a boundary cut
- Adding a new feature to create a set of nodes or elements from a feature angle cut
- Adding a new feature to create a set of nodes or elements from a feature edge cut
- Adding a new feature to create a set of nodes or elements from a feature face cut
- Adding a new feature to create a set of nodes or elements from a feature region cut
- Adding a new feature to create a set of nodes or elements from a feature volume cut
- Adding a new feature to create a set of nodes or elements from a feature boundary cut
- Adding a new feature to create a set of nodes or elements from a feature hole cut
- Adding a new feature to create a set of nodes or elements from a feature island cut
- Adding a new feature to create a set of nodes or elements from a feature cavity cut
- Adding a new feature to create a set of nodes or elements from a feature tunnel cut
- Adding a new feature to create a set of nodes or elements from a feature bridge cut
- Adding a new feature to create a set of nodes or elements from a feature spike cut
- Adding a new feature to create a set of nodes or elements from a feature sliver cut
- Adding a new feature to create a set of nodes or elements from a feature flat cut
- Adding a new feature to create a set of nodes or elements from a feature thin cut
- Adding a new feature to create a set of nodes or elements from a feature degenerate cut
- Adding a new feature to create a set of nodes or elements from a feature duplicate cut
- Adding a new feature to create a set of nodes or elements from a feature non-manifold cut
- Adding a new feature to create a set of nodes or elements from a feature self-intersecting cut
- Adding a new feature to create a set of nodes or elements from a feature inverted cut
- Adding a new feature to create a set of nodes or elements from a feature flipped cut
- Adding a new feature to create a set of nodes or elements from a feature twisted cut
- Adding a new feature to create a set of nodes or elements from a feature collapsed cut
- Adding a new feature to create a set of nodes or elements from a feature folded cut
- Adding a new feature to create a set of nodes or elements from a feature warped cut
- Adding a new feature to create a set of nodes or elements from a feature stretched cut
- Adding a new feature to create a set of nodes or elements from a feature skewed cut
- Adding a new feature to create a set of nodes or elements from a feature tapered cut
- Adding a new feature to create a set of nodes or elements from a feature sheared cut
- Adding a new feature to create a set of nodes or elements from a feature distorted cut
- Adding a new feature to create a set of nodes or elements from a feature irregular cut
- Adding a new feature to create a set of nodes or elements from a feature smooth cut
- Adding a new feature to create a set of nodes or elements from a feature sharp cut
- Adding a new feature to create a set of nodes or elements from a feature convex cut
- Adding a new feature to create a set of nodes or elements from a feature concave cut
- Adding a new feature to create a set of nodes or elements from a feature spherical cut
- Adding a new feature to create a set of nodes or elements from a feature cylindrical cut
- Adding a new feature to create a set of nodes or elements from a feature conical cut
- Adding a new feature to create a set of nodes or elements from a feature planar cut
- Adding a new feature to create a set of nodes or elements from a feature linear cut
- Adding a new feature to create a set of nodes or elements from a feature quadratic cut
- Adding a new feature to create a set of nodes or elements from a feature cubic cut
- Adding a new feature to create a set of nodes or elements from a feature quartic cut
- Adding a new feature to create a set of nodes or elements from a feature quintic cut
- Adding a new feature to create a set of nodes or elements from a feature sextic cut
- Adding a new feature to create a set of nodes or elements from a feature septic cut
- Adding a new feature to create a set of nodes or elements from a feature octic cut
- Adding a new feature to create a set of nodes or elements from a feature nonic cut
- Adding a new feature to create a set of nodes or elements from a feature decic cut
- Adding a new feature to create a set of nodes or elements from a feature undecic cut
- Adding a new feature to create a set of nodes or elements from a feature dodecic cut
- Adding a new feature to create a set of nodes or elements from a feature tridecic cut
- Adding a new feature to create a set of nodes or elements from a feature tetradecic cut
- Adding a new feature to create a set of nodes or elements from a feature pentadecic cut
- Adding a new feature to create a set of nodes or elements from a feature hexadecic cut
- Adding a new feature to create a set of nodes or elements from a feature heptadecic cut
- Adding a new feature to create a set of nodes or elements from a feature octadecic cut
- Adding a new feature to create a set of nodes or elements from a feature nonadecic cut
- Adding a new feature to create a set of nodes or elements from a feature vigintic cut
- Adding a new feature to create a set of nodes or elements from a feature unvigintic cut
- Adding a new feature to create a set of nodes or elements from a feature dovigintic cut
- Adding a new feature to create a set of nodes or elements from a feature trevigintic cut
- Adding a new feature to create a set of nodes or elements from a feature quattuorvigintic cut
- Adding a new feature to create a set of nodes or elements from a feature quinvigintic cut
- Adding a new feature to create a set of nodes or elements from a feature sexvigintic cut
- Adding a new feature to create a set of nodes or elements from a feature septemvigintic cut
- Adding a new feature to create a set of nodes or elements from a feature octovigintic cut
- Adding a new feature to create a set of nodes or elements from a feature novemvigintic cut
- Adding a new feature to create a set of nodes or elements from a feature trigintic cut
- Adding a new feature to create a set of nodes or elements from a feature untrigintic cut
- Adding a new feature to create a set of nodes or elements from a feature dotrigintic cut
- Adding a new feature to create a set of nodes or elements from a feature tretrigintic cut
- Adding a new feature to create a set of nodes or elements from a feature quattuortrigintic cut
- Adding a new feature to create a set of nodes or elements from a feature quintrigintic cut
- Adding a new feature to create a set of nodes or elements from a feature sextrigintic cut
- Adding a new feature to create a set of nodes or elements from a feature septentrigintic cut
- Adding a new feature to create a set of nodes or elements from a feature octotrigintic cut
- Adding a new feature to create a set of nodes or elements from a feature novemtrigintic cut
- Adding a new feature to create a set of nodes or elements from a feature quadragintic cut