This is a bit old question, and I would like to pose it again. The first
post is here
I am using PolarManifold and a 90 deg rotated PolarManifold to cover the
surface of sphere.
As I posted in this thread, some cells at the corner have bad shape. I
think this is related to the fact that the cell has one manifold but its
edge has a different manifold.
I could get better cell shapes by attaching the rotated PolarManifold to
top/bottom faces and its edges and PolarManifold for all other entities.
The code looks like this
Point<spacedim> center(0.0, 0.0, 0.0);
GridGenerator::hyper_sphere(triangulation, center, Radius);
static const PolarManifold<2,3> sphere;
static const FunctionManifold<3,3,3> rotate("x;-z;y","x;z;-y");
static const CompositionManifold<2,3,3,3,2,3> rotated_sphere(sphere,
triangulation.set_manifold (0, sphere);
triangulation.set_manifold (1, rotated_sphere);
for (typename Triangulation<dim,spacedim>::active_cell_iterator
const Point<spacedim> p = cell->center();
if(std::fabs(p) > 0.5 * Radius) // north and south faces
cell->set_all_manifold_ids(1); // cell and edges
std::cout << "Setting RotatedPolarManifold\n";
cell->set_manifold_id(0); // set cell only
std::cout << "Setting PolarManifold\n";
I get better cell shapes but the grid lines dont seem to be smooth on the
side faces. See attached figure. Note that the cells on these side faces
have different manifold compared to some of their edges. Whereas on
top/bottom faces, the cells and edges have the same manifold.
Is this an inherent limitation of trying to use two different manifolds ?
The deal.II project is located at http://www.dealii.org/
For mailing list/forum options, see
You received this message because you are subscribed to the Google Groups
"deal.II User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email
For more options, visit https://groups.google.com/d/optout.