exponenta event banner

EigenResults

Решение для собственного значения УЧП и выведенные количества

Описание

Объект EigenResults содержит решение задачи о собственных значениях УЧП в форме, удобной для графического вывода и постобработки.

  • Значения собственного вектора в узлах появляются в свойстве Eigenvectors.

  • Собственные значения появляются в свойстве Eigenvalues.

Создание

Существует несколько способов создать объект EigenResults:

  • Решите задачу о собственных значениях с помощью функции solvepdeeig. Эта функция возвращает решение для собственного значения УЧП как объект EigenResults. Это - рекомендуемый подход.

  • Решите задачу о собственных значениях с помощью функции pdeeig. Затем используйте функцию createPDEResults, чтобы получить объект EigenResults из решения для собственного значения УЧП, возвращенного pdeeig. Обратите внимание на то, что pdeeig является устаревшей функцией. Это не рекомендуется для решения задач о собственных значениях.

Свойства

развернуть все

Mesh конечного элемента, возвращенная как объект FEMesh Properties.

Собственные вектора решения, возвращенные как матрица или трехмерный массив. Решение является матрицей для скалярных задач о собственных значениях и трехмерным массивом для систем собственного значения. Для получения дополнительной информации смотрите Размерности Решений, Градиентов и Потоков.

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

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

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

Функции объекта

interpolateSolutionИнтерполируйте решение для УЧП произвольных точек

Примеры

свернуть все

Получите объект EigenResults из solvepdeeig.

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

model = createpde;
geometryFromEdges(model,@lshapeg);
applyBoundaryCondition(model,'dirichlet','Edge',1:model.Geometry.NumEdges,'u',0);

Задайте коэффициенты c = 1, a = 0 и d = 1.

specifyCoefficients(model,'m',0,'d',1,'c',1,'a',0,'f',0);

Создайте mesh и решите задачу о собственных значениях для собственных значений от 0 до 100.

generateMesh(model,'Hmax',0.05);
ev = [0,100];
results = solvepdeeig(model,ev)
              Basis= 10,  Time=   0.30,  New conv eig=  0
              Basis= 11,  Time=   0.33,  New conv eig=  0
              Basis= 12,  Time=   0.37,  New conv eig=  0
              Basis= 13,  Time=   0.39,  New conv eig=  0
              Basis= 14,  Time=   0.41,  New conv eig=  0
              Basis= 15,  Time=   0.44,  New conv eig=  0
              Basis= 16,  Time=   0.45,  New conv eig=  0
              Basis= 17,  Time=   0.48,  New conv eig=  0
              Basis= 18,  Time=   0.52,  New conv eig=  1
              Basis= 19,  Time=   0.54,  New conv eig=  1
              Basis= 20,  Time=   0.57,  New conv eig=  1
              Basis= 21,  Time=   0.60,  New conv eig=  1
              Basis= 22,  Time=   0.62,  New conv eig=  3
              Basis= 23,  Time=   0.64,  New conv eig=  3
              Basis= 24,  Time=   0.68,  New conv eig=  4
              Basis= 25,  Time=   0.70,  New conv eig=  5
              Basis= 26,  Time=   0.72,  New conv eig=  6
              Basis= 27,  Time=   0.75,  New conv eig=  6
              Basis= 28,  Time=   0.77,  New conv eig=  6
              Basis= 29,  Time=   0.80,  New conv eig=  7
              Basis= 30,  Time=   0.82,  New conv eig=  7
              Basis= 31,  Time=   0.85,  New conv eig= 10
              Basis= 32,  Time=   0.86,  New conv eig= 10
              Basis= 33,  Time=   0.93,  New conv eig= 11
              Basis= 34,  Time=   0.96,  New conv eig= 11
              Basis= 35,  Time=   0.98,  New conv eig= 14
              Basis= 36,  Time=   1.02,  New conv eig= 14
              Basis= 37,  Time=   1.05,  New conv eig= 14
              Basis= 38,  Time=   1.07,  New conv eig= 14
              Basis= 39,  Time=   1.09,  New conv eig= 14
              Basis= 40,  Time=   1.13,  New conv eig= 14
              Basis= 41,  Time=   1.15,  New conv eig= 15
              Basis= 42,  Time=   1.18,  New conv eig= 15
              Basis= 43,  Time=   1.21,  New conv eig= 15
              Basis= 44,  Time=   1.24,  New conv eig= 16
              Basis= 45,  Time=   1.27,  New conv eig= 16
              Basis= 46,  Time=   1.30,  New conv eig= 16
              Basis= 47,  Time=   1.35,  New conv eig= 16
              Basis= 48,  Time=   1.39,  New conv eig= 17
              Basis= 49,  Time=   1.47,  New conv eig= 18
              Basis= 50,  Time=   1.53,  New conv eig= 18
              Basis= 51,  Time=   1.57,  New conv eig= 18
              Basis= 52,  Time=   1.61,  New conv eig= 18
              Basis= 53,  Time=   1.66,  New conv eig= 18
              Basis= 54,  Time=   1.70,  New conv eig= 21
End of sweep: Basis= 54,  Time=   1.70,  New conv eig= 21
              Basis= 31,  Time=   2.01,  New conv eig=  0
              Basis= 32,  Time=   2.03,  New conv eig=  0
              Basis= 33,  Time=   2.05,  New conv eig=  0
End of sweep: Basis= 33,  Time=   2.06,  New conv eig=  0
results = 
  EigenResults with properties:

    Eigenvectors: [5597x19 double]
     Eigenvalues: [19x1 double]
            Mesh: [1x1 FEMesh]

Постройте решение для режима 10.

pdeplot(model,'XYData',results.Eigenvectors(:,10))

Введенный в R2016a