solvepdeeig

Решите задачу о собственных значениях УЧП, заданную в PDEModel

Описание

пример

result = solvepdeeig(model,evr) решает задачу о собственных значениях УЧП в model для собственных значений в области значений evr. Если область значений не содержит собственных значений, solvepdeeig возвращает EigenResults объект с пустым EigenVectorsСобственные значения, и Mesh свойства.

Примеры

свернуть все

Решите для нескольких вибрационных режимов BracketTwoHoles геометрия.

Уравнения эластичности имеют три компонента. Поэтому создайте модель PDE, которая имеет три компонента. Импортируйте и просмотрите BracketTwoHoles геометрия.

model = createpde(3);
importGeometry(model,'BracketTwoHoles.stl');
pdegplot(model,'FaceLabels','on','FaceAlpha',0.5)

Установите F1, заднюю поверхность, иметь нулевое отклонение.

applyBoundaryCondition(model,'dirichlet','Face',1,'u',[0;0;0]);

Установите коэффициенты модели представлять стальную скобку. Для получения дополнительной информации смотрите Линейные уравнения Эластичности.

E = 200e9; % elastic modulus of steel in Pascals
nu = 0.3; % Poisson's ratio
specifyCoefficients(model,'m',0,...
                          'd',1,...
                          'c',elasticityC3D(E,nu),...
                          'a',0,...
                          'f',[0;0;0]); % Assume all body forces are zero

Найдите собственные значения до 1e7.

evr = [-Inf,1e7];

Поймайте в сети модель и решите задачу о собственных значениях.

generateMesh(model);
results = solvepdeeig(model,evr);
              Basis= 10,  Time=  15.67,  New conv eig=  0
              Basis= 11,  Time=  15.75,  New conv eig=  0
              Basis= 12,  Time=  15.81,  New conv eig=  0
              Basis= 13,  Time=  15.87,  New conv eig=  0
              Basis= 14,  Time=  15.95,  New conv eig=  1
              Basis= 15,  Time=  16.04,  New conv eig=  2
              Basis= 16,  Time=  16.12,  New conv eig=  2
              Basis= 17,  Time=  16.30,  New conv eig=  2
              Basis= 18,  Time=  16.37,  New conv eig=  4
End of sweep: Basis= 18,  Time=  16.37,  New conv eig=  4
              Basis= 14,  Time=  17.06,  New conv eig=  0
End of sweep: Basis= 14,  Time=  17.09,  New conv eig=  0

Сколько результатов сделало solvepdeeig возврат?

length(results.Eigenvalues)
ans = 3

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

V = results.Eigenvectors;
subplot(2,2,1)
pdeplot3D(model,'ColorMapData',V(:,1,1))
title('x Deflection, Mode 1')
subplot(2,2,2)
pdeplot3D(model,'ColorMapData',V(:,2,1))
title('y Deflection, Mode 1')
subplot(2,2,3)
pdeplot3D(model,'ColorMapData',V(:,3,1))
title('z Deflection, Mode 1')

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

figure
subplot(2,2,1)
pdeplot3D(model,'ColorMapData',V(:,1,3))
title('x Deflection, Mode 3')
subplot(2,2,2)
pdeplot3D(model,'ColorMapData',V(:,2,3))
title('y Deflection, Mode 3')
subplot(2,2,3)
pdeplot3D(model,'ColorMapData',V(:,3,3))
title('z Deflection, Mode 3')

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

свернуть все

Модель PDE в виде PDEModel объект. Модель содержит геометрию, mesh и проблемные коэффициенты.

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

Область значений собственного значения в виде двухэлементного вектора действительных чисел. evr(1) задает нижний предел области значений действительной части собственных значений и может быть -Inf. evr(2) задает верхний предел области значений и должен быть конечным.

Пример: [-Inf;100]

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

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

свернуть все

Результаты собственного значения, возвращенные как EigenResults объект. Если область значений env не содержит собственных значений, возвращенного EigenResults объект имеет пустой EigenVectorsСобственные значения, и Mesh свойства.

Советы

  • Коэффициенты уравнения не могут зависеть от решения u или его градиент.

Введенный в R2016a