Do the nodes on the periodic boundaries match up with the tet4 mesh? If not, that will cause an error. I recall a thread where this issue was discussed.
On 06/12/2013 03:27 PM, Ataollah Mesgarnejad wrote: > Dear all, > > I'm trying to set periodic BCs on a very simple 1x1x1 cube. When the cube is > meshed with HEX8 everything goes smoothly but as soon as I switch to TET4 > elements I get a series of errors like: > > 0] ../../src/fe/fe_map.C, line 1188, compiled Jun 12 2013 at 13:28:03 > WARNING: inverse_map of physical point (x,y,z)=( -0.5, 0.5, > -0.5)is not on element. > Elem Information > id()=invalid, processor_id()=0 > type()=TRI3 > dim()=2 > n_nodes()=3 > 0 Node id()=15, processor_id()=0, Point=(x,y,z)=( -0.5, 0, > 0) > DoFs=(0/0/45) (0/1/46) (0/2/47) > 1 Node id()=21, processor_id()=0, Point=(x,y,z)=( -0.5, 0.5, > 0) > DoFs=(0/0/63) (0/1/64) (0/2/65) > 2 Node id()=22, processor_id()=0, Point=(x,y,z)=( -0.5, 0, > -0.5) > DoFs=(0/0/66) (0/1/67) (0/2/68) > n_sides()=0 > hmin()=0.5, hmax()=0.707107 > volume()=0.125 > active()=1, ancestor()=0, subactive()=0, has_children()=0 > parent()=60 > level()=0, p_level()=0 > refinement_flag()=DO_NOTHING > p_refinement_flag()=DO_NOTHING > infinite()=0 > DoFs= > [0] ../../src/fe/fe_map.C, line 1188, compiled Jun 12 2013 at 13:28:03 > WARNING: inverse_map of physical point (x,y,z)=( -0.5, 0.5, > -0.5)is not on element. > Elem Information > id()=invalid, processor_id()=0 > type()=TRI3 > dim()=2 > n_nodes()=3 > 0 Node id()=15, processor_id()=0, Point=(x,y,z)=( -0.5, 0, > 0) > DoFs=(0/0/45) (0/1/46) (0/2/47) > 1 Node id()=21, processor_id()=0, Point=(x,y,z)=( -0.5, 0.5, > 0) > DoFs=(0/0/63) (0/1/64) (0/2/65) > 2 Node id()=22, processor_id()=0, Point=(x,y,z)=( -0.5, 0, > -0.5) > DoFs=(0/0/66) (0/1/67) (0/2/68) > n_sides()=0 > hmin()=0.5, hmax()=0.707107 > volume()=0.125 > active()=1, ancestor()=0, subactive()=0, has_children()=0 > parent()=60 > level()=0, p_level()=0 > refinement_flag()=DO_NOTHING > p_refinement_flag()=DO_NOTHING > infinite()=0 > DoFs= > . > . > . > . > > [0] ../../src/fe/fe_map.C, line 1188, compiled Jun 12 2013 at 13:28:03 > WARNING: inverse_map of physical point (x,y,z)=( -0.5, -0.333195, > -0.0775255)is not on element. > Elem Information > id()=62, processor_id()=0 > type()=TET4 > dim()=3 > n_nodes()=4 > 0 Node id()=11, processor_id()=0, Point=(x,y,z)=(-0.177083, -0.152645, > -0.177083) > DoFs=(0/0/33) (0/1/34) (0/2/35) > 1 Node id()=22, processor_id()=0, Point=(x,y,z)=( -0.5, 0, > -0.5) > DoFs=(0/0/66) (0/1/67) (0/2/68) > 2 Node id()=32, processor_id()=0, Point=(x,y,z)=( -0.5, -0.5, > -0.5) > DoFs=(0/0/96) (0/1/97) (0/2/98) > 3 Node id()=15, processor_id()=0, Point=(x,y,z)=( -0.5, 0, > 0) > DoFs=(0/0/45) (0/1/46) (0/2/47) > n_sides()=4 > neighbor(0)=65 > neighbor(1)=48 > neighbor(2)=NULL > neighbor(3)=69 > hmin()=0.398665, hmax()=0.707107 > volume()=0.0134549 > active()=1, ancestor()=0, subactive()=0, has_children()=0 > parent()=NULL > level()=0, p_level()=0 > refinement_flag()=DO_NOTHING > p_refinement_flag()=DO_NOTHING > infinite()=0 > DoFs= > [0] ../../src/fe/fe_map.C, line 1188, compiled Jun 12 2013 at 13:28:03 > WARNING: inverse_map of physical point (x,y,z)=( -0.5, -0.0892794, > -0.0775255)is not on element. > Elem Information > id()=62, processor_id()=0 > type()=TET4 > dim()=3 > n_nodes()=4 > 0 Node id()=11, processor_id()=0, Point=(x,y,z)=(-0.177083, -0.152645, > -0.177083) > DoFs=(0/0/33) (0/1/34) (0/2/35) > 1 Node id()=22, processor_id()=0, Point=(x,y,z)=( -0.5, 0, > -0.5) > DoFs=(0/0/66) (0/1/67) (0/2/68) > 2 Node id()=32, processor_id()=0, Point=(x,y,z)=( -0.5, -0.5, > -0.5) > DoFs=(0/0/96) (0/1/97) (0/2/98) > 3 Node id()=15, processor_id()=0, Point=(x,y,z)=( -0.5, 0, > 0) > DoFs=(0/0/45) (0/1/46) (0/2/47) > n_sides()=4 > neighbor(0)=65 > neighbor(1)=48 > neighbor(2)=NULL > neighbor(3)=69 > hmin()=0.398665, hmax()=0.707107 > volume()=0.0134549 > active()=1, ancestor()=0, subactive()=0, has_children()=0 > parent()=NULL > level()=0, p_level()=0 > refinement_flag()=DO_NOTHING > p_refinement_flag()=DO_NOTHING > infinite()=0 > DoFs= > Assertion `this->contains_point(p)' failed. > Stack frames: 18 > 0: 0 libmesh_dbg.0.dylib 0x00000001014ec1ec > libMesh::print_trace(std::ostream&) + 44 > 1: 1 libmesh_dbg.0.dylib 0x0000000101c69044 > libMesh::Elem::find_point_neighbors(libMesh::Point const&, > std::set<libMesh::Elem const*, std::less<libMesh::Elem const*>, > std::allocator<libMesh::Elem const*> >&) const + 198 > 2: 2 libmesh_dbg.0.dylib 0x00000001016def4d (anonymous > namespace)::primary_boundary_point_neighbor(libMesh::Elem const*, > libMesh::Point const&, libMesh::BoundaryInfo const&, std::set<short, > std::less<short>, std::allocator<short> > const&) + 93 > 3: 3 libmesh_dbg.0.dylib 0x00000001016ff9f4 > libMesh::FEGenericBase<double>::compute_periodic_constraints(libMesh::DofConstraints&, > libMesh::DofMap&, libMesh::PeriodicBoundaries const&, libMesh::MeshBase > const&, libMesh::PointLocatorBase const*, unsigned int, libMesh::Elem const*) > + 13204 > 4: 4 libmesh_dbg.0.dylib 0x00000001017fd0fa > libMesh::FEInterface::compute_periodic_constraints(libMesh::DofConstraints&, > libMesh::DofMap&, libMesh::PeriodicBoundaries const&, libMesh::MeshBase > const&, libMesh::PointLocatorBase const*, unsigned int, libMesh::Elem const*) > + 120 > 5: 5 libmesh_dbg.0.dylib 0x00000001014870b1 (anonymous > namespace)::ComputeConstraints::operator()(libMesh::StoredRange<libMesh::MeshBase::const_element_iterator, > libMesh::Elem const*> const&) const + 591 > 6: 6 libmesh_dbg.0.dylib 0x000000010148722c void > libMesh::Threads::parallel_for<libMesh::StoredRange<libMesh::MeshBase::const_element_iterator, > libMesh::Elem const*>, (anonymous > namespace)::ComputeConstraints>(libMesh::StoredRange<libMesh::MeshBase::const_element_iterator, > libMesh::Elem const*> const&, (anonymous namespace)::ComputeConstraints > const&) + 60 > 7: 7 libmesh_dbg.0.dylib 0x0000000101498857 > libMesh::DofMap::create_dof_constraints(libMesh::MeshBase const&, double) + > 6261 > 8: 8 libmesh_dbg.0.dylib 0x0000000102431f08 > libMesh::System::init_data() + 268 > 9: 9 libmesh_dbg.0.dylib 0x00000001023c903c > libMesh::ExplicitSystem::init_data() + 36 > 10: 10 libmesh_dbg.0.dylib 0x000000010240d45c > libMesh::ImplicitSystem::init_data() + 24 > 11: 11 libmesh_dbg.0.dylib 0x0000000102413020 > libMesh::LinearImplicitSystem::init_data() + 24 > 12: 12 libmesh_dbg.0.dylib 0x00000001024cb15f > libMesh::TransientSystem<libMesh::LinearImplicitSystem>::init_data() + 25 > 13: 13 libmesh_dbg.0.dylib 0x0000000102440c15 > libMesh::System::init() + 63 > 14: 14 libmesh_dbg.0.dylib 0x00000001023aad56 > libMesh::EquationSystems::init() + 1578 > 15: 15 vfmfe-3d-dbg 0x000000010003f4eb > InitSystems(libMesh::EquationSystems&, InputCtx&) + 8235 > 16: 16 vfmfe-3d-dbg 0x0000000100054422 main + 3314 > 17: 17 vfmfe-3d-dbg 0x0000000100001aa4 start + 52 > [0] ../../src/geom/elem.C, line 545, compiled Jun 12 2013 at 13:29:13 > terminate called after throwing an instance of 'libMesh::LogicError' > what(): Error in libMesh internal logic > > Also, I couldn't reproduce the same problem with a 2D mesh. > You can find the mesh and full output here: > https://dl.dropboxusercontent.com/u/19391830/periodic_bug.zip > > As always thanks for the help, > Ata > > > ------------------------------------------------------------------------------ > This SF.net email is sponsored by Windows: > > Build for Windows Store. > > http://p.sf.net/sfu/windows-dev2dev > _______________________________________________ > Libmesh-users mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/libmesh-users ------------------------------------------------------------------------------ This SF.net email is sponsored by Windows: Build for Windows Store. http://p.sf.net/sfu/windows-dev2dev _______________________________________________ Libmesh-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/libmesh-users
