On Thu, Jul 17, 2008 at 03:36:18PM +0100, Nuno David Lopes wrote: > 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.
I don't have time to come up with a better algorithm right now, but adding an argument that allows a variable number of smoothings is a good suggestion. I'll add it. -- Anders
signature.asc
Description: Digital signature
_______________________________________________ DOLFIN-dev mailing list [email protected] http://www.fenics.org/mailman/listinfo/dolfin-dev
