Skip to content

jxx2/MetaFEM.jl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

82 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MetaFEM

A GPU-accelerated generic FEM solver by meta-expressions

Current Status

The package is usable as a single GPU-accelerated generic FEM solver. No active developement. The package is under AGPLv3.

Documentation

Overview

MetaFEM is initially a research project in the Advanced Manufacturing Processes Laboratory of Northwestern University, attempting to provide fast, highly customizable evaluations for practical manufacturing processes.

Function-wise, MetaFEM is similar to a skeleton version of FEniCS or FreeFEM, i.e., MetaFEM takes in some high-level mathematical expressions (PDE weak-forms) and a mesh, e.g., thermal conduction in a pikachu, then outputs the corresponding simulation, e.g., to VTK files, resulting in something similar to the logo through common softwares like Paraview. Different from the classical approaches, however, MetaFEM uses only the most fundamental concepts, i.e., tensor components added, multiplied or algebraically operated in the variational form(s). There is no RHS/LHS, no Dirichlet boundary, etc., but only the variational residue in the component form, and the script (describing physics) looks just like the mathematical expressions on a mechanics class.

Quick examples can be found in documents and sources, where "*.jl" files are the main scripts.

Related works (in Julia)

  • Gridap.jl, is a more classical approach on the generic FEM solver, similar to (a Julia version of) FEniCS/FreeFEM.
  • Ferrite.jl, is a mesh system/finite element toolbox.
  • JuliaFEM.jl, is a solid mechanics solver.