From: John P. <jwp...@gm...> - 2011-08-23 17:31:14
|
Hi Rochan, > n_dofs()=0 > n_local_dofs()=0 > n_constrained_dofs()=0 > n_vectors()=1 > > The mesh is read correctly. However, it does not display the number of > degrees of freedom. I would surmise that given the mesh (a structured > mesh with quadrilaterals) and the approximation order it ought to be > able to tell the number of degrees of freedom. This issue popped up a couple days ago in the context of the TetGen reader. You have to call mesh.prepare_for_use() after reading in the mesh so that it is properly partitioned; this should fix the n_dofs() problem > In hte code, I only replaced the libMesh mesh generation in example 3 > with the line > GmshIO(mesh).read("gmsh_ex3.msh"); > > Further the above errors are with first order approximation. If I use > second order: > > equation_systems.get_system("Poisson").add_variable("u", SECOND); > > Then I receive the following error message: > > [0] src/fe/fe_lagrange.C, line 632, compiled Mar 2 2011 at 09:35:54 > terminate called after throwing an instance of 'libMesh::LogicError' > what(): Error in libMesh internal logic Are these QUAD4's from GMSH? You won't be able to use second-order elements on QUAD4's, you can convert them to QUAD9's with a call to mesh.all_second_order(). -- John |