Создайте начальную 2D mesh
Эта страница описывает устаревший рабочий процесс. Новые возможности не могут быть совместимы с устаревшим рабочим процессом. Для соответствующего шага в рекомендуемом рабочем процессе смотрите generateMesh
.
Сгенерируйте треугольную сетку L-образной мембраны.
[p,e,t] = initmesh('lshapeg');
Постройте mesh.
pdemesh(p,e,t)
Сгенерируйте треугольную сетку L-образной мембраны с целевой максимальной длиной ребра mesh 0,1.
[p,e,t] = initmesh('lshapeg','Hmax',0.1);
Постройте mesh.
pdemesh(p,e,t)
g
— Описание геометрииОписание геометрии в виде анализируемой матрицы геометрии, функции геометрии или указателя на функцию геометрии. Для получения дополнительной информации об анализируемой матрице геометрии, смотрите decsg
. Для получения дополнительной информации о функции геометрии, смотрите Параметрическую Функцию для 2D Создания Геометрии.
Функция геометрии должна возвратить тот же результат для тех же входных параметров в каждом вызове функции. Таким образом это не должно содержать функции и выражения, спроектированные, чтобы возвратить множество результатов, таких как генераторы случайных чисел.
Типы данных: double |
char
| string
| function_handle
Задайте дополнительные разделенные запятой пары Name,Value
аргументы. Name
имя аргумента и Value
соответствующее значение. Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN
.
[p,e,t] = initmesh('lshapeg','Hmax',0.1);
'Hmax'
— Предназначайтесь для максимальной длины ребра meshПредназначайтесь для максимальной длины ребра mesh в виде разделенной запятой пары, состоящей из 'Hmax'
и положительное вещественное число.
Hmax
аппроксимированная верхняя граница на длинах ребра mesh. initmesh
оценивает значение по умолчанию Hmax
от габаритных размеров геометрии.
Маленький Hmax
значения позволяют вам создать более прекрасные сетки, но генерация mesh может занять очень долгое время в этом случае. Можно прервать генерацию mesh при помощи Ctrl+C. Обратите внимание на то, что initmesh
может занять время, чтобы ответить на прерывание.
Пример: [p,e,t] = initmesh(g,'Hmax',0.25);
Типы данных: double
'Hgrad'
— Поймайте в сети темп роста
(значение по умолчанию) | номер, строго больше, чем 1 и меньше чем 2Поймайте в сети темп роста в виде разделенной запятой пары, состоящей из 'Hgrad'
и номер, строго больше, чем 1 и меньше чем 2.
Пример: [p,e,t] = initmesh(g,'Hgrad',1.5);
Типы данных: double
'Box'
— Переключитесь, чтобы сохранить ограничительную рамку'off'
(значение по умолчанию) | 'on'
Переключитесь, чтобы сохранить ограничительную рамку в виде разделенной запятой пары, состоящей из 'Box'
и 'on'
или 'off'
. Путем включения 'Box'
можно получить хорошую идею того, как алгоритм генерации mesh работает в ограничительной рамке.
Пример: [p,e,t] = initmesh(g,'Box','on');
Типы данных: char |
string
'Init'
— Переключитесь, чтобы использовать триангуляцию ребра'off'
(значение по умолчанию) | 'on'
Переключитесь, чтобы использовать триангуляцию ребра в виде разделенной запятой пары, состоящей из 'Init'
и 'on'
или 'off'
. Путем включения Init
вы видите начальную триангуляцию контуров. Например, используйте эти команды, чтобы определить номер субдомена n
из точки xy
.
[p,e,t] = initmesh(g,'Hmax',Inf,'Init','on'); [uxy,tn,a2,a3] = tri2grid(p,t,zeros(size(p,2)),x,y); n = t(4,tn);
Если точка находится вне геометрии, tn
isnan
, и команда n = t(4,tn)
результаты в отказе.
Типы данных: char |
string
'Jiggle'
— Переключитесь, чтобы вызвать jigglemesh
после создания mesh'mean'
(значение по умолчанию) | 'minimum'
| 'on'
| 'off'
Переключитесь, чтобы вызвать jigglemesh
после создания mesh в виде разделенной запятой пары, состоящей из 'Jiggle'
и 'mean'
, 'minimum'
'on'
, или 'off'
.
'mean'
— вызовите jigglemesh
с аргументом 'Opt'
установите на 'mean'
.
'minimum'
— вызовите jigglemesh
с аргументом 'Opt'
установите на 'minimum'
.
'on'
— вызовите jigglemesh
с аргументом 'Opt'
установите на 'off'
.
'off'
— не вызывайте jigglemesh
.
Пример: [p,e,t] = initmesh(g,'Jiggle','minimum');
Типы данных: char |
string
'JiggleIter'
— Максимальное количество итераций для jigglemesh
(значение по умолчанию) | положительное целое числоМаксимальное количество итераций для jigglemesh
В виде разделенной запятой пары, состоящей из 'JiggleIter'
и положительное целое число.
Пример: [p,e,t] = initmesh(g,'Jiggle','on','JiggleIter',50);
Типы данных: double
'MesherVersion'
— Алгоритм для генерации начальной mesh'preR2013a'
(значение по умолчанию) | 'R2013a'
Алгоритм для генерации начальной mesh в виде разделенной запятой пары, состоящей из 'MesherVersion'
и любой 'R2013a'
или 'preR2013a'
. 'R2013a'
алгоритм запускается быстрее и может триангулировать больше конфигураций, чем 'preR2013a'
алгоритм. Оба алгоритма используют Триангуляцию Делоне.
Типы данных: char |
string
p
— Поймайте в сети точкиNp
матрицаПоймайте в сети точки, возвращенные как 2 Np
матрица. Np
число точек (узлы) в mesh. Столбец k
из p
состоит из x - координата точки k
в p(1,k)
и y - координата точки k
в p(2,k)
. Для получения дополнительной информации смотрите Данные о Mesh, когда [p, e, t] Утраивается.
e
— Поймайте в сети ребраNe
матрицаПоймайте в сети ребра, возвращенные как 7 Ne
матрица, где Ne
количество граничных ребер в mesh. Ребро является парой точек в p
содержа контур между субдоменами, или содержащий внешнюю границу. Для получения дополнительной информации смотрите Данные о Mesh, когда [p, e, t] Утраивается.
t
— Поймайте в сети элементыNt
матрицаПоймайте в сети элементы, возвращенные как 4 Nt
матрица. Nt
количество треугольников в mesh.
t(i,k)
, с i
в пределах от 1 через end - 1
, содержите индексы к угловым точкам элемента k
. Для получения дополнительной информации смотрите Данные о Mesh, в то время как [p, e, t] Утраивается. Последняя строка, t(end,k)
, содержит количество субдомена элемента.
[1] Джордж, P. L. Автоматическая генерация Mesh — приложение к методам конечных элементов. Вайли, 1991.
adaptmesh
| decsg
| jigglemesh
| refinemesh
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.