dolfin team mailing list archive
-
dolfin team
-
Mailing list archive
-
Message #08724
Re: Built-in meshes. UnitSphere
On Wednesday 16 July 2008, Anders Logg wrote:
> On Wed, Jul 16, 2008 at 12:24:56AM +0200, Anders Logg wrote:
> > > By the way about the smooth( ) function,
> >
> > I don't know if there's an easy fix.
>
> This should be fixed now.
When testing the Cylinder i've found that the new smooth function does a less
effective job, (i guess), please take a look at the pictures in:
http://ptmat.ptmat.fc.ul.pt/~ndl/other/dolfin.dir/zct/png.tgz
I've used the following code (for the circle images):
//---------------------------------------------------
UnitCircle mesh(40,UnitCircle::left,UnitCircle::rotsumn);
for (int i = 0; i < 5; i++)
mesh.smooth();
File fmesh("circle.pvd");
fmesh<<mesh;
(with "UnitCircle mesh(40)" is a little less obvious)
//-----------------------------------------------------------------
Another problem, and probably a more complicated one to solve:
For the 3D case like the cylinder, where the mesh is done by the circle
transformation (in y,z for instance and maintaining x),
if we don't let the boundary points to be smoothed then, at least near the
(y,z) boundary circle , the cells will be very bad.
So i'm really not so certain that this is a good approach.
Another little thing that smooth function could have is an argument for the
number of passes:
mesh.smooth( number ) instead of the repeated calling of smooth.
--
Nuno David Lopes
e-mail:ndl@xxxxxxxxxxxxxx (FCUL/CMAF)
nlopes@xxxxxxxxxxxxxxx (ISEL)
http://ptmat.ptmat.fc.ul.pt/%7Endl/
Thu Jul 17 13:16:24 WEST 2008
Follow ups
References