Skip to content

Cthonios/FiniteElementContainers.jl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FiniteElementContainers

Stable Dev Build Status ROCm Coverage

This package is meant to serve as a light weight and allocation free set of containers for carrying out finite element or finite element-like calculations.

This package is meant to serve as a the minimal tools necessary to build new finite element method based applications for researchers working in challenging domains with e.g. large deformation, path dependence, contact, etc. All runtime intensive containers are written with the unique julia GPU infrastructure in mind. KernelAbstractions.jl is used in the few places where we have written custom kernels in tandem with Atomix.jl to eliminate race conditions in assembly operations.

The goal is to be platform independent, provide CPU/GPU implementations, and leverage ReferenceFiniteElements.jl for easy implementation of new element types/formulations with out too much needed shim code.

A semi-agnostic yet exodusII centric mesh interface is used. No single mesh format is directly supported within the main package module. Instead, package extensions are used for different mesh formats. Currently only exodusII files are supported for IO through Exodus.jl.

The long term goals are to enable mixed finite element space multiphysics problems but currently only H1 spaces are fully supported. Stay tuned for more details here.