generateMesh

Создайте треугольную или четырехгранную mesh

Описание

пример

generateMesh(model) создает mesh и хранит его в model объект. model должен содержать геометрию. Чтобы включать 2D геометрию в модель, использовать geometryFromEdges. Чтобы включать 3-D геометрию, использовать importGeometry или geometryFromMesh.

generateMesh может возвратить немного отличающиеся сетки в различных релизах. Например, число элементов в mesh может измениться. Избегайте написания кода, которое использует явным образом заданный узел и идентификаторы элемента.

пример

generateMesh(model,Name,Value) изменяет создание mesh согласно Name,Value аргументы.

mesh = generateMesh(___) также возвращает mesh в рабочую область MATLAB®, с помощью любого из предыдущих синтаксисов.

Примеры

свернуть все

Сгенерируйте 2D mesh по умолчанию для L-образной геометрии.

Создайте модель PDE и включайте L-образную геометрию.

model = createpde(1);
geometryFromEdges(model,@lshapeg);

Сгенерируйте mesh по умолчанию для геометрии.

generateMesh(model);

Просмотрите mesh.

pdeplot(model)

Figure contains an axes. The axes contains 2 objects of type line.

Создайте mesh, которая более прекрасна, чем значение по умолчанию.

Создайте модель PDE и включайте BracketTwoHoles геометрия.

model = createpde(1);
importGeometry(model,'BracketTwoHoles.stl');

Сгенерируйте mesh по умолчанию для сравнения.

generateMesh(model)
ans = 
  FEMesh with properties:

             Nodes: [3x10003 double]
          Elements: [10x5774 double]
    MaxElementSize: 9.7980
    MinElementSize: 4.8990
     MeshGradation: 1.5000
    GeometricOrder: 'quadratic'

Просмотрите mesh.

pdeplot3D(model)

Создайте mesh с целевым максимальным размером элемента 5 вместо значения по умолчанию 7.3485.

generateMesh(model,'Hmax',5)
ans = 
  FEMesh with properties:

             Nodes: [3x66982 double]
          Elements: [10x44093 double]
    MaxElementSize: 5
    MinElementSize: 2.5000
     MeshGradation: 1.5000
    GeometricOrder: 'quadratic'

Просмотрите mesh.

pdeplot3D(model)

Входные параметры

свернуть все

Объект модели в виде PDEModel объект, ThermalModel объект, StructuralModel объект или ElectromagneticModel объект.

Пример: model = createpde(3)

Пример: thermalmodel = createpde('thermal','steadystate')

Пример: structuralmodel = createpde('structural','static-solid')

Пример: emagmodel = createpde('electromagnetic','electrostatic')

Аргументы в виде пар имя-значение

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: generateMesh(model,'Hmax',0.25);

Элемент геометрический порядок в виде разделенной запятой пары, состоящей из 'GeometricOrder' и 'linear' или 'quadratic'.

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

В общем случае 'quadratic' элементы производят более точные решения. Замените 'quadratic' по умолчанию только сохранять память или решать 2D задачу с помощью устаревшего решателя. Устаревшие решатели УЧП используют линейную треугольную mesh для 2D конфигураций.

Пример: generateMesh(model,'GeometricOrder','linear');

Типы данных: char | string

Поймайте в сети темп роста в виде разделенной запятой пары, состоящей из Hgrad и номер, больше, чем или равный 1 и меньше чем или равный 2.

Пример: generateMesh(model,'Hgrad',1.3);

Типы данных: double

Предназначайтесь для максимальной длины ребра mesh в виде разделенной запятой пары, состоящей из Hmax и положительное вещественное число.

Hmax аппроксимированная верхняя граница на длинах ребра mesh. Иногда, generateMesh может создать mesh с некоторыми элементами, которые превышают Hmax.

generateMesh оценивает значение по умолчанию Hmax от габаритных размеров геометрии.

Маленький Hmax значения позволяют вам создать более прекрасные сетки, но генерация mesh может занять очень долгое время в этом случае. Можно прервать генерацию mesh при помощи Ctrl+C. Обратите внимание на то, что generateMesh может занять время, чтобы ответить на прерывание.

Пример: generateMesh(model,'Hmax',0.25);

Типы данных: double

Предназначайтесь для минимальной длины ребра mesh в виде разделенной запятой пары, состоящей из Hmin и неотрицательное вещественное число.

Hmin аппроксимированная нижняя граница на длинах ребра mesh. Иногда, generateMesh может создать mesh с некоторыми элементами, которые меньше, чем Hmin.

generateMesh оценивает значение по умолчанию Hmin от габаритных размеров геометрии.

Пример: generateMesh(model,'Hmin',0.05);

Типы данных: double

Выходные аргументы

свернуть все

Поймайте в сети описание, возвращенное как объект FEMesh Properties. mesh совпадает с model.Mesh.

Больше о

свернуть все

Элемент

element является основной единицей в методе конечных элементов.

Для 2D проблем элементом является треугольник в model.Mesh.Element свойство. Если треугольник представляет линейный элемент, он имеет узлы только в треугольных углах. Если треугольник представляет квадратичный элемент, то он имеет узлы в треугольных углах и центрах ребра.

Для 3-D проблем элементом является четырехгранник с или четырьмя или десятью точками. (Линейный) четырехгранник с четырьмя точками имеет узлы только в его углах. (Квадратичный) четырехгранник с десятью точками имеет узлы в своих углах и в центральную точку каждого ребра.

Для получения дополнительной информации смотрите Данные о Mesh.

Представленный в R2015a