基于云的免费、无费用、无 X 的 uniX 类型的有限元计算工程工具
FeenoX is a cloud-first free and open source tool to solve engineering-related problems using a computer (or many computers in parallel) with a particular design basis.
Consider the following input file:
PROBLEM mechanical MESH box.msh
T(x,y,z) = sqrt(x^2 + y^2) + z # non-trivial temperature distribution
E = 200e3 * (1-T(x,y,z)/300) # temperature-dependent Young modulus
nu = 0.3
BC left fixed # left face fully fixed
BC top p=1e4*(1+x) # top face with a trapezoidal load
WRITE_RESULTS FORMAT vtuNote that
x$, $y$ and $z$.msh.vtk/.vtu
formatsEach of these items has a lot of design and usage implications, thoroughly discussed in the Software Design Specification, ranging from integrating FeenoX as a back end for different front ends with a reasonably low effort (e.g. SunCAE), down to suitability for interaction with Large Language Models. As a reference, the reader is encouraged to compare the above input syntax with any other FEA solver and then consider how to ask ChatGPT & friends for help to create an input file from scratch. Good luck detecting hallucinations. Or how to write a Graphical User Interface that would need to create something the solver can read. Plus, it can be installed with
apt install feenoxChoose your background for further details about the what, how and whys:
See the following paper for a brief summary (and to cite FeenoX in your work):
News
White paper “Why FeenoX is different”
First non-trivial large-deformation mechanical example: NAFEMS GNL5 “Large-deformation beam”
FeenoX is now in Debian (Trixie backports, Forky and Sid) and Ubuntu (25.04 onward).
You can install FeenoX from APTsudo apt install feenoxOpen-source web-based UX for FeenoX.
Take a look at SunCAE for an example of how to write a front end for FeenoX.IB students
Remember that your first read should be the 0-th tutorial, Setting up your workspace
The tests directory in the repository has hundreds of
grep-able examples
(crude) mathematical & code verification tests (as in “are we solving right the equations?”),
subdirectories with further case studies
Both free as in “free speech” and in “free beer”
The problem to solve is defined through a syntactically-sugared self-descriptive English-like plain-text input file that should resemble the original human-friendly problem formulation as much as possible:
PRINT nor
WRITE_RESULTS instructions, no output)Cloud-first design (cloud friendliness is not enough)
Leverages high-quality well-established free and open source libraries to solve…
Focuses on [flexibility], especially when defining [non-uniform multi-solid material properties from ASME tables]
Follows the [Unix programming philosophy]
Each PDE (i.e. from Laplace downward in the list of examples) [is
implemented in a subdirectory] within [src/pde][PDEs] of the source
tree
[Space], [time] and/or solution-dependent [material properties] and [boundary conditions]
[Command-line argument expansion] for
[Steady-state], [quasi-static] and/or [transient problems]
[Linear] and [non-linear] problems
Possibility to verify the code using the [Method of Manufactured Solutions]
Separate [repository to profile and study code performance] using [Google’s benchmark library]
暂无开放 Issues,或尚未同步最近议题。