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

Reply via email to