On 9/18/25 02:56, Tom Jackson wrote:
>
> I am a student working on a project involving fourth-order PDEs (specifically,
> Kirchhoff plate problems), where C1-continuous finite elements are
> traditionally used. I understand that deal.ii does not have built-in C1
> elements, and my project would benefit greatly from the *Hsieh-Clough-Tocher
> (HCT)* element.
>
> Therefore, I am writing to explore the feasibility of implementing the HCT
> element myself. My current understanding is that this would require creating a
> new class, `FE_HCT`, and defining its behavior in corresponding `fe_hct.h` and
> `fe_hct.cc` files, following the instructions in /The deal.II FAQ/ :
>
> /“The actual implementation would most conveniently start from the `FE_Poly`
> class. You first implement the necessary polynomial space in the base library,
> then you derive `FE_Your_FE_Name` from `FE_Poly` (using your new polynomial
> class as a template) and add the connectivity information.”/
>
> I would greatly appreciate any high-level guidance on the implementation
> process, the potential challenges of developing such a complex composite
> element, and whether it is realistically feasible for an individual developer
> to accomplish this task.
>
> Thank you for your time and for maintaining this excellent library. Insights
> you can provide on the implementation path or feasibility analysis would be
> immensely helpful.
Tom:
it is certainly feasible to write a new element. Plenty of people have done
it. That said, the key problem with these C^1 elements is that their degrees
of freedom involve derivatives, and it is difficult to implement things in a
way that allows solving problems on more than a uniformly structured grid. I
would expect someone without prior experience in writing elements to spend
several months of full-time work on this (perhaps in the range of 3-6 months,
but maybe not more than that). We would be happy to help out with questions,
of course.
That said: There are several tutorial programs that show how to solve
fourth-order problems without using "exotic" elements. What is stopping you
from using those?
Best
W.