On Nov 16, 2010, at 9:35 AM, Roy Stogner wrote:

> 
> On Tue, 16 Nov 2010, Cody Permann wrote:
> 
>> As promised, I have mocked up an example in libMesh to test out the
>> periodic level 1 rule patch.
> 
> Thanks!
> 
> Looking over that patch: I don't like the swath of ifdef-else macros
> required around the uses of topological neighbor.  There's no great
> solution here, since we can't be sure PeriodicBoundaries exists
> without a macro to define it, but is there any way to make it a little
> less ugly?  Maybe refactor those six calls into a single inline 
> MeshRefinement::topological_neighbor(Elem&, int), with a single ifdef
> and dispatch in there?

Good comment - done!

> 
>> I have modified ex10 adding wrap-around boundaries so you can see
>> the level 1 rule holding on those periodic boundaries as the Mesh
>> adapts.  I have been running the problem with 90 timesteps and an
>> output_frequency of 1 so I can watch the mesh very closely.  Oh, I
>> also took the liberty of changing the mesh slightly so that I could
>> write out the result with Exodus.  It's not using that
>> "Triangle/Quad" mesh anymore.
> 
> Fair enough.  One of these days we need to finally implement hybrid
> mesh output with Exodus, though.

""
But we do still eventually need to implement that "increment/decrement
subdomain ID by element type when writing/reading Exodus" hack we
talked about a while ago.  Just because there's a tolerable workaround
doesn't mean we can't do better.
""

I like this idea - I may look into this!

> 
>> Everything seems to be working just fine.  There is one more mystery
>> which I cannot figure out.  I am forced to clear the point locator
>> class manually in each adaptivity step before I use it or I end up
>> with data corruption and a seg fault in the Point Locator Tree in
>> the middle of the mesh refinement algorithm.  I'm not sure if this
>> is an indication that I'm doing something wrong or not.  Everything
>> works fine as long as I start with a clear locator each timestep.
> 

I think we'll still need a "has_topological_neighbor" function in element too.  
After we get this all hammered out, we'll have to think about optimizations.  
Using that point locator on every single boundary element all the time has got 
to be fairly expensive.

> I'll check it out.
> 
> Thanks,
> ---
> Roy


------------------------------------------------------------------------------
Beautiful is writing same markup. Internet Explorer 9 supports
standards for HTML5, CSS3, SVG 1.1,  ECMAScript5, and DOM L2 & L3.
Spend less time writing and  rewriting code and more time creating great
experiences on the web. Be a part of the beta today
http://p.sf.net/sfu/msIE9-sfdev2dev
_______________________________________________
Libmesh-devel mailing list
Libmesh-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libmesh-devel

Reply via email to