exponenta event banner

meshToPet

Представление [p,e,t] данных FEMesh

Эта страница описывает устаревший рабочий процесс. Новые возможности не могут быть совместимы с представлением [p,e,t] данных FEMesh.

Синтаксис

[p,e,t] = meshToPet(mesh)

Описание

пример

[p,e,t] = meshToPet(mesh) извлекает устаревшее представление mesh [p,e,t] от объекта FEMesh Properties.

Примеры

свернуть все

Этот пример показывает, как преобразовать mesh в объектной форме к форме [p,e,t].

Создайте 2D геометрию УЧП и включите ее в объект модели. Просмотрите геометрию.

model = createpde(1);

R1 = [3,4,-1,1,1,-1,-.4,-.4,.4,.4]';
C1 = [1,.5,0,.2]';
% Pad C1 with zeros to enable concatenation with R1
C1 = [C1;zeros(length(R1)-length(C1),1)];
geom = [R1,C1];
ns = (char('R1','C1'))';
sf = 'R1-C1';
gd = decsg(geom,sf,ns);

geometryFromEdges(model,gd);
pdegplot(model,'EdgeLabels','on')
xlim([-1.1 1.1])
axis equal

Создайте mesh для геометрии. Просмотрите mesh.

generateMesh(model);
pdemesh(model)
axis equal

Преобразуйте mesh в форму [p,e,t].

[p,e,t] = meshToPet(model.Mesh);

Просмотрите размеры матриц [p,e,t].

size(p)
ans = 1×2

     2   956

size(e)
ans = 1×2

     7   160

size(t)
ans = 1×2

     7   438

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

свернуть все

Объект ячейки, заданный как свойство Mesh объекта PDEModel или как вывод generateMesh.

Пример: model.Mesh

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

свернуть все

Поймайте в сети точки, возвращенные как 2 Np матрицей (2D геометрия) или 3 Np матрицей (3-D геометрия). Np является числом точек (узлы) в mesh. Столбец k p состоит из x - координаты точки k в p(1,k), y - координате точки k в p(2,k), и, для 3-D, z - координата точки k в p(3,k). Для получения дополнительной информации смотрите Данные о Mesh.

Поймайте в сети ребра, возвращенные как 7 Ne матрицей (2-D) или (3-D) объект ассоциативности mesh. Ne является количеством ребер в mesh. Ребро является парой точек в p, содержащем контур между субдоменами или содержащем внешнюю границу. Для получения дополнительной информации смотрите Данные о Mesh.

Поймайте в сети элементы, возвращенные как 4 Nt матрицей (2D с линейными элементами), 7 Nt матрицей (2D с квадратичными элементами), 5 Nt матрицей (3-D с линейными элементами), или 11 Nt матрицей (3-D с квадратичными элементами). Nt является количеством треугольников или тетраэдров в mesh.

t(i,k), с i в пределах от 1 через end - 1, содержит индексы к угловым точкам и возможно центрам ребра элемента k. Для получения дополнительной информации смотрите Данные о Mesh. Последняя строка, t(end,k), содержит количество субдомена элемента.

Советы

  • Используйте meshToPet, чтобы получить p и данные t для интерполяции с помощью pdeInterpolant.

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