Dear libMesh developers, I would like to propose the attached patch (against r6373) for the trunk. It reflects the fact that the term "two-dimensional sphere in three-dimensional space" is ambiguous: It could be a flat disk, or a hollow sphere. Both topologies are very relevant in practice, but only the former is implemented in libMesh. In somy of my simulations, I also need the latter.
The patch extends the MeshTools::Generation::build_sphere() function to optionally build what is called an "icosasphere" (or, more rarely, "icosphere"). That is, a regularly triangulated 2D spherical mesh, obtained by iterative refinement of a regular icosahedron. The patch fits quite nicely into the preexisting code. An icosasphere can be built by setting the new flag "flat" to false (default true) when building a 2D mesh in 3D space. At the same time, I have also made the Laplace smoothing optional for build_sphere(). It was previously hard-coded to 2, which is somewhat ugly in itself, but the actual reason why I generalized it is simply that one might want to build the exact icosasphere instead of a smoothed (shrunk) one. The API change is fully backward compatible due to the use of default arguments. Best regards, Roman
patch.diff
Description: Binary data
------------------------------------------------------------------------------ Monitor your physical, virtual and cloud infrastructure from a single web console. Get in-depth insight into apps, servers, databases, vmware, SAP, cloud infrastructure, etc. Download 30-day Free Trial. Pricing starts from $795 for 25 servers or applications! http://p.sf.net/sfu/zoho_dev2dev_nov
_______________________________________________ Libmesh-devel mailing list Libmesh-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/libmesh-devel