I'm jumping into this very late; a couple comments: On Mon, 4 Oct 2010, Vijay S. Mahadevan wrote:
>> For higher-order elements the embedding matrices will be enormous, not >> sure we want to mess with these if we don't have to... > Are you saying that higher order elements dont need the embedding > matrix defined ? Or am I understanding you wrongly. I think John was saying that higher order elements wouldn't need the embedding matrix defined if they were limited to lower order geometry. > I am going to try to write a matlab script that will evaluate the > basis functions at a given point and that should hopefully minimize > all the work for creating these matrices. As long as I specify the > right coordinates in the reference element, the embedding matrix > should be easy to evaluate. Do you think there is an easier way ? I think this is probably the way to go. > I found another quirk in the EDGE* codes. There is an assert in > connectivity() routine as follows: > > libmesh_assert (sc < this->n_sub_elem()); > > where sc is the number of linear cells. This is fine till quadratic > elements (EDGE3) since sc < 2 but for EDGE4, and higher order > elements, this is not true anymore. Should this assert still exist or > was there an ulterior motive to placing this in the code ? Since VTK > does not support visualizing higher order elements, splitting the > elements to many linear elements and writing out the solution at the > vertices would require that this condition not be met. Comments ? Based on some conversations at a TACC viz workshop I gather that there aren't *any* generic visualization codes out there that properly handle higher order elements. Sad if true. Until that changes though, splitting into linear subelements is the way to go. > An alternative is that there are more n_sub_elem() (more than 2) for > higher order elements. Is this an option? Definitely; this is the right way to do it. But it's not a trivial option, unfortunately. IIRC we currently do subdivision on an adhoc, format-by-format basis in the output codes. What we really ought to have is an Elem method that creates a vector<Elem> with its own subdivision done, then write those subelements to file in the *IO classes. --- 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/beautyoftheweb _______________________________________________ Libmesh-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/libmesh-devel
