FinEtools.jl
FinEtools.jl copied to clipboard
Finite Element tools in Julia
FinEtools: Finite Element tools in Julia
FinEtools is a package for basic operations on finite element meshes: Construction, modification, selection, and evaluation of quantities defined on a mesh. Utilities are provided for maintaining mesh-based data (fields), for defining normals and loads, for working with physical units and coordinate systems, and for integrating over finite element meshes. 
The package supports application packages, for instance:
- Meshing;
- Meshing of biomedical images;
- Linear acoustics;
- Heat conduction;
- Linear stress analysis;
- Nonlinear stress analysis;
- Analysis of flexible beam and shell structures;
- Vibration in fluids.
News
- 06/29/2022: Reconfigured documentation.
- 06/15/2022: Added point partitioning.
- 06/15/2022: Added dual connection matrix implementation.
- 05/03/2022: Updated project to Julia 1.7.2: Julia 1.6 is not supported from version 5.4.0 on.
- 01/26/2022: Added assembler for sparse diagonal matrices (such as the mass matrix for explicit finite element methods).
- 01/25/2022: Added export of a ParaView collection of a time sequence of data.
- 12/03/2021: Added a utility to generate a random-looking triangular mesh.
- 11/17/2021: Added utility to distort a block of mesh.
- 09/21/2021: Fixed import problems for Abaqus files.
- 08/29/2021: Mesh export/import in the HDF5 format using DataDrop.
- 08/12/2021: Added quadrilateral mesh generation by extrusion of a wire.
- 08/12/2021: Added triangle mesh generation for circular segments.
- 07/14/2021: Implemented the mechanism of the "delegate of" to facilitate creation of user-defined finite elements.
- 04/08/2021: Implemented export of VTK binary files using WriteVTK.
- 02/20/2021: Implemented extrusion of triangular meshes into tetrahedra.
- 02/07/2021: Tests clean with Julia 1.6 release candidate.
- 12/07/2020: Export of meshes in the .mesh format with the labels enabled.
- 08/02/2020: Enabled permuting of nodes in the field.
- 02/29/2020: Many new tests added. Code coverage enabled.
- 01/23/2020: Dependencies have been updated to work with Julia 1.3.1.
- 01/02/2020: Matrix multiplication code improved with the help of the
LoopVectorizationpackage.
Past news
Get FinEtools
This package is registered, and hence one can do just
] add FinEtools
Only version 1.x and the nightly builds of Julia are supported. The best bet is the latest stable Julia.
Testing
] test FinEtools
Usage and Documentation
Tutorials in the form of marked-down Julia source files using the Literate workflow are available and more will be added in the near future. Each application package has some tutorials. For a complete list refer to the search.
The package has been used to build applications for various purposes. For a complete list refer to the search.
The documentation is published as Github pages.
