I think I solved my problem.

I used the function GridTools::delete_duplicated_vertices. According to
deal.ii documentation this function is called by some GridIn::read_*
functions, although only read_tecplot appears to be using it in line
1761 of grid_in.cc, and also, it is mentioned there that
GridTools::delete_duplicated_vertices deletes unused vertices as well
but I think that this is not mentioned in the documentation. 

So, what I did was to substitute (because is included in
delete_duplicated_vertices) the line

GridTools::delete_unused_vertices (vertices, cells, subcelldata);

of read_msh in grid_in.cc by

//empty vector to consider all vertices
std::vector< unsigned int >  considered_vertices; 
GridTools::delete_duplicated_vertices (vertices, cells, subcelldata,
considered_vertices, 1e-10);

and recompile the library.

This, apparently, eliminates the problem of Gmsh grids of duplicated
surfaces that arises when the domain is formed by two (or more I guess)
adjacent volumes.

Would it be good to include GridTools::delete_duplicated_vertices per
default in GridIn::read_mesh and perhaps others?


Regards
Javier

_______________________________________________
dealii mailing list http://poisson.dealii.org/mailman/listinfo/dealii

Reply via email to