I'm reposting, since I accidentally only sent this to Wolfgang on the first try:

On Wed, May 12, 2010 at 6:00 AM, Wolfgang Bangerth
<[email protected]> wrote:
>
>> I'll have to compile deal.II with debug symbols to give more
>> information. I'll also try to reproduce the problem with a small
>> example program -- I'll do both tomorrow.
>
> Go do that. In general, while you develop new code, running in debug mode is
> what you should always do.

All right, here we go: When running in debug mode, updating hanging
nodes doesn't blow up, but exits with an exception telling me that I'm
not using isotropic refinement. I've made a small test case that
provokes this behaviour. The following happens:

 - When I generate the mesh from scratch using
GridGenerator::hyper_rectangle, nothing bad happens.
 - When I load a mesh from a GMSH file, but only do isotropic
refinement, everything is also fine.
 - When I load a mesh from file and do anisotropic refinement, I get:

--------------------------------------------------------
An error occurred in line <2244> of file
</store/build/deal.II-svn/deal.II/source/dofs/dof_tools.cc> in
function
   void dealii::internal::DoFTools::make_hp_hanging_node_constraints(const
DH&, dealii::ConstraintMatrix&) [with DH = dealii::DoFHandler<3, 3>]
The violated condition was:
   
cell->face(face)->refinement_case()==RefinementCase<dim-1>::isotropic_refinement
The name and call sequence of the exception was:
   ExcNotImplemented()
Additional Information:
(none)

Stacktrace:
-----------
#0  /store/build/deal.II-svn/lib/libdeal_II_3d.g.so.6.3.pre
[0x1925ef2]: /store/build/deal.II-svn/lib/libdeal_II_3d.g.so.6.3.pre
[0x1925ef2]
#1  ./aspect_test [0x804e7e3]: ./aspect_test [0x804e7e3]
#2  ./aspect_test [0x804da0e]: ./aspect_test [0x804da0e]
#3  /lib/tls/i686/cmov/libc.so.6: __libc_start_main
#4  ./aspect_test [0x804d781]: ./aspect_test [0x804d781]
--------------------------------------------------------

The comment immediately preceding the exception in dof_tools.cc states
that, for all faces with children, there must either be no dofs on the
face, or the face must not be anisotropically refined. Why is this
necessary? And can you see any way around this problem?

I also can't easily see why this works with GridTools-generated meshes
(or perhaps it only worked in this particular case) but not with the
GMSH mesh.

I've placed the source code for the small example (aspect_test.cc) as
well as the input mesh and outputs at:

 http://diku.dk/~avery/aspect/aspect_test.tar.gz

Compiling aspect_test.cc with -DLOAD_MESH=1 shows the problem, and
without it shows it working.

Any ideas?

Thanks a bunch for the help!


--
Med venlig hilsen,
 James Avery <[email protected]>



-- 
Med venlig hilsen,
  James Avery <[email protected]>
_______________________________________________
dealii mailing list http://poisson.dealii.org/mailman/listinfo/dealii

Reply via email to