FEniCS / FEniCS/dolfinx

Restructure `FunctionSpace` and `Form` for mixed-topology meshes

Open
#3,570 7 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
1.2k
Forks
261
Avg merge
1d 15h
Merged PRs (30d)
65

Description

Currently, for mixed-topology meshes we have to create a `FunctionSpace` and `Form` for each cell type. This isn't very natural and leads to objects with almost the same data; for example, the main difference between the forms is just the kernel.

I think we should restructure this so we create a single `FunctionSpace` (with possibly multiple element types) and a single `Form` (with possibly multiple kernels).

This should hopefully simplify both the user interface and the assembler implementation, since we can just loop over all kernels in the assembler rather than having to reverse engineer the cell type from the form.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.