Tetgen: начиная с заданных треугольников поверхности, создайте новую сетку без изменения связности поверхности

Я использую тетген, но у меня проблемы. Я хочу создать сетку, исходя из заданных треугольников поверхности. Я не хочу менять данные треугольники.
В частности, я работаю над доменом таким образом: есть внешний кубический ящик с внутренним отверстием (тоже ящик). У меня есть треугольники внутренней и внешней поверхностей. Я хочу построить сетку между двумя поверхностями. К сожалению, у меня ничего не получается.

Вход, который я использую, имеет такой тип:

  • количество узлов, 3, 0, 1 (нет регионов, кроме маркеров)

-списки узлов

  • количество граней, 1 (маркеры)

-списки граней

  • 1 (1 отверстие)

-координаты отверстия

  • 0 (без региона)

Список граней — это список треугольников как поверхностей, так и внутренних. Я рассмотрел самую простую сетку для этого вида домена. И я уверен, что вклад, который я даю tetgen, «правильный». Я отобразил его на matlab, и он совпадает с желаемым. Вероятно, я хочу не то, чего хочет тетген …
Тем не менее тетген находит пересекающиеся треугольники, которые не пересекаются. Они разделяют сторону, но я думаю, что грани могут разделять стороны! Или я не прав? Или, может быть, тот факт, что некоторые треугольники копланарны?
Я думаю, что что-то не так с моей точки зрения, концептуально говоря, но я не понимаю, что.

Когда я вызываю tetgen, я использую переключатель «-Y», чтобы избежать изменений на поверхности. Я пробовал оба параметра -p и -q, отдельно или вместе. Но всегда возникает одна и та же ошибка.
Может кто-нибудь помочь мне, пожалуйста?

Большое спасибо.

1

Решение

Поскольку ваша исходная геометрия очень проста, всего два вложенных куба, я считаю, что это не должно быть проблемой тетгена.
Чтобы убедиться, что вы правильно вводите данные, попробуйте сначала опцию -d tetgen.
Другой способ — использовать другие инструменты для создания ввода для tetgen, такие как Gmsh.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]