gmsh-4.10 crash in t13 forceParametrizablePatches
Gmsh crashes after loading t13.geo when clicking "Create surfaces guaranteed to be parametrizable".
$ gmsh t13.geo
/usr/include/c++/11.2.0/bits/stl_vector.h:1045: std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::operator[](std::vector<_Tp, _Alloc>::size_type) [with _Tp = long unsigned int; _Alloc = std::allocator<long unsigned int>; std::vector<_Tp, _Alloc>::reference = long unsigned int&; std::vector<_Tp, _Alloc>::size_type = long unsigned int]: Assertion '__n < this->size()' failed.
Aborted (core dumped)
Stack trace
(gdb) bt
#0 0x00007ffff2c8c34c in __pthread_kill_implementation () at /usr/lib/libc.so.6
#1 0x00007ffff2c3f4b8 in raise () at /usr/lib/libc.so.6
#2 0x00007ffff2c29534 in abort () at /usr/lib/libc.so.6
#3 0x0000555555829b9a in ()
#4 0x0000555555e6deb0 in linearSystemCSRGmm<double>::systemSolve() ()
#5 0x0000555555ab0168 in computeParametrization(std::vector<MTriangle*, std::allocator<MTriangle*> > const&, std::vector<MVertex*, std::allocator<MVertex*> >&, std::vector<SPoint2, std::allocator<SPoint2> >&, std::vector<SPoint3, std::allocator<SPoint3> >&, std::vector<int, std::allocator<int> >&) ()
#6 0x0000555555a6007d in discreteFace::createGeometry() ()
#7 0x0000555555a74c1f in GModel::createGeometryOfDiscreteEntities(std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > > const&) ()
#8 0x0000555555fb49c2 in gmsh_yyparse() ()
#9 0x0000555555897786 in ParseFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool, bool) ()
#10 0x0000555555a772a2 in GModel::readGEO(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) ()
#11 0x000055555589acc8 in MergeFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool, bool, bool, int) ()
#12 0x000055555589c736 in OpenProject(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool) ()
#13 0x00005555558ca4e6 in onelabUtils::runGmshClient(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int) ()
#14 0x000055555606ddae in onelab_cb(Fl_Widget*, void*) ()
#15 0x0000555556077284 in ()
#16 0x00007ffff7e7c1c6 in Fl_Widget::do_callback(Fl_Widget*, void*) () at /usr/lib/libfltk.so.1.3
#17 0x00007ffff7e27de1 in Fl_Button::handle(int) () at /usr/lib/libfltk.so.1.3
#18 0x00007ffff7e1b6d3 in () at /usr/lib/libfltk.so.1.3
#19 0x00007ffff7e1e14e in Fl::handle_(int, Fl_Window*) () at /usr/lib/libfltk.so.1.3
#20 0x00007ffff7e8943b in fl_handle(_XEvent const&) () at /usr/lib/libfltk.so.1.3
#21 0x00007ffff7e7b946 in () at /usr/lib/libfltk.so.1.3
#22 0x00007ffff7e7bcbd in fl_wait(double) () at /usr/lib/libfltk.so.1.3
#23 0x00007ffff7e1d7f3 in Fl::wait(double) () at /usr/lib/libfltk.so.1.3
#24 0x00007ffff7e1d8ca in Fl::run() () at /usr/lib/libfltk.so.1.3
#25 0x00007ffff2c2a310 in __libc_start_call_main () at /usr/lib/libc.so.6
#26 0x00007ffff2c2a3c1 in __libc_start_main_impl () at /usr/lib/libc.so.6
#27 0x0000555555824df5 in _start ()
My intent here is to extract geometry from STL files of sand grains, and on those models, it says
Error : Invalid exterior boundary mesh for parametrization
so I wanted to try this option. This is an example STL in case you can suggest better ways to do this.