implementation of additional element types

Asked by Arnd Flatten

Dear All,

I would be interested in your comments on the idea to implement additional element types into fenics. What I am after next to the existing tetrahedra, is a wedge element (say an extruded tri) with some finite thickness, and/or a cohesive element (same but with zero-like geometric thickness, but some constitutive thickness).

Assume we know about the theory behind such elements,
- What would be the effort to implement such an element in the fenics framework?
- Could this development be done in python, or does it require or simply is beneficial to be established in C++?
- Where to put the code, ie., assuming an object-orientated structure of fenics, is there sth such as an user-element interface?

Thank you for any hints and comments on this,
Arnd

This is a question previously posted at this link:
https://answers.launchpad.net/fenics/+question/225167

I was wondering if anyone has used cohesive elements in Fenics and if the implementation was done?

Question information

Language:
English Edit question
Status:
Solved
For:
FEniCS Project Edit question
Assignee:
No assignee Edit question
Solved by:
Anders Logg
Solved:
Last query:
Last reply:
Revision history for this message
Best Anders Logg (logg) said :
#1

On Tue, Mar 26, 2013 at 06:41:30AM -0000, Arnd Flatten wrote:
> New question #225167 on FEniCS Project:
> https://answers.launchpad.net/fenics/+question/225167
>
> Dear All,
>
> I would be interested in your comments on the idea to implement additional element types into fenics. What I am after next to the existing tetrahedra, is a wedge element (say an extruded tri) with some finite thickness, and/or a cohesive element (same but with zero-like geometric thickness, but some constitutive thickness).
>
> Assume we know about the theory behind such elements,
> - What would be the effort to implement such an element in the fenics framework?
> - Could this development be done in python, or does it require or simply is beneficial to be established in C++?
> - Where to put the code, ie., assuming an object-orientated structure of fenics, is there sth such as an user-element interface?
>
> Thank you for any hints and comments on this,
> Arnd

Such an implementation needs to be integrated into FIAT, FFC, UFL, UFC
and DOLFIN. Take a look at the implementation part in the FEniCS book
(which can be downloaded on the web page). Contributions are welcome
but expect that you will need to familiarize yourself with the entire
toolchain.

--
Anders

Revision history for this message
Robert Kirby (robert-c-kirby) said :
#2

Two particular features to keep in mind:
1.) If the cells are not mapped by affine geometry, then cell Jacobians
will vary spatially. This will induce pervasive changes in ffc.
2.) Perhaps more subtly, an admirable goal will allow the toolchain to
utilize tensor product structure in both the geometry and
finite element spaces. It would be nice if, however other element shapes
were done, it did not compromise this ability.

--
Rob

On Tue, Mar 26, 2013 at 5:41 AM, Anders Logg <
<email address hidden>> wrote:

> Question #225167 on FEniCS Project changed:
> https://answers.launchpad.net/fenics/+question/225167
>
> Status: Open => Answered
>
> Anders Logg proposed the following answer:
> On Tue, Mar 26, 2013 at 06:41:30AM -0000, Arnd Flatten wrote:
> > New question #225167 on FEniCS Project:
> > https://answers.launchpad.net/fenics/+question/225167
> >
> > Dear All,
> >
> > I would be interested in your comments on the idea to implement
> additional element types into fenics. What I am after next to the existing
> tetrahedra, is a wedge element (say an extruded tri) with some finite
> thickness, and/or a cohesive element (same but with zero-like geometric
> thickness, but some constitutive thickness).
> >
> > Assume we know about the theory behind such elements,
> > - What would be the effort to implement such an element in the fenics
> framework?
> > - Could this development be done in python, or does it require or simply
> is beneficial to be established in C++?
> > - Where to put the code, ie., assuming an object-orientated structure of
> fenics, is there sth such as an user-element interface?
> >
> > Thank you for any hints and comments on this,
> > Arnd
>
> Such an implementation needs to be integrated into FIAT, FFC, UFL, UFC
> and DOLFIN. Take a look at the implementation part in the FEniCS book
> (which can be downloaded on the web page). Contributions are welcome
> but expect that you will need to familiarize yourself with the entire
> toolchain.
>
> --
> Anders
>
> --
> You received this question notification because you are a member of
> FEniCS Team, which is an answer contact for FEniCS Project.
>

Revision history for this message
Arnd Flatten (aflatten) said :
#3

Thanks Anders Logg, that solved my question.