32. Сетка модели

Перейти к заданию параметров трехмерной сетки можно одним из способов:

  1. выбрать пункт Сетка в навигаторе;

    _images/navigator_grid.png

    Рисунок 32.1 - Навигатор

  2. выбрать Сетка на панели вкладок.

    _images/grid.png

    Рисунок 32.2 - Панель вкладок

Рабочее окно отображения трехмерной сетки состоит из:

  • дерева объектов визуализации, которое имеет связь с трехмерной сценой (включение/отключение объектов) и управлением свойствами объектов, которые оказывают влияние на получаемую сетку;
  • дерева настроек визуализации;
  • области отображения («Журнал», «Сетка 3D», «Слои»);
  • команд ленты для управления глобальными;
  • панели инструментов по управлению трехмерной сценой.

Важно

Вкладка «Сетка» на данный момент реализована с опцией зачистки при заходе на нее. Это было сделано для того, чтобы исключить отображение неактуальных сеток.

32.1. Алгоритм построения трехмерной сетки

После того как концептуальная модель попадает в расчетную программу, она превращается в сеточную модель. Трехмерная сетка, в дальнейшем используемая для моделирования, строится так, как показано на (Рис. 32.1.1).

_images/mesh_building.png

Рисунок 32.1.1 - Процесс построения сеточной модели

Алгоритм построения сетки:

  1. Сначала в плане (плоскость XY) строится двумерная плоская сетка.
  2. Затем эта сетка отображается на кровлю модели и становится поверхностной.
  3. Из каждой грани поверхностной сетки строится колонна.
  4. Колонна дискретизуется - происходит ее разбиение на ячейки (призмы или тетраэдры).
  5. После построения и дискретизации всех колонн происходит их сшивка.
  6. В конце построения сетки происходит сшивка сеток модельных слоев, построенных по описанному выше алгоритму.

32.2. Тип трехмерной сетки

В ленте вкладки Сетка, в блоке "Тип сетки" (Рис. 32.2.1) задаются параметры, которые используются при построении поверхностной сетки и объемной.

_images/variant_grid_type_params.png

Рисунок 32.2.1 - Задание типа трехмерной сетки

При генерации трехмерной сетки важную роль играет сетка на кровле модели, ведь именно от нее в направлении подошвы производится построение ячеек сетки.

В таблице примеры сетки кровли c разными типами ячеек:

треугольники четырехугольники
mesh_prim_t mesh_prim_q
первичная первичная
mesh_dual_t mesh_dual_q
двойственная двойственная

Всего доступно три варианта построения трехмерной сетки:

32.2.1. Первичная призматическая сетка

lenta_prim

Данная опция отвечает за построение «первичной» сетки: треугольной или преимущественно четырехугольной (на поверхности) и трехмерной сетки из призм, тетраэдров или гексаэдров.

Таблица 32.2.1.1 - ячейки и фрагменты трехмерных сеток
Ячейка сетки Фрагмент сетки
mesh3d_prizm mesh3d_prim1
mesh3d_hex mesh3d_prim2

.

32.2.2. Призматическая сетка с многоугольными призмами

lenta_dual

Данная опция отвечает за построение «двойственной» сетки (на поверхности).

Двойственная сетка строится на основании первичной. Ячейками двойственной сетки являются медианные полигоны - многоугольники, полученные соединением центров ячеек первичной сетки.

_images/mesh_2d_dual.png

Рисунок 32.2.2.1 - Построение ячейки двойственной сетки в поверхностной сетке

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

Ячейка сетки Фрагмент сетки
mesh3d_polyprizm mesh_page_dual2d3d_1

32.2.3. Двойственная многогранная сетка

lenta_dual3d

Данная опция отвечает за построение «двойственной сетки» (на поверхности и в объеме).

Такая полностью двойственная сетка строится на основании первичной треугольной сетки на поверхности и тетраэдрных сеток в слоях. Ячейками двойственной сетки являются медианные объемы - многогранники, полученные соединением центров тетраэдров трехмерной сетки.

Ячейка сетки Фрагмент сетки
mesh3d_polyhedron mesh_page_dual3d_1

Важно

расчеты на данном виде сеток находятся в стадии разработки. Адекватные результаты получаются при вертикальной анизотропии сетки не превыщающей 5 ( то есть ячейки сплюснуты в пять раз по оси OZ)

32.3. Дробление сетки на рельефе

Как уже было сказано ранее при генерации трехмерной сетки важную роль играет сетка на кровле модели. На поверхностную сетку оказывает влияние множество различных факторов, один из которых наличие в области моделирования сеточных зон с заданным параметром дробления. В ленте вкладки Сетка, в блоке "Тип дробления в заданных зонах" (Рис. 32.3.1) задаются параметры, которые отвечают за способ дробления ячеек во всех сеточных зонах с дробления на поверхностной сетке.

_images/variant_grid_sub_params.png

Рисунок 32.3.1 - Задание типа дробления поверхностной сетки модели

Для выбора шаблона как дробить ячейку поверхностной сетки используются две опции:

  • lenta_sub21

    При выборе данной опции ячейки поверхностной сетки при таком виде дробления дробятся в соотношении 2:1

  • lenta_sub31

    При выборе данной опции ячейки поверхностной сетки при таком виде дробления дробятся в соотношении 3:1

В таблице приведены примеры дробления 2:1 и 3:1 в зоне для первичных сеток с разными типами ячеек:

треугольники четырехугольники
mesh_s1_t mesh_s1_q
2:1 2:1
mesh_s2_t mesh_s2_q
3:1 3:1

Примечание

Выбор использования первичной или двойственной сетки влияет на описание формы ореола загрязнения ( из-за большего числа граней в ячейке уменьшается эффект ориентации сетки) и число ячеек (например в треугольной сетке 10000 ячеек, в двойственной ~5000 ячеек ).

Дробление можно использовать для более качественного и количественного описания загрязнения, когда примерно известно его распространение. Выбор дробления 2:1 или 3:1 влияет на число ячеек после дробления (в 4 раза и в 9 раз соответственно) и соответственно на детализацию решения в избранных зонах.

32.4. Выклинивание

Если в модели есть слои с особенностями (когда кровельная поверхность по оси Z оказывается ниже подошвенной или наоборот), то необходимо использовать дополнительные опции секции «Выклинивание» в ленте вкладки Сетка:

32.4.1. Учитывать выклинивание при отсечении поверхностей

Установка галочки «Учитывать выклинивание» позволяет исключить перехлесты поверхностей (Рис. 32.4.1.1) и избежать некорректное построение модельных слоев и всей сетки (Рис. 32.4.1.2).

_images/perekhlesty_poverkhnostey.png

Рисунок 32.4.1.1 - Схема расположения поверхностей с перехлестами и их порядковые номера

_images/model_s_perekhlestami.png

Рисунок 32.4.1.2 - Некорректная сеточная модель (перехлест слоев)

32.4.2. Тип отсечения поверхностей

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

Поле Тип отсечения поверхностей содержит следующие опции:

  • «Нижняя отсекает верхнюю» – отсечение поверхностей идет снизу вверх от поверхности с максимальным номером (подошва модели) к минимальному. Рельефная поверхность (поверхность [0] (Рис. 32.4.1.1) ) остается без изменений. Каждая следующая поверхность должна быть выше предыдущей и не превышать кровельную поверхность.

    Такой алгоритм отсечения поверхностей на примере набора поверхностей (Рис. 32.4.1.1) выглядит так:

    • Строится поверхность [3], она отсекает поверхность [2] там, где [3] выше [2];
    • Строится отсеченная часть поверхности [2];
    • Строится часть поверхности [1], которая не превосходит поверхность [0];
    • Поверхность [0] остается без изменений.

    Ниже представлены поверхности после отсечения (Рис. 32.4.2.1) и сеточная модель(Рис. 32.4.2.2), построенная на основании этих поверхностей.

    _images/otsechenie_poverkhnostey_sverkhu_vniz.png

    Рисунок 32.4.2.1 - Отсеченные поверхности

    _images/model_sverkhu_vniz.png

    Рисунок 32.4.2.2 - Сеточная модель, построенная с типом отсечения «Нижняя отсекает верхнюю»

  • «Верхняя отсекает нижнюю» - отсечение поверхностей идет сверху вниз от поверхности с минимальным номером (кровля) к максимальному. Каждая последующая поверхность должна быть ниже предыдущей.

    Такой алгоритм отсечения поверхностей на примере набора поверхностей (Рис. 32.4.1.1) выглядит так:

    • Строится поверхность [0], она отсекает поверхность [1] там, где [1] выше [0];
    • Строится отсеченная часть поверхности [1];
    • Строится поверхность [2] и отсекает поверхность [3] там, где [3] выше [2];
    • Строится отсеченная часть поверхности [3].

    Ниже представлены поверхности после отсечения (Рис. 32.4.2.3) и сеточная модель(Рис. 32.4.2.4), построенная на основании этих поверхностей.

    _images/otsechenie_poverkhnostey_snizu_vverkh.png

    Рисунок 32.4.2.3 - Отсечение поверхностей рисунка 26.3.1 второго типа

    _images/model_snizu_vverkh.png

    Рисунок 32.4.2.4 - Пример построения сеточной модели с типом отсечения: верхняя отсекает нижнюю по поверхностям рисунка 26.3.5

Важно

Если модель построения с использованием опции выклинивания, то она теряет свойство слоистости в том плане, что например ячейка слоя 1 может соседствовать с ячейкой слоя 3. А ячейки слоя 2 под ней вообще может не быть.

32.4.3. Гладкий переход

Гладкий переход позволяет производить плавное построение рельефной поверхности при переходе от одного слоя к другому. Негладкий переход (Рис. 32.4.3.1) возникает при пересечении рельефной поверхности и следующей за ней поверхностью. В этом случае ячейки, слоя между этими поверхностями не строятся (в месте пересечения).

_images/bez_gladkogo_perekhoda.png

Рисунок 32.4.3.1 - Фрагменты построения сетки без гладкого перехода

При применении данной опции - нижняя поверхность в месте вертикального выклинивания подтягивается к рельефу (Рис. 32.4.3.2)

_images/gladkiy_perekhod.png

Рисунок 32.4.3.2 - Фрагменты построения сетки с гладкого перехода

32.4.4. Установить минимальную толщину слоя

Данная опция позволяет исключать полное вырождение слоев. Слои модели, представляющие собой выклинивания стратиграфического слоя (Рис. 32.4.4.1), могут быть продолжены до границы модели (Рис. 32.4.4.2). Им присваивается небольшая толщина, указываемая пользователем.

_images/viklinivanie_layer.png

Рисунок 32.4.4.1 - Выклинивание слоя между поверхностями

_images/set_min_thiсkness.png

Рисунок 32.4.4.2 - Установка минимальной толщины слоя

32.4.5. Удалять ячейки меньше минимальной толщины

Опция исключает построение сетки с ячейками меньше минимальной толщины в слоях путем перераспределения узлов, расположенных на одной вертикали. Происходит поглощение ячеек, которые меньше минимальной толщины, ближайшими ячейками соседних слоев. Объем поглотившего ячейку слоя увеличивается.

Ниже на рисунке (Рис. 32.4.5.1) приведен пример ячейки меньше минимальной толщиы (она выделена красным цветом). Такая ячейка может ухудшать сходимость нелинейных итераций при решении уравнений геофильтрации и геомиграции.

_images/bez_udaleniya_ploskikh_yacheek.png

Рисунок 32.4.5.1 - Фрагменты построения сеток без удаления ячеек меньше минимальной толщины и с удалением

При применении опции «Удалять ячейки меньше минимальной толщины» данная ячейка поглощается ячейкой нижнего (зеленого) слоя (Рис. 32.4.5.2).

_images/udaleniye_ploskikh_yacheek.png

Рисунок 32.4.5.2 - Фрагменты построения сеток без удаления ячеек меньше минимальной толщины и с удалением

32.5. Приоритетная поверхность

В случае наличия в модели пересечений поверхностей и включенной опции «Учет выклиниваний» (см. «Выклинивание») для каждой поверхности раздела слоев можно установить ее номер приоритета (Рис. 32.5.1). По умолчанию для каждой поверхности установлено значение «0».

_images/priority_surface.png

Рисунок 32.5.1 - Поле для задания приоритета у поверхности

Данная опция позволяет сохранить положения узлов сетки поверхности раздела слоев с наивысшим приоритетом (Рис. 32.5.2), тем самым оставляя без изменений данную поверхность (Рис. 32.5.3). Для узлов с поверхностей с меньшим приоритетом выполняется корректировка с учетом направления отсечения поверхностей «верхняя отсекает нижнюю» или «нижняя отсекает верхнюю».

_images/surface_prior.png

Рисунок 32.5.2 - Заданные поверхности разделов слов, приоритет поверхности [3] равен 1, приоритет остальных поверхностей равен 0

_images/viklinivanie_priority.png

Рисунок 32.5.3 - Учет выклиниваний с сохранением приоритетной поверхности

32.6. Отображение трехмерной сетки

В основной части вкладки Сетка используются 3 окна:

  1. «Журнал», в котором прописывается информация о процессе построения сетки;

  2. «Сетка 3D» (Рис. 32.2) - это трехмерная сцена в которой отображаются;

    • Гидрологические объекты:

      • реки;
      • озера;
      • скважины.
    • Объекты, которые влияют на сетку:

      • фильтрационный барьер;
      • контур области моделирования;
      • точка с заданным сеточным размером;
      • линия с заданным сеточным размером;
      • зона с заданным сеточным размером.

      Примечание

      Изменения в таких объектах сохраняются в них после изменения в дереве.

    • Вспомогательные объекты:

      • Поверхностные сетки;
      • Сеточные разрезы;
      • «Крестовое» сечение.
  1. «Слои».
_images/layers_grid.png

Рисунок 32.6.1 - Вкладка «Слои» и таблица слоев

В таблице NZ - количество слоев, HZ - толщина разбиения, [м].

В слоях прописывается вся информация по дроблению, а также способу разбиения всех слоев модели.

Все изменения, которые прописываются в таблице, отображаются в менеджере слоев и наоборот, если изменения вносятся в менеджер слоев, то они автоматически появляются и в таблице окна «Слои».

Также в таблице вкладки «Слои» значения в столбцах со списком выбора (например «Тип ячейки») можно заменять и через контекстное меню (Рис. 32.6.2).

_images/build_grid_con.png

Рисунок 32.6.2 - Замена значения в столбце «Тип дробления сетки по вертикали»

32.7. Построение трехмерной сетки

32.7.1. Построение поверхностной сетки модели

После задания параметров построения сетки, для построения поверхностной сетки необходимо нажать кнопку build_grid (Рис. 32.7.1.1).

_images/build_grid.png

Рисунок 32.7.1.1 - Дерево объектов

После нажатия кнопки, в окне «Журнал» будет отображаться вся информация по построению поверхностной сетки.

_images/build_gr.png

Рисунок 32.7.1.2 - Окно «Журнал»

Примечание

Кнопка cancel_build (Рис. 32.7.1.2) отменит процесс построения поверхностной сетки.

Построенная поверхностная сетка отображается в окне «Сетка 3D». В окне «Дерево объектов» после построения сетки, появится объект «Поверхностная сетка».

_images/dial_grid3d.png

Рисунок 32.7.1.3 - Построенная поверхностная сетка

32.7.2. Построение разреза будущей трехмерной сетки модели

После построения поверхностной сетки становится возможным заглянуть «внутрь» будущей трехмерной сетки. Для этого используется «»Крестовое» сечение» (разрез). Разрез можно строить для разных конфигураций поверхностной сетки и параметров разбиения слоя.

Если построены несколько разрезов, то можно выбрать нужный и правой кнопкой взять все его параметры для разбиения зон, контура области моделирования и слоев.

Чтобы построить разрез необходимо:

  • активировать через контекстное меню «»Крестовое» сечение» (чтобы увидеть сетку в разрезе);

  • центр «Крестового» сечения можно перемещать с помощью кнопок J(влево), K(вниз), L(вправо), I(вверх);

  • повернуть его в нужное положение клавишами «П» или «Р» ( англ. «G» и «H»);

  • открыть диалог «Построение разреза сетки» (Рис. 32.7.2.1) с помощью кнопки raz_build;

    _images/dial__primary.png

    Рисунок 32.7.2.1 - Диалог построения разреза сетки

  • в диалоге задать:

    • «Имя разреза» - может быть любым;
    • в поле «Поверхностная сетка» выбрать сетку, на основании которой будет строится трехмерная сетка.на которой будет производиться разреза (в информационное поле «Параметры сетки» прописывается основная информация о параметрах построения поверхностной сетки);
  • нажать кнопку «Построить».

С помощью кнопки z_scale (Увеличить/уменьшить растяжение по Z) масштабировать разрез по Z для наглядности.

_images/dial_grid3d_raz.png

Рисунок 32.7.2.2 - Результаты построения разреза сетки

В «Дереве объектов» через контекстное меню по имени разреза можно открыть диалог «Параметры разреза сетки» нажатием на «Просмотреть параметры сетки из разреза».

_images/dial_grid3d_raz1.png

Рисунок 32.7.2.3 - Контекстное меню дерева объектов

На (Рис. 32.7.2.4) представлено окно диалога «Параметры разреза сетки», в котором прописана информация о параметрах построения, использованных для разреза трехмерной сетки:

  • параметры построения сетки в слоях;
  • параметры построения сетки на поверхности;
  • перечень объектов повлиявших на сетку.
_images/dial_param.png

Рисунок 32.7.2.4 - Параметры разреза сетки

Примечание

  • Построенный разрез можно удалить, нажатием на «Удалить разрез «Имя объекта»».

  • Чтобы скрыть «Крестовое» сечение, необходимо убрать галочку в контекстном меню;

    _images/grid_context.png

    Рисунок 32.7.2.5 - Контекстное меню

32.8. Зоны детализации

В случае, если в сеточной модели имеются зоны с заданными сеточными размерами с типами влияния на сетку «Количество вертикальных ребер» и «Дробление вертикальных ребер» с привязкой ко всей модели или к отдельным слоям, при установке галочки Не применять к слоям толщиной меньше (Рис. 32.8.1) к слоям модели с толщиной меньше, указанной пользователем, зоны с заданным сеточными размерами применяться не будут. Данная опция позволяет избежать излишней детализации в слоях с недостаточной мощностью.

_images/detailing_zone.png

Рисунок 32.8.1 - Зона детализации в ленте

На (Рис. 32.8.2) представлен фрагмент сеточной модели, состоящей из 4 слоев, мощности слоев составляют 5м, 1м, 2м, 7м (сверху вниз), задана зона с заданным сеточным размером с типом влияния на сетку «Количество вертикальных ребер» равное 3, с привязкой ко всей модели.

_images/detailing.png

Рисунок 32.8.2 - Фрагмент сеточной модели

На (Рис. 32.8.3) представлен фрагмент сеточной модели, представленной на (Рис. 32.8.2) с установленной галочкой в поле Не применять к слоям толщиной меньше для слоев мощности до 2 м.

_images/detailing1.png

Рисунок 32.8.3 - Фрагмент сеточной модели при установке галочки «не применять к слоям толщиной меньше» 2 м

32.9. Фрагмент сетки

Для построения фрагмента сетки необходимо в окне визуализации, в нужном месте на сетке нажать правую кнопку мыши, вызвать контекстное меню и выбрать "Построить в точке фрагмент сетки" (Рис. 32.9.1).

_images/mesh_page.png

Рисунок 32.9.1 - Команда «Построить в точке фрагмент сетки» контекстного меню

Фрагмент сетки можно построить двумя способами. Для этого нужно в открывшемся диалоговом окне задать координату центра (заданы автоматически, но можно и установить точную координату) и в поле «Тип фрагмента» выбрать:

  • «Вокруг точки» и задать нужное число топологических слоев;

    _images/around_point.png

    Рисунок 32.9.2 - Диалоговое окно создания фрагмента сетки

    Для более детальной визуальзации необходимо с помощью команды ленты rotate включить режим поворота мышкой и расположить построеный фрагмент под удобным углом и с помощью z_scale отмасштабировать по Z.

    _images/around_point_1.png

    Рисунок 32.9.3 - Созданный фрагмент сетки в окне визуализации

  • «Крест».

    _images/cross_fragment.png

    Рисунок 32.9.4 - Диалоговое окно создания фрагмента сетки

    _images/cross_fragment_1.png

    Рисунок 32.9.5 - Созданный фрагмент сетки в окне визуализации

С помощью команды ленты picking3d можно выбрать ячейку фрагмента сетки и открыть контекстное меню (Рис. 32.9.6) по правой кнопке мыши.

_images/context_menu.png

Рисунок 32.9.6 - Команды контекстного меню

Команды контекстного меню для отображения фрагмента сетки:

  • Ячеечный массив - выбор величины в ячейке для отображения в окне визуализации;

  • Показывать слой ячеек - отображение фрагмента в окне вмзуализации послойно;

  • Палитра - изменение палитры для отображения фрагмента сетки;

  • Ребра сетки - скрыть/показать ребра сетки;

  • Показать таблицу значений величин в ячейках колонны

    С помощью команды ленты picking3d можно выбрать любую ячейку фрагмента сетки, чтобы посмотреть значения в ней.

    _images/context_menu1.png

    Рисунок 32.9.7 - Значения в ячейке

  • Скрыть ячейки колонны - скрывает колонну, в которой находится выбранная ячейка;

  • Скрыть ячейки остальных колонн - скрывает все колонны, кроме той, в которой находится выбранная ячейка;

  • Показать все отстроенные ячейки - отображает весь отстроенный фрагмент, если ранее были скрыты его объекты.

Примечание

  1. В Дерево объектов отстроенный фрагмент, при необходимости, можно удалить через контекстное меню по объекту | Удалить фрагмент сетки.

    _images/del_fragment.png

    Рисунок 32.9.8 - Удаление фрагмента сетки

  2. Для фрагмента сетки типа «Крест» команды контекстного меню аналогичны типу «Вокруг точки».

32.10. Абстрактный параллелепипед

Одной из команд контекстного меню окна визуализации является «Добавить абстрактный параллелепипед».

_images/abstract.png

Рисунок 32.10.1 - Контекстное меню окна визуализации

Чтобы добавить абстрактный параллелепипед, необходимо выбрать данную команду и в открывшемся диалоговом окне необходимо задать габариты параллелепипеда, который отобразится в окне визуализации и выделит нужные объекты пространства.

_images/abstract_size.png

Рисунок 32.10.2 - Построенный абстрактный параллелепипед

Примечание

  • В Дерево объектов отстроенный абстрактный параллелепипед, при необходимости, можно удалить через контекстное меню по объекту | Удалить абстракт. пар-пед.

    _images/del_abstract_parallel.png

    Рисунок 32.10.3 - Удаление абстрактного параллелепипеда

32.11. Настройки визуализации

Окно «Настройки» содержит дерево настроек визуализации.

_images/tree_setting.png

Рисунок 32.11.1 - Дерево настроек

Общие настройки визуализации описаны в Общие элементы управления.

32.12. Основные команды

В таблице приведены основные команды ленты (на (Рис. 32.7.2.2) выделены красным цветом) для работы с трехмерной сеткой.

Tree дерево объектов 3D модели
define задать габариты модели
2D запретить поворот, масштабирование
3D разрешить поворот, масштабирование
axis3d показать координатные оси
center_object центрировать
view3d_back вернуться к предыдущему виду
view3d_next следующий вид
picking3d включить режим просмотра/выбора
translate включить режим перемещения мышкой
rotate включить режим поворота мышкой
from_ox вид на модель с оси OX
from_oy вид на модель с оси OY
from_oz вид на модель с оси OZ
save_bmp сохранить вид на модель в формате *.png
rotation_gif сохранить видео вращения модели в формате *.gif
z_scale масштабирование по z