From: Paul T. B. <ptb...@gm...> - 2014-02-21 16:20:55
|
Others may also be interested in this, but I have a keen interest. I'd be happy to look at the patch, but, even better, would be for you to open a pull request on GitHub (https://github.com/libMesh/libmesh) so that, if we decide to integrate the patch, we have a commit history of your development since it sounds like it's not a small patch. Best, Paul On Fri, Feb 21, 2014 at 8:53 AM, Roman Vetter <vet...@et...> wrote: > Dear libMesh devs, > > the roots of the finite element method lie in structural analysis and > the need to solve elasticity problems. Thin shells with a stretching and > a bending rigidity are an extremely important special case. The bending > term requires C1 finite elements which have been hard to construct for > arbitrary surface topologies until the subdivision surface paradigm > found its way to the FEM a few years ago (Int. J. Numer. Meth. Engng. > 47, 2039-2072 (2000), more than 300 citations!). Ever since, subdivision > surfaces are the way to go in thin shell finite element analysis, as they > > 1) require only the three nodal displacement dofs, no rotational or > other auxiliary dofs, > 2) require only one Gauss point per element (very efficient), although > more still work of course, > 3) greatly simplify the implementation of thin shells with arbitrary > topology. > > Still, they have not made it into most finite element packages, perhaps > because they somewhat deviate from conventional FE principles: > > a) the shape functions don't interpolate the mesh nodes, instead they > approximate them, > b) the solution on an element is determined not only by the nodal > solutions of its nodes, but also of nodal solutions at the neighboring > nodes > c) the number of shape functions per element depends on the mesh > connectivity, > d) the conventional h-refinement and p-refinement techniques can't be > applied > e) they require special treatment of boundaries and constraints. > > I have prepared a patch that adds the most popular, versatile and > widely-used type of subdivision surface elements to libMesh: Loop > subdivision surface elements. Everything is readily Doxygen-commented > like all of libMesh. I've also prepared a new example > (miscellaneous_ex11) showing how to use the new element on a loaded thin > elastic plate. > > This is a joint effort initiated by Norbert Stoop in 2008. The related > discussions can be looked up at: > http://sourceforge.net/mailarchive/message.php?msg_id=20778890 > http://sourceforge.net/mailarchive/message.php?msg_id=20808509 > > Why didn't I attach the patch already? I'd first like to know if you're > interested at all. Why wouldn't you, you're asking? Bear in mind the > unconventional nature of subdivision surface finite elements. (b) > requires a more general treatment of the number of shape functions in > DofMap, as it is no longer constant. (c) requires a new integer stored > in each Node instance, holding the node valence. (d) means some of the > nice features of libMesh like AMR won't work with the new element. (e) > means that libMesh's built-in boundary and constraint handling won't > work with the new element. Furthermore the new element supports only 2D > triangular meshes in 3D space, so it is a far cry from being as general > as other elements implemented in libMesh. > > Why would you be interested despite all this? First of all, subdivision > surfaces seem to be the future of two-dimensional C1 elements. They > would give libMesh an advantage over other FEM packages. Moreover, > recent advances in finite element research suggest that more new > elements of this general kind (isogeometric analysis) are on the way. > Some of them similarly generalize the way we traditionally think about > element shape functions and even work with less than one quadrature > point per element [sic!]. > > This extension of libMesh adds five new source code files and modifies > 22 more (mostly small additions like enums etc.). I've tried to keep the > patch minimal. It has been in successful operation for a few years now > at our labs, and I think it's about time it's committed to the official > libMesh repository. It would make a great added value to libMesh for all > those who use it for thin shell analysis (and I know that there are a > few of them around). I'm happy to send you the patch and further > explanations on it if you're willing to give it a closer look. > > Best regards, > Roman > > > ------------------------------------------------------------------------------ > Managing the Performance of Cloud-Based Applications > Take advantage of what the Cloud has to offer - Avoid Common Pitfalls. > Read the Whitepaper. > > http://pubads.g.doubleclick.net/gampad/clk?id=121054471&iu=/4140/ostg.clktrk > _______________________________________________ > Libmesh-devel mailing list > Lib...@li... > https://lists.sourceforge.net/lists/listinfo/libmesh-devel > |