Hi Roy,

Things worked fine here.
I have a GUI interface to the elements on the mesh.
I want to plot the solutions into each degree of freedom (a color scale or
Is there an example that shows the best way to extract the solution from
the EquationSystem and the global dof id of each vertex of each element?


On Wed, Aug 9, 2017 at 8:47 AM, Renato Poli <rebp...@gmail.com> wrote:

> Hi Roy,
> Yes, I meant introduction_ex3 - sorry for that.
> I will move forward with your advices.
> Thanks for the answer.
> Renato
> On Tue, Aug 8, 2017 at 11:10 AM, Roy Stogner <royst...@ices.utexas.edu>
> wrote:
>> On Mon, 7 Aug 2017, Renato Poli wrote:
>> I am getting started in libmesh - I've been using it for a month now.
>>> I used libmesh introductory example 3 (libmesh_ex3) as a reference for my
>>> problem.
>> I assume you mean introduction_ex3?
>> The idea is to replace the mesh by one of my one and start from there.
>>> I noticed that libmesh_ex3 uses TRI6 or QUAD elements.
>>> In my application I was using TRI3 and it did not work.
>>> I realized that the example does not work with TRI3 either.
>> I assume you're using higher than first order elements in your
>> application, like we do in the example?
>> Is there a reason for that? Should I use TRI6 instead?
>> Yes, and yes.
>> libMesh stores degree of freedom (DoF) indices on element nodes and
>> element interiors, and it requires those indices to be properly
>> located topologically.  Shape functions whose support is on the patch
>> of elements surrounding a node need to have corresponding DoF indices
>> located on that node, shape functions which live on only one element
>> need to have indices located on that element or on a node internal to
>> that element...
>> And most critically in your case:, shape functions whose support is on
>> the two triangles sharing an edge need to have indices located on that
>> edge.  Since libMesh doesn't *have* edge objects, we use edge nodes to
>> store such indices.  If you have a TRI3, then you don't have any edge
>> nodes, and so you can't use any finite element types which have edge
>> dofs.  That means you're restricted to combinations of discontinuous
>> finite elements (XYZ and MONOMIAL, which live within a single element)
>> and first-order finite elements (which have only vertex dofs).
>> Any advice?
>> In 2D, if you want to use 2nd order through 11th order basis
>> functions, then use 2nd order geometric elements and you're fine.
>> (roundoff error blows up at higher polynomial degrees, so we currently
>> cap p refinement at 11).  Likewise for 3D on hexes.
>> If you want to use 3rd order or higher bases on a mesh with tets,
>> prisms, and/or pyramids, then my advice is to warn us *way* in
>> advance.  We don't currently have any elements whose triangular faces
>> have face nodes, so all our elements with triangular faces support a
>> max of p=2.  Fixing that has been on my todo list for a decade, but
>> probably won't get *off* my todo list for years to come unless there's
>> a user chomping at the bit for it.
>> ---
>> Roy
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
Libmesh-users mailing list

Reply via email to