(U4.52.03) Оператор MODE ITER SIMULT

Материал из ru.wiki.laduga.ru
Перейти к: навигация, поиск


Содержание

1 Цель

Когда инженеру необходимо изучить вибрации структуры (возможно демпфированной или вращающейся) или найти режимы потери устойчивости, ему необходимо решить модальную задачу: либо обобщенную (GEP) (R5.01.01), либо квадратичную (QEP) (R5.01.02). Для этого Code_Aster предлагает два оператора (или их макросы): MODE_ITER_SIMULT и MODE_ITER_INV (U4.52.04).

Первый, который упоминается выше, лучше использовать при поиске значительной части спектра (методы подпространства или глобальный метод). Второй используется в тех случаях, когда нам интересны только некоторые собственные режимы (обычно полдюжины) или когда нам нужно уточнить некоторые оценки (вероятно полученные из MODE_ITER_SIMULT).

MODE_ITER_SIMULT определяет набор собственных режимов, используя либо метод типичного подпространства (Bathe & Wilson, Lanczos или Sorensen), либо глобальный метод QR (QZ для небольших задач). Его 4 метода доступны для решения стандартных GEP (симметричная реальность): обычные динамические вычисления (без гироскопического эффекта) или задача балки Эйлера.

Кроме того, для решения такого типа GEP эффективно, предлагается действовать в следующей последовательности:

  • Измерить области интереса, используя INFO_MODE (U4.52.01), на начальном списке частот (критические нагрузки)
  • Рассмотреть число ассоциирующихся собственных режимов
  • Перезапустить одно или несколько вычислений MODE_ITER_SIMULT+OPTION=’BANDE’ вместе с балансированием или заново использованием sd_table , сгенерированной на первом этапе

С другой стороны, как только найдется решение QEP или атипичной GEP (комплексная и/или ассиметричная матрица), спектр станет комплексным. Этап INFO_MODE+MODE_ITER_SIMULT больше не будет возможным. Конкретные ключевые слова или значения перестанут существовать (OPTION=’BANDE’, VERI_MODE/STURM) и только методы Sorensen, Lanczos или QZ останутся доступными.

Этот оператор создает концепт mode_meca_* (в динамическом случае) или mode_flamb (в случае балки Эйлера, только в QEP) в соответствии со значением, отраженном в ключевом слове TYPE_RESULT.

В первом приближении может быть достаточно параметров: MATR_*, TYPE_RESULT, CALC_*/OPTION и FREQ (или CHAR_CRIT)/

В некоторых случаях, возможно будет более уместным использование макро-команд MACRO_MODE_MECA (U4.52.02) или CALC_MODAL (U4.52.10).



2 Общий синтаксис

  mode_ [*]=MODE_ITER_SIMULT

  # Тип задачи
  ◊  TYPE_RESU=/'DYNAMIQUE'                              [DEFAUT]
               /'MODE_FLAMB'
               /'GENERAL'



  # Если TYPE_RESU=‘DYNAMIQUE’

  # Характеристики вычислений
  (        ♦	MATR_RIGI=A		/[matr_asse_DEPL_R]
			                /[matr_asse_DEPL_C]
			                /[matr_asse_PRES_R]
			                /[matr_asse_GENE_R]
			                /[matr_asse_GENE_C]
  ♦	MATR_MASS=B		/[matr_asse_DEPL_R]
				/[matr_asse_PRES_R]
				/[matr_asse_GENE_R]
  ◊	MATR_AMOR=C	(только для QEP)    /[matr_asse_DEPL_R]
			                    /[matr_asse_GENE_R]

  ◊  CALC_FREQ=_F(◊  OPTION=/'CENTRE'
                            /'BANDE'
                            /'PLUS_PETITE'        [DEFAUT]
                            /'PLUS_GRANDE'
                            /‘TOUT’(только для QZ)

  # Если OPTION=‘PLUS_PETITE’
  ◊  NMAX_FREQ=/10                          [DEFAUT]
               /nf                          [I]
  # Если OPTION=‘PLUS_GRANDE’
  ◊  NMAX_FREQ=/1                           [DEFAUT]
               /nf                          [I]
  # Если OPTION=‘CENTRE’
  ♦  FREQ=l_f                               [l_R]
  ◊  AMOR_REDUIT=l_a                        [l_R]
  ◊  NMAX_FREQ=/10                          [DEFAUT]
               /nf                          [I]
  # Если OPTION=‘BANDE’
  ♦  FREQ=l_f                               [l_R]
  ◊  TABLE_FREQ=table_f                [table_sdaster]
                )
  # Параметры для QEP
  ◊  APPROCHE= /'REEL'                             [DEFAUT]
               /'IMAG'
               /‘COMPLEXE’ (для Sorensen)

  # Характеристики проекции пространства
  ◊  DIM_SOUS_ESPACE=dse                             [I]
  ◊  COEF_DIM_ESPACE=mse                             [I]           
        EXCLUS(‘DIM_SOUS_ESPACE’,‘COEF_DIM_ESPACE’)

  # Для пре- и пост- обработки
  ◊  PREC_SHIFT=/0.05                              [DEFAUT]
                /p_shift                           [R]
  ◊  NMAX_ITER_SHIFT=/3                            [DEFAUT]
                     /n_shift           	              [I]
  ◊  SEUIL_FREQ=/1.E-2                             [DEFAUT]
                /f_seuil                           [R]
 

  # Если TYPE_RESU=‘MODE_FLAMB’

  # Характеристики вычислений
  (        ♦	MATR_RIGI=A		/[matr_asse_DEPL_R]
					/[matr_asse_PRES_R]
					/[matr_asse_GENE_R]
      ♦	MATR_RIGI_GEOM=B	/[matr_asse_DEPL_R]
				/[matr_asse_PRES_R]

  ◊  CALC_CHAR_CRIT =_F( ◊  OPTION=/'CENTRE'
                                   /'BANDE'
                                   /'PLUS_PETITE'  [DEFAUT]

  # Если OPTION=‘PLUS_PETITE’
  ◊  NMAX_CHAR_CRIT= /10                    [DEFAUT]
                     /nf                    [I]
  # Если OPTION=‘CENTRE’
  ♦	CHAR_CRIT= l_c					  [l_R]
  ◊	NMAX_CHAR_CRIT= /10			       [DEFAUT]
		        /nf				  [I]
	
  # Если OPTION=‘BANDE’
  ♦  CHAR_CRIT=l_c                          [l_R]
  ◊  TABLE_CHAR_CRIT=table_c     		 [table_sdaster]
                         )

  # Параметры для QEP
  ◊  APPROCHE= /'REEL'                             [DEFAUT]
               /'IMAG'
  # Характеристики пространства проекции
  ◊  DIM_SOUS_ESPACE=dse                           [I]
  ◊  COEF_DIM_ESPACE=mse                         [I] 
       EXCLUS(‘DIM_SOUS_ESPACE’,‘COEF_DIM_ESPACE’)

  # Для пре- и постобработки
  ◊  PREC_SHIFT=/0.05                              [DEFAUT]
                /p_shift                           [R]
  ◊  NMAX_ITER_SHIFT=/3                            [DEFAUT]
                     /n_shift                     [I]
  ◊  SEUIL_CHAR_CRIT=/1.E-2                        [DEFAUT]
                     /c_seuil                     [R]

  # Если TYPE_RESU=‘GENERAL’

  # Характеристики вычислений
  (        ♦	MATR_A=A	/[matr_asse_DEPL_R]
				/[matr_asse_PRES_R]
				/[matr_asse_GENE_R]
  ♦	MATR_B=B	/[matr_asse_DEPL_R]
			/[matr_asse_PRES_R]
			/[matr_asse_GENE_R]


  ◊  CALC_CHAR_CRIT =_F( ◊  OPTION=/'CENTRE'
                                   /'BANDE'
                                   /'PLUS_PETITE'  [DEFAUT]
                                   /‘TOUT’ (для  QZ)

  #  Если OPTION=‘PLUS_PETITE’
  ◊  NMAX_CHAR_CRIT= /10                    [DEFAUT]
                     /nf                    [I]
  #  Если OPTION=‘CENTRE’
  ♦	CHAR_CRIT=l_c					  [l_R]
  ◊	NMAX_CHAR_CRIT=	/10			  [DEFAUT]
			/nf			  [I]

  #  Если OPTION=‘BANDE’ (для GEP симметричных матриц)
  ♦  CHAR_CRIT=l_c                          [l_R]
  ◊  TABLE_CHAR_CRIT=table_c     		  [table_sdaster]
                           )


  # Характеристики проекции пространства
  ◊  DIM_SOUS_ESPACE=dse                           [I]
  ◊	COEF_DIM_ESPACE=mse                         [I]                    
           EXCLUS(‘DIM_SOUS_ESPACE’, ‘COEF_DIM_ESPACE’)
  
  # Для пре- и постобработки
  ◊  PREC_SHIFT=/0.05                              [DEFAUT]
                /p_shift                           [R]
  ◊  NMAX_ITER_SHIFT=/3                            [DEFAUT]
                     /n_shift                      [I]
  ◊  SEUIL_CHAR_CRIT=/1.E-2                        [DEFAUT]
                     /c_seuil                      [R]
 

  # Выбор метода
  ◊  METHODE= /'SORENSEN'                     [DEFAUT]
              /'TRI_DIAG' (для GEP/QEP симметричных)
              /'JACOBI'    (кроме  QEP)
              /‘QZ’        (небольшие задачи для степеней свободы меньше 10^3 )

  # Внутренние методы настройки

  # Если METHODE=‘SORENSEN’
  ◊ PREC_SOREN=/0                    [DEFAUT]
               /pso                  [R]
  ◊ NMAX_ITER_SOREN= /20             [DEFAUT]
                     /nso            [I]
  ◊ PARA_ORTHO_SOREN=/0.717          [DEFAUT]
                     /porso          [I]
  # Если METHODE=‘TRI_DIAG’
  ◊ PREC_ORTHO=/1.E-12               [DEFAUT]
               /po                   [R]
  ◊ NMAX_ITER_ORTHO=/5               [DEFAUT]
                    /nio             [I]
  ◊ PREC_LANCZOS=/1.E-8              [DEFAUT]
                 /pl                 [R]
  ◊ NMAX_ITER_QR=/30                 [DEFAUT]
                 /nim                [I]
  ◊ OPTION=/'SANS'                   [DEFAUT]
           /'MODE_RIGIDE'
 
  # Если METHODE=‘JACOBI’

  ◊  PREC_BATHE=/1.E-10               [DEFAUT]
               /pbat                 [R]
  ◊  NMAX_ITER_BATHE=/40              [DEFAUT]
                     /nbat             [I]
  ◊  PREC_JACOBI=/1.E-2               [DEFAUT]
                 /pjaco               [R]
  ◊  NMAX_ITER_JACOBI=/12             [DEFAUT]
                      /njaco          [I]
                     )
 
  # Если METHODE=‘QZ’
 


  ◊  TYPE_QZ=/‘QZ_SIMPLE’             [DEFAUT]
             /‘QZ_EQUI’
             /‘QZ_QR’ (Если GEP матриц SPD)
 

 
  # Для окончательной проверки
  ◊  VERI_MODE=_F(
  ◊  STOP_ERREUR=/'OUI'               [DEFAUT]
                 /'NON'
  ◊  SEUIL= /1.E-6                    [DEFAUT]
            /r                        [R]
  ◊ PREC_SHIFT=/0.05                  [DEFAUT]
               /prs                   [R]
  ◊ STURM= /'OUI'                     [DEFAUT]
           /'NON'

               )
  
  # Различные
 
  ◊  STOP_BANDE_VIDE=/'OUI'                       [DEFAUT]
                     /'NON'
 
  ◊  SOLVEUR=_F(Подробности в документе [U4.50.01])


  ◊  INFO=/1                                       [DEFAUT]
          /2                                            [I]
  ◊  TITRE=ti
                 );


  # Результаты модальной задачи

  Если	MATR_AMOR или MATR_C=[matr_asse_DEPL_R]	то [*]->mode_meca_c
  Если	TYPE_RESU=‘MODE_FLAMB’	то [*] ->mode_flamb
  Если TYPE_RESU=‘GENERAL’ то [*]->mode_flamb
  Если MATR_RIGI или MATR_A=[matr_asse_DEPL_C]	то [*] ->meca_c
  Если MATR_RIGI или MATR_A=[matr_asse_DEPL_R]	то [*] ->mode_meca
  Если MATR_RIGI или MATR_A=[matr_asse_PRES_R]	то [*] ->mode_acou
  Если MATR_RIGI или MATR_A=[matr_asse_GENE_R]	то [*] ->mode_gene
  Если MATR_RIGI или MATR_A=[matr_asse_GENE_C]	то [*] ->mode_gene



3 Операнды

3.1 Принципы

Этот оператор решает обобщенную задачу (GEP) с собственными значениями, в соответствии с (R5.01.01):

Чтобы найти (λ,x) такие как Ax = λBx, x ≠ 0, где А и B реальные, симметричные матрицы.

Чтобы промоделировать гистерезисное демпфирование в изучении свободных вибраций структуры, матрица А должна быть комплексной симметричной (U2.06.03)(R5.05.04)

Этот тип задач в механике относится к:

  • Изучению свободных вибраций в недемпфированной и невозобновляемой структуре. Для этой структуры ищутся наименьшие собственные значения или те, которые в заданном интервале, обеспечивают силу, достаточную для создания резонанса. В этом случае, матрица А - это материал, K – симметричная матрица реальной жесткости (возможно увеличенная геометрическая жесткость матрицы обозначенная Kg, если структура предварительно напряжена) и B – матрица весов или инерция, обозначенная M (симметричная вещественная). Полученные собственные числа являются квадратами колебаний, связанных с искомыми частотами. Система, которую необходимо решить, может быть записана в виде:
U4.52.03 3.1 1.png
, где λ = (2πf)2 это квадрат угловой скорости ω, f собственная частота и x вектор связанного смещения. Обрабатываемые собственные (λ,x) значения содержат актуальные значения. Этот вид задач активизируются ключевым словом TYPE_RESU=’DYNAMICS’ и структурами mode_meca_type, mode_acou или mode_gene generate (в соответствии с типом входных данных).
  • Поиску линейной характеристики балки. В аспекте линейной теории, которая априори предполагает, что феномен стабильности описываются системой уравнений, полученной из предположения линенйной зависимости диспозиции от уровня критической нагрузки, поиск линей характеристики балки X зависит от уровня критической нагрузки μ = -λ , что возвращает к задаче обобщения собственных чисел:

U4.52.03 3.1 2.png

, где K матрица жесткости материала и Kg - матрица геометрической жесткости. Используемые собственные числа (λ,x) заполнены актуальными значениями. Этот тип задач активизируется ключевым словом TYPE_RESU=’MODE_FLAMB’ и генерирует структуру Астера для типа mode_flamb.

Внимание:

  • В коде получены только собственные значения обобщенной проблемы, переменные λ. Чтобы получить правильные значения критических напряжений (переменные μ), их необходимо умножить на -1.
  • В GEP для решения задач с комплексными числами (асимметрические матрицы и/или с комплексными значениями) необходимо использовать MODE ITER SIMULT (METHODE=’SORENSEN’/’QZ’).

Этот оператор позволяет также изучать динамическую стабильность структуры с учетом амортизации и/или гироскопических эффектов. Из этого следует решение модальной задачи высшего порядка, также известной как квадратичная задача (QEP) (R5.01.02). Комплексные значения и собственные векторы обозначены (l,x).

  • Задача содержит неизвестные (λ,x) ∈ (C, CN) такие как:
2B + λC + A)x = 0 , где, как правило, в линейной механике, А будет матрицей жесткости, B матрицей весов и C матрицей нагрузок. Матрицы A,B и С – симметричные и вещественные матрицы. Комплексное собственное значение λ связано с собственной частотой f и нагрузками ξ через соотношение:

U4.52.03 3.1 3.png

Этот тип задач активизируется по ключевому слову TYPE_RESU = ‘DYNAMIQUE’ и генерирует структуру типа Астер mode_meca_c.

Внимание:

  • В QEP для решения задач с ассиметричными матрицами и/или комплексными числами, необходимо использовать MODE_ITER_SIMULT (METHODE=’SORENSEN’/’QZ’).
  • Балка (TYPE RESU=’MODE FLAMB’) не допускается в QEO
  • Тест Штурма возможен в GEP только с вещественными симметричными матрицами. Вне этих ограничений (QEP, GEP с ассиметричными вещественными матрицами или симметричными А комплексными матрицами) опция ‘BANDE’ запрещена и после проверки, основанной на тесте Штурма, не активизирована (параметр ‘VERI_MODE/STURM’ недоступен)

Для решения данных обобщенных или квадратичных модальных задач, Code_Aster предлагает различные подходы. Их цифровые спецификации и функциональные возможности находятся в документах (R5.01.01/02), их можно резюмировать в форме таблицы ниже (значения по умолчанию):

Оператор/область применения Алгоритм Ключевое слово Преимущества Недостатки
MODE_ITER_INV Только симметричные вещественные (GEP и QEP)
1 фаза (эвристическая)
Расчет некоторых режимов Деление пополам (не применяется к QEP) ‘SEPARE’
Расчет некоторых режимов Деление пополам + Секанте (GEP) или Мюллера-Трауба (QEP) ‘AJUSTE’ Высокая точность Высокие затраты производительности
Улучшение некоторых оценок Инициализация пользователем ‘PROCHE’ Практически нулевой расчет стоимости, восстановление собственных оценок Низкая эффективность для множества оценок
2 фаза (метод обратных полномочий) Вещественная симметричная (GEP и QEP)
Базовый метод Обратных полномочий ‘DIRECT’ Очень хорошое построение собственных векторов Очень долгий
Ускорение опции Фактор Рэлея (без QEP) ‘RAYLEIGH’ Улучшает сходимость Высокие затраты производительности
MODE_ITER_SIMULT
Расчет части спектра Бате и Вильсон ‘JACOBI’ Надежный только для симметричных матриц (GEP)
Ланкзос (Ньюман-Пипано для GEP и Дженнинга для QEP) ‘TRI_DIAG’ Специфическое выявление жестких режимов Только симметричные матрицы (GEP и QEP)
IRAM (Соренсен) ‘SORENSEN’ Высокая надежность. Вычисления более высокой сложности. Есть контроль качества. Метод по умолчанию. Область применения – симметричные и ассиметричные A комплексы.
Расчет спектра и фильтрующей части QZ ‘QZ’ Контрольный метод с точки зрения надежности Очень дорогой с точки зрения памяти и производительности. Предназначен для небольших случаев (меньше 103 степеней свободы).
Таблица 3.1-1. Краткое содержание модальных методов Code_Aster.

Когда необходимо определить некоторые хорошо дискриминированные простые собственные значения или уточнить некоторые оценки, оператор MODE_ITER_INV (эверистический + обратной мощности) часто показывает достаточно точные значения. Однако, для того чтобы определить значительную часть спектра, мы прибегаем к MODE_ITER_SIMULT с помощью методов подпространства (Lanczos, Jacobi) или глобальным методам QZ (достаточно надежным, но затратным, в случае маленьких величин).

Это второй класс методов, который нас будет здесь интересовать.

Что касается методов подпространства, в их случае следует проектировать задачу на пространстве, размер которого больше чем количество желаемых собственных значений, но гораздо меньше того, что указано в задаче. Условия определенной задачи приводится к тому виду, в котором она имеет канонический вид (тридиагональный, Гессенберга и т.д.). После нужно воспользоваться глобальной модальной вычислительной программой ( Jacobi для Bathe & Wilson, QR для Lanczos/ IRAM) для упрощения задачи. Затем мы конвертируем полученные данные для начального рабочей области.

Что касается глобального метода QZ, он прямиком и полностью решает первоначальные задачи (линерализированные GEP или QEP) для улучшения надежности процесса. Также он показывает отклонения при расчете всего спектра. Соответственно им нужно пользоваться в случаях с маленькими величинами (103 степени подвижности).

Необходимо использовать сильные стороны двух классов методов, уточняя соответственный вектор при помощи MODE_ITER_SIMULT, посредством MODE_ITER_INV(OPTION=’PROCHE’). Это позволит уменьшить норму конечных хвостов (см. §3.6.2).

С другой стороны, для того чтобы правильно работать со стандартным GEP, предлагается действовать в следующем порядке:

  • Калибрировать интересующую область при помощи начальной команды в INFO _MODE в списке частотности (в соотв. с критической нагрузкой);
  • Изучить числа указанной моды, которые покажутся в окошке сообщения (или же в созданном sd_table);
  • Перезапустить одно или несколько вычислений MODE_ITER_SIMULT+OPTION='BANDE' (ou MACRO_MODE_MECA ) пытаясь уравновесить области;

Для того, чтобы сэкономить время, можно (и даже нужно) пускать одновременно одну часть расчета издержек в первоначальном l'INFO_MODE, указывая в MODE_ITER_SIMULTs название генерируемой sd_table (см. ключевое слово «Таблица»). Создание последовательной иерархической структуры данных показывает добавочную стоимость INFO_MODE, которой можно пренебречь и спокойно пользоваться только модальными вычислениями.

Зато когда дело касается нетипичных QEP или GEP (сложная и\или несимметричная матрица), становится сложным и сам спектр. Последовательная иерархическая структура типа INFO_MODE+MODE_ITER_SIMULT в этом случае больше не будет функционировать. Некоторые ключевые слова теряют смысл (OPTION='BANDE', VERI_MODE/STURM...) и только методы Sorensen, Lanczoc или QZ остаются в этом случае действенными.

Примечание.

Мы убедительно советуем предварительно ознакомиться со справочной документацией (R5.01.01) (R5.01.02) (R5.01.04). Она даст пользователю понимание ограничений, как теоретических, так и практических, модальных методов к которым можно прибегнуть после соответствующих размышлений, несмотря на то, что они могут показаться слишком эфемерными для точного конфигурирования.

3.2 Операнды MATR_RIGI/MATR_A/MATR_MASS/MATR_RIGI_GEOM/MATR_B/MATR_AMOR/MATR_C

Таблица, представленная ниже, показывает операнды, которые используются в соответствии с ключевым словом TYPE_RESU

TYPE_RESU
'DYNAMIQUE' 'MODE_FLAMB' 'GENERAL'
♦ MATR_RIGI = A ♦ MATR_RIGI = A ♦ MATR_A = A
♦ MATR_MASS = B ♦ MATR_RIGI_GEOM = B ♦ MATR_B = B
◊ MATR_AMOR = C Без объекта Кроме действительного пространства
 ♦  MATR_RIGI  /MATR_A=A

Комбинированная матрица, вещественная (симметричная либо несимметричная), либо сложносоставная симметричная, для решений при помощи GEP/QEP [matr_asse_*_R/C].

 ♦  MATR_MASS  /MATR_RIGI_GEOM/MATR_B=B

Комбинированная матрица, вещественная (симметричная либо несимметричная), для решений при помощи GEP/QEP [matr_asse_*_R]

 ◊  MATR_AMOR  /MATR_C=C

Комбинированная матрица, вещественная (симметричная либо несимметричная), для решений при помощи QEP [matr_asse_*_R].

Примечание:

Если матрица А является сложносоставной, симметричной, либо одна из матриц А/B или С не является вещественной и симметричной, могут использоваться только методы Sorensen и QZ. Мы также не можем воспользоваться опцией вычислений ‘BANDE’. А для случаев, когда матрица А является сложносоставной, граница частнотности равна нулю (‘OPTION=PLUS_PETITE’ ou ‘CENTRE’ avec f=0).

3.3 Ключевое слово TYPE_RESU

 ◊  TYPE_RESU=/‘DYNAMIQUE’       [DEFAUT]
              /‘MODE_FLAMB’
              /'GENERAL'

Это ключевое слово позволяет определить природу модальной задачи, которую необходимо решить: оно показывает частотность вибраций (классический случай динамики как с, так и без амортизации и любых гироскопических эффектов) либо показывает критическую нагрузку (в случае теории линейной деформации, исключительно в GEP).

Согласно классификации, результаты показываются и хранятся по-разному (в зависимости от структуры данных):

  • В динамике (TYPE_RESU='DYNAMIQUE'), частоты выводятся в порядке возрастания модуля их расстояния (см. (R5.01.01/02), §3.8/2.5). Это - вес переменной доступа NUME_ORDRE полученной структуры. Другая переменная доступа, NUME_MODE, равна истинной позиции в спектре соответствующего значения (доказано тестом Sturm см. §3.6 (R5.01.01)). В других случаях тест Sturm работает только в действующих моделях матриц GEP, при сложных видах в GEP и QEP используется NUME_MODE=NUME_ORDRE.
  • При деформации (TYPE_RESU='MODE_FLAMB' или TYPE_RESU='GENERAL'), собственные значения хранятся в порядке алгебраического возрастания sont Значения NUME_ORDRE и NUME_MODE принимают такое же значение в соответствии с вышеназванным порядком.

TYPE_RESU='GENERAL' позволяет решать задачи с собственными значениями в случае генеральной матричной системы. На данный момент его периметр ограничен стандартами GEP (действительных симметричных матриц). Единственная разница с MODE_FLAMB заключается в наименовании матриц: MATR_A/B в отличие от MATR_RIGI/MATR_RIGI_GEOM.

3.4 Ключевое слово: Метод

Для решения задач с собственным значением доступны четыре метода:

(см. таблицу 3.1.1):

 ◊  METHODE=/'SORENSEN'    [DEFAUT]

Мы пользуемся методом Sorensen (внешний набор программ ARPACK) для расчета собственных мод GEP или QEP (см. (R5.01.01/02) §7/4). Его пространство охватывает вещественные матрицы, как симметричные, так и несимметричные, а также сложносоставные симметричные матрицы А.

 ◊         /'TRI_DIAG'

Метод Lanczos (разновидность Newmann-pipano в GEP или Parlett & Saad в QEP) используется для расчета соответствующего мод GEP или QEP (см. (R5.01.01/02) §6/4). Его пространство ограничено симметричными вещественными матрицами.

 ◊        OPTION=/‘MODE_RIGIDE’
                 /'SANS'            [DEFAUT]

Ключевое слово используемое исключительно с методом Lanczos для GEP. Оно позволяет определить и рассчитать заранее при помощи алгебраического метода волны устойчивости определенной структуры. Он используется впоследствии для расчета других волн при помощи алгоритма Lanczos. Предоставляются они пользователю только по запросу. Если же режимы устойчивых структур рассчитывались без использования данной опции, собственные значения, рассчитанные при помощи алгоритма Lanczos будут не равными, но очень близкими к нулю.

 ◊         /'JACOBI'

Метод Bath e&Wilson (а после и метод Jacobi для проектируемой системы) используется для расчета соответсвующих режимов GEP (см. (R5.01.01) §8). Его пространство ограничено симметричной действительной матрицей.

 ◊     /'QZ'

Метод QZ используется во внешней библиотеке LAPACK для расчета соответствующих режимов GEP или QEP (cf. (R5.01.01/02) §9/5).Его пространство охватывает вещественные, симметричные и несимметричные матрицы, даже матрицы типа А (симметричные сложносоставные). Этот метод достаточно затратный, поэтому им следует пользоваться только в случае задач с маленькими значениями (103 степени подвижности).

3.4.1 Операнды IRAM (если METHODE=‘SORENSEN’)

 ◊  PREC_SOREN=pso          (0.)    [DEFAUT]

Примечание :

  • Метод подразумевает работу с наименьшей возможной точной величиной. Для того, чтобы обеспечить порядок возрастания, при двойном уточнении в стандартных машинах эта величина приблизительно равна 2.22 .10 -16.
 ◊	NMAX_ITER_SOREN=nso	(20)	[DEFAUT]
 ◊	PARA_ORTHO_SOREN=porso	(0.717)	[DEFAUT]

От параметров настройки зависит требуемая точность в режимах, количество авторизованных перезапусков метода Sorensen (cf. (R5.01.01) §7) и коэффициент ортогонализации IGSM Kahan-Parlett (см. (R5.01.01) annexe 2).Если коэффициент porso негативный, вместо того, чтобы рассчитывать цель только в режимах для соответствующего пространства, реортогонализация осуществляется во всех волнах. Поэтому расчет может обойтись в два или в три раза затратнее.

Для того, чтобы получить больше информации о выборе конкретного участка пространства нужно изучить параметры SEUIL_FREQ/CHAR_CRIT.

Примечание :

На первых порах не советуется менять параметры алгоритма на продвинутые, так как им опытным путем уже были заданы стандартизированные значения.

3.4.2 Операнды метода Lanczos (если METHODE=‘TRI_DIAG’)

 ◊	PREC_ORTHO   =po	(1.10 -12)	[DEFAUT]
 ◊	NMAX_ITER_ORTHO=nio	(5)	[DEFAUT]
 ◊	PREC_LANCZOS=pl	        (1.10-8)	[DEFAUT]
 ◊	NMAX_ITER_QR=nim	(30)	[DEFAUT]

Первые два параметра позволяют, соответственно, выверять точные значения ортогонализации и число реортогонализации по методу Lanczos для получения независимых векторов образующих подпространство (см. (R5.01.01) §6).

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

Последний фиксирует количество максимальных повторений для решения системы, решенной при помощи методa QR ((R5.01.01) annexe 1).

Примечание:

На первых порах строго не рекомендуется изменять заданные параметры, которым опытным путем были заданы стандартизированные значения

3.4.3 Операнды метода Bathe & Wilson (если METHODE=‘JACOBI’)

 ◊	PREC_BATHE   =pbat	(1.10-10)	[DEFAUT]
 ◊	NMAX_ITER_BATHE=nbat	(40)	[DEFAUT]
 ◊	PREC_JACOBI=pjaco	(1.10-2)	[DEFAUT]
 ◊	NMAX_ITER_JACOBI=njaco	(12)	[DEFAUT]

Первые два параметра позволяют, соответственно, уточнять конвергенцию и максимальное число повторений, которое возможно при методе Bathe & Wilson (cf. [[(R5.01.01])]§8).

Два других уточняют конвергенцию и максимальное количество повторений для метода JACOBI (cf. [[(R5.01.01])] annexe 3). Это модальное решающее устройство используется для расчета соответствующих мод матриц проектируемых при помощи Bathe & Wilson.

Примечание:

На первых порах строго не рекомендуется изменять заданные параметры, которым опытным путем были заданы стандартизированные значения

3.4.4 Операнды метода QZ (если METHODE=‘QZ’)

 ◊  TYPE_QZ = /'QZ_SIMPLE' [DEFAUT]
              /'QZ_EQUI'
              /'QZ_QR'

Этот метод позволяет выбрать один из вариантов алгоритма QZ, предложенного LAPACK. Первый вариант (‘QZ_SIMPLE’) обозначает базовый метод, второй (‘QZ_EQUI’) прибавляет к нему обработку балансировки границ матрицы. Она чаще всего улучшает качество мод, хотя, если матрица представлена с очень маленькими границами, эта фаза просто повлечет за собой появление мод-паразитов.

Что касается третьего варианта (‘QZ_QR'), он используется только в случаях, когда матрица симметрична (ригидная матрица, состояние Диришле без Лагранжа, отсутствие деформации или амортизации). Он гораздо более быстрый, чем первые предложенные опции.

3.5 Ключевое слово CALC_FREQ

 ◊  CALC_FREQ=_F(…

Ключевое слово величины для определения параметров расчета соответствующих мод и их числа.

3.5.1 Операнда FREQ

 ♦  FREQ=l_f
 ◊  TABLE_FREQ=table_f

Перечень частот (не может быть использован кроме как при TYPE_RESU=‘DYNAMIQUE’): использование которого зависит от выбранной опции.

 OPTION='BANDE'            Мы ждём двух переменных (fmin, fmax), которые определят зону поиска
 OPTION='CENTRE'           Ждём только значений частотности

Оговоренные переменные должны в обязательном порядке иметь положительные возрастающие значения.

При помощи опции 'BANDE', мы начинаем использование затратного теста Strum до тех пор, пока не будет определено количество волн в зоне поиска. Если мы проведем калибрацию в интересующей нас области при помощи INFO_MODE, мы сможем сэкономить на одной части затрат. Для этого нужно еще раз воспользоваться таблицей, созданной при помощи INFO_MODE. Пределы (fmin, fmax), позволят выделить одну или несколько линий вышеупомянутой таблицы.

Например, если таблица создана при помощи:

 INFO_MODE+FREQ= ( f0 , f1 , f2 , f3 , f4 , f5 )

То мы можем совместить одну часть подсчета затрат, помещая в MODE_ITER_SIMULT+'BANDE', FREQ= ( fmin= f1 , fmax = f4 ).

Этап предварительного использования MODE_ITER_SIMULT не будет функционировать в тесте Струма, однако позволит опознать в таблице поддиапазоны, включенные в интервал.

U4.52.03 3.5.1.png

Далее мы просто суммируем числа волн, соответствующие каждому интервалу. Это позволит уменьшить количество итоговых волн, среди которых будет осуществляться поиск.

Эта последовательная иерархическая структура данных позволяет существенно уменьшить добавочную стоимость начальной калибрации при помощи INFO_MODE. Рекомендуется пользоваться взять эту модель действий в качестве правила.

Примечания к иерархической структуре данных INFO_MODE+MODE_ITER_SIMULT+'BANDE':

  • Границы выборки (fmin, fmax) должны чётко соответствовать границам, которые будут сгенерированы при помощи начальной INFO_MODE (а VERI_MODE/PREC_SHIFT % près 3 ).
  • Выбор строк таблицы осуществляется применительно к начальным значениям частот. Но если они подвергаются смещениям (так как они могут быть расположены слишком близко к соответствующим модам), таблица показывает также и смещенные значения (значения FREQ_MIN/MAX напротив BORNE_MIN/MAX_EFFECT). Это сдвинутые конечные величины, которые подчиняются алгоритму MODE_ITER_SIMULT. Эта стратегия также сбеоегает эргономию опций и плотность логических характеристик: MODE_ITER_SIMULT+'BANDE' показывает тот же результат, что и при запуске фазы предварительной обработки как с, так и без таблицы с подготовленными заранее подсчетами.
  • Если одна из границ выборки должна быть смещена (заранее в INFO_MODE), фаза предварительной обработки включает ALARME для репродуцирования тех же самых характеристик, но для стандартных расчётов.
  • Таблица не должна содержать ни пустых ячеек, ни искажений вследствие недостаточной частоты выборки, в следствие которых может возникнуть ошибка препятствующая дальнейшей работе. В этом случае с цифрами они не могут быть нормально воспроизведены при помощи карты обусловленной INFO_MODE. Это правило позволяет обеспечить надежность схемы алгоритма: ни одной частотой нельзя пренебрегать!

3.5.2 Операнда AMOR_REDUIT

 ◊  AMOR_REDUIT=l_a

Стоимость сокращенной амортизации позволяет определить точное значение комплексной величины («shift»), вокруг которой мы осуществляем поиск наиболее близких соответствующих значений (cf. (R5.01.01) §5.4).. Эта опция не может быть использована кроме как в случае модальной задачи в сложных волнах: QEP и GEP в вещественных несимметричных матрицах либо матрицах типа A (сложносоставных симметричных).

 OPTION='CENTRE'           Мы ждем единственного показателя сокращенной амортизации

Оговоренное значение данного ключевого слова должно быть позитивным и быть от 0 до1. При деформации это ограничение не имеет никакого значения.

3.5.3 Операнда NMAX_FREQ

 ◊ NMAX_FREQ=nf (10 si OPTION='PLUS_PETITE', 1 si OPTION='PLUS_GRANDE') [DEFAUT]

Максимальные значения для расчетов.

При использовании опции ‘BANDE’ эта опция игнорируется, так как мы рассчитываем все соответствующие значения в оговоренной области.

Если nf строго превосходит число «градусов свободной активности», тогда nactif (см. (R5.01.01) §3.2), должно принять значение верхних лимитов.

3.6 Ключевое слово CALC_CHAR_CRIT

 ◊  CALC_CHAR_CRIT=_F(…

Ключевое слово для определения параметров расчетов соответствующих волн и их количества.

3.6.1 Операнда CHAR_CRIT

 ♦  CHAR_CRIT=l_c
 ◊  TABLE_CHAR_CRIT=table_c

Список критических функций (не может быть использован кроме как в случае, если указан TYPE_RESU=‘MODE_FLAMB’ или TYPE_RESU=‘GENERAL’): его использование зависит от выбранной опции:

 OPTION='BANDE'   Мы найдем переменные (λmin, λmax), которые определят область поиска.
 OPTION='CENTRE'  Мы найдем единственную переменную критической нагрузки  

Переменные используемые с этим ключевым словом могут быть как позитивными, так и негативными. В динамике или в QEP это не имеет никакой разницы.

При опции 'BANDE', мы начинаем использование затратного теста Strum для определения количества волн, содержащихся в поле поиска (см. (R5.01.04)). Если была заранее проведена калибровка интересующей нас области при помощи INFO_MODE, то пределы (λmin, λmax) указанные ниже позволят выделить одну или несколько строк в вышеупомянутой таблице.

Например, если таблица была создана при помощи:

 INFO_MODE+CHAR_CRIT= ( λ0 , λ1 , λ2 , λ3 , λ4 , λ5 )

То мы можем совместить одну часть расчета затрат, поставив в MODE_ITER_SIMULT+'BANDE', CHAR_CRIT=formule (λmin = λ1max = λ4). На этапе предварительной обработки MODE_ITER_SIMULT не следует пользоваться тестом Strum – лучше определить в таблице подобласти, включенные в интервал.

Предположим, что:

12]∪[λ23 ]∪[λ34] .

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

Примечания касательно иерархической системы структурирования данных INFO_MODE+MODE_ITER_SIMULT+'BANDE':

  • Границы выборки (λmin, λmax) должны четко соответствовать границам, которые будут сгенерированы при помощи начальной INFO_MODE (VERI_MODE/PREC_SHIFT près);
  • Выбор строк таблицы осуществляется применительно начальным значениям частот. Но если они подвергаются смещениям (так как они могут быть расположены слишком близко к соответствующим модам), таблица показывает также и смещенные значения (значения CHAR_CRIT_MIN/MAX против BORNE_MIN/MAX_EFFECT). Это сдвинутые конечные величины, которые подчиняются алгоритму MODE_ITER_SIMULT. Эта стратегия также сберегает эргономию опций и плотность логических характеристик: MODE_ITER_SIMULT+'BANDE' показывает тот же результат, что и при запуске предварительной обработки как с, так и без таблицы с имеющимися заранее подсчетами.
  • Если одна из границ выборки должна быть смещена (заранее в INFO_MODE), фаза предварительной обработки включает ALARME для репродуцирования тех же самых характеристик, но для стандартных расчётов.
  • Таблица не должна содержать ни дыр, ни искажений вследствие недостаточной частоты выборки, следствие которых может возникнуть ошибка, препятствующая дальнейшей работе. В этом случае с цифрами они не могут быть нормально воспроизведены при помощи карты обусловленной INFO_MODE. Это правило позволяет обеспечить надежность схемы алгоритма: ни одной частотой нельзя пренебрегать!

3.6.2 Операнда NMAX_CHAR_CRIT

 ◊  NMAX_CHAR_CRIT=nf  (10)     [DEFAUT]

Количество максимальных критических нагрузок для расчетов.

Это ключевое слово игнорируется при включении опции ‘BANDE’, так как мы подсчитываем все соответствующие значения заданной таблицы.

Если nf строго превосходит число «градусов свободной активности», тогда nactif (см. (R5.01.01) §3.2), должно принять значение верхних лимитов.

3.7 Операнда APPROCHE

 ◊  APPROCHE= /'REEL'      [DEFAUT]
              /'IMAG'
              /‘COMPLEXE’ (исключительно с Sorensen)

Это ключевое слово определяет тип подхода (реальный, воображаемый или смешанный) для выбора скалярного псевдопродукта QEP используемого при помощи метода Lanczos или Sorensen (см. (R5.01.02)).

Эта операнда используется для анализа свободных вибраций амортизированной или вращающейся структуры (собственные сложные волны, ключевое слово MATR_C должно заполняться заново). При деформации (TYPE_RESU=‘MODE_FLAMB’) эти уточнения не имеют никакого значения.

Примечание:

  • Во второй степени при методе Lanczos подходит только подход ‘IMAG’ с частотным нулевым пределом (‘OPTION=PLUS_PETITE’ ou ‘CENTRE’ avec f =0 ). При использовании Sorensen не подходит ни один.

3.8 Операнда Option

 ◊  OPTION= 'BANDE'

Мы ищем все соответствующие величины в данной области. Эта область определяется аргументом FREQ = (fmin, fmax) или при помощи того же, но CHAR_CRIT = (λmin, λmax) Опция относится исключительно к матрице GEP в симметричных вещественных матрицах.

 ◊  OPTION= 'CENTRE'

Мы ищем собственные значения NMAX_FREQ наиболее близкие к частоте f (аргументу ключевого слова FREQ = f ) или наиболее близкой критической нагрузки λ (аргумента ключевого слова CHAR_CRIT = λ ).

 ◊  OPTION= 'PLUS_PETITE' [DEFAUT]

Мы ищем наименее маленькие соответствующие значения NMAX_FREQ, либо наименьшие значения критической нагрузки NMAX_CHAR_CRIT.

 ◊  OPTION= 'PLUS_GRANDE' 

Мы ищем наибольшие подходящие NMAX_FREQ. Эта опция доступна только в случае TYPE_RESU='DYNAMIQUE', для обобщенных задач в вещественных симметричных матрицах.

Перечень матриц устойчивости и массы представлены в максимально прозрачном для пользователя виде.

При среднем квадратичном отклонении неровностей может быть полезно использование теста Strum в операнде VERI_MODE. В действительности, до конвертации в соответствующие физические частоты, данные могут быть очень маленькими и расположенными очень близко друг от друга.

 ◊  OPTION= 'TOUT' 

Мы ищем все моды, связанные с градусами свободной активности. Опция используется исключительно при методе QZ.

См. (R5.01.01/02) §2.5/3.8.

3.9 Операнды SEUIL_FREQ / SEUIL_CHAR_CRIT, PREC_SHIFT, NMAX_ITER_SHIFT

  # Если TYPE_RESU='DYNAMIQUE'
    ◊	PREC_SHIFT	=	p_shift	(0.05)	[DEFAUT]
    ◊	SEUIL_FREQ	=	f_seuil	(0.01)	[DEFAUT]
    ◊	NMAX_ITER_SHIFT	=	n_shift	(3)	[DEFAUT]

  # Если TYPE_RESU='MODE_FLAMB' или 'GENERAL'
    ◊	PREC_SHIFT	=	p_shift	(0.05)	[DEFAUT]
    ◊	SEUIL_CHAR_CRIT	=	c_seuil	(0.01)	[DEFAUT]
    ◊	NMAX_ITER_SHIFT	=	n_shift	(3)	[DEFAUT]

Ход модального расчета в данной операции нуждается в факторизации LDLT динамических матриц Q(λ) по типу, указанному в (R5.01.01/02) §2.5/3.8.

U4.52.03 3.9 1.png

Это разложение на простые множители зависит от цифровой погрешности, если λ близко к собственному значению задачи. Это обнаружено после сравнения десятичной погрешности диагоналей разложенной матрицы по отношению к их изначальным значениям (в абсолютной величине). Если погрешность превышает 106, матрица будет сингулярной.

Для GEP параметр SEUIL_* делает возможным определение «нуля по модулю один», т.е. собственное значение будет принято за ноль. В операторе, если разница между двумя собственными значениями меньше, чем это число, предполагается, что они неверны. Это необходимо, чтобы уточнить значение средней амплитуды требуемых модов.

Если значение динамично, то оно трансформируется в значение колебаний по формуле:

 omecor = (2πf_seuil)2

В то время как в балке:

 omecor = c_seuil  

Для QEP значение «нуля по модулю один» используется во время сортировки результатов модальных вычислений. Во время этой сортировки определяется является ли мод реальным, комбинированным комплексным или нечетным комплексным. Две формулы λ1, λ2 объединяются, если:

U4.52.03 3.9 2.png

Примечание:

  • Мод считается реальным, если мнимая часть меньше чем SEUILT=1E-7
  • Когда моды отсортированы только по реальным или полукомплексным, появляется информационное сообщение или предупреждение (ALGELINE4_87/88).

Другие параметры PREC_SHIFT и NMAX_ITER_SHIFT относятся к алгоритму со смещением пределов в интервале [fmin, fmax] (cf (R5.01.04) §3.2), который реализуется, когда они очень близки к собственному значению. Эти пределы fmin(или λmin в балках) или fmax( λmax ) затем смещаются вдоль границы сегмента p_shift%. Если динамическая матрица всегда считается «числовой сингулярной», то в данном случае, она постоянно смещается, до получения ALARME. Смещение происходит на n_shift.

U4.52.03 3.9 3.png

Фактически в динамике в балках смещение происходит аналогичным способом.

Говоря точнее, смещение происходит дихотомически: p_shift% в первый раз, 2xp_shift% во второй раз и так далее. Этот процесс делает возможным быстрый уход из «области сингулярности» к более низким затратам. Не следует увеличивать значения этих параметров, так как после смещений итоговые пределы могут сильно отличаться от первоначальных.

Более того, чтобы оставаться когерентными с «нулем по модулю один» (omecor):

  • Не стоит смещать значение меньше, чем его минимум
  • Меняемый предел должен оставаться меньше, чем «нуль»( ∣λ*∣<omecor ) по абсолютной величине. Следует менять смещение на большее или меньшее, чем это значение (в соответствии с тем, какой предел – положительный или отрицательный).

Замечание:

  • Предел интервала σ близок к собственному значению, когда факторизация LDLT динамической матрицы сходна с данным пределом (например, в GEP это записывается Q(σ) = A - σB ), что ведет к потере десятичной части или даже больше NPREC чисел (значение, определенное через ключевое слово SOLVER). Не ставя значение параметра (NPREC=7,8,9) можно избежать долгих рефакторизаций, которые эти смещения вызывают.
  • Таким же образом, избегая цифровых параметров линейных решателей (например, METHODE, RENUM, PRETRAITEMENTS) можно повлиять на критерий сингулярности
  • Примененяется данная техника смещений в двух случаях: вычислении теста Штурма (пре и/или постобработка) и создание динамических матриц работы. В случае провала алгоритма смещений: в первом случае вызывается ALARME, в другом случае вызывается остановка работы ERREUR_FATALE.

3.10 Операнда DIM_SOUS_ESPACE

 ◊DIM_SOUS_ESPACE=des
 ◊COEF_DIM_ESPACE=mse
      EXCLUS (“DIM_SOUS_ESPACE', “COEF_DIM_ESPACE')

Если ключевое слово DIM_SOUS_ESPACE не отражается или инициализировано со значением строго меньшим, чем число необходимых частот nf, оператор автоматически вычисляет подходящий размер подпространства проекции (#5.2 данного документа или (R5.01.01) #5.3) для COEF_DIM_ESPACE.

Благодаря мультипликативному фактору mse мы можем проецировать на пространство, чей размер пропорционален числу частот, содержащихся в интервале изучения. В инкапсуляции MODE_ITER_SIMULT, MACRO_MODE_MECA (U4.52.02) можно оптимизировать размер подпространств, который остается пропорциональным числу необходимых частот.

Можно также в ручном режиме скорректировать размер подпространства, используя ключевое слово DIM_SOUS_ESPACE (которое может быть больше, чем nf в данном случае).

В обоих случаях размер подпространства проекций ndim строго больше, чем число nactif ((R5.01.01) #3.2).

Замечание:

  • Если используется метод Соренсена (IRAM) и ndim-nf<2, необходима корректировка, чтобы ndim=nf+2. В квадратичном методе задача удваивается: 2*nf, 2*ndim.
  • Эти параметры бесполезны для метода (QZ)

3.11 Ключевое слово VERI_MODE

 ◊VERI_MODE=_F (…

Ключевое слово для определения параметров проверки собственных модов ((R5.01.01) #3.8).

3.11.1 Операнда STOP_ERREUR

 ◊STOP_ERREUR=/“OUI”    [DEFECT]
              /“NON”

Показывает оператору о необходимости остановки (‘OUI’) или продолжения (‘NON’) если один из критериев SEUIL или STURM (только с MODE_ITER_SIMULT) не отмечен. По умолчанию вывод не производится.

3.11.2 Операнда SEUIL

 ◊SEUIL=r         (1.10-6)        [DEFAUT]

Предел толерантности для нормы ошибки, относящейся к способу, который рассмотрен выше. ((R 5.01.01/02) алгоритм #2/#1). Также смотри параметр STOP_ERREUER

3.11.3 Операнда STURM

 ◊STURM=      /“OUI”    [DEFECT]
              /“NON”

Проверка, известная как STURM(‘OUI’) позволяет убедиться, что используемый оператором алгоритм определил точное число собственных значений в интервале поиска (#3.5/6/8 (R5.01.01)). Эта опция интересна только для GEP с реальными модами (но не для K комплексных и ассиметричных матриц). Смотрите также параметр STOP_ERREUR.

3.11.4 Операнда PREC_SHIFT

  ◊PREC_SHIFT=prs         (0.05)          [DEFAUT]

Этот параметр (процентный) позволяет определить интервал, содержащий вычисленные собственные значения, для этого используется проверка Штурма ((R5.01.01) алгоритм №2). Также используется для выбора строк массива, представленных в последовательности INFO_MODE+MODE_ITER_SIMULT+’BANDE’ (см. ключевые слова TABLE_FREQ/CHAR_CRIT). Эта опция интересна в GEP с реальными модами.

3.12 Операнда STOP_BANDE_VIDE

 ◊STOP_BANDE_VIDE=  /“OUI”    [DEFECT]
                    /“NON”

‘OUI’ останавливает вычисления, если не найдено ни одного собственного значения: срабатывает исключение (названное BandeFrequenceVide). Есть возможность продолжения выполнения. Ниже представлен пример в случае SDLL11a теста:

 try:
       MODE1=MODE_ITER_SIMULT     (MATR_RIGI=K_ASSE, MATR_MASS=M_ASSE,
                                   CALC_FREQ=_F (OPTION='BANDE”, FREQ= (100. , 200.)))
 except aster.BandeFrequenceVideError:
       MODE1=MODE_ITER_SIMULT (MATR_RIGI=K_ASSE, MATR_MASS=M_ASSE,                               
                               CALC_FREQ=_F (OPTION='BANDE”,
                               FREQ= (200. , 3500. ,)))

‘NON’ не останавливает вычисление (только вызывая ALARME) если не найдено ни одного собственного значения.

Это ключевое слово используется в макрокоманде MACRO_MODE_MECA (U4.52.02) чтобы избежать отсутствия собственных значений в ходе поиска. Эта опция не представляет интереса для метода QZ.

3.13 Операнда INFO

 ◊INFO= /1        [DEFAUT]
        /2

Отражает уровень вывода сообщений в файле MESSAGE

 1:    Выводит в файл «MESSAGE» собственные значения, координаты мода, норму ошибки и другие полезные параметры (#5.2)
 2:    Предназначено для разработчиков.

3.14 Операнда TITRATES

 ◊TITRE=ti

Титр, присоединенный к выводу оператора (U4.03.01)



4 Стадия проверки

Проверяем согласно опциям:

 OPTION=’BANDE’
Аргумент ключевого слова FREQ или ключевого слова CHAR_CRIT должны содержать ровно 2 значения
 OPTION=’CENTRE’
Аргумент ключевого слова FREQ или ключевого слова CHAR_CRIT должны содержать ровно 1 значение
 OPTION=’PLUS_PETITE’
Аргумент ключевого слова FREQ или ключевого слова CHAR_CRIT игнорируются.

Если уточнения и максимальное количество итераций нереалистические (ниже требуемой точности или отрицательное количество итераций), расчет не осуществляется.



5 Стадия выполнения

5.1 Стадия проверки

Матрицы A , B (и C ) аргументы ключевых слов (MATR_A/MATR_RIGI) и (MATR_B/MATR_MASS/MATR_RIGI_GEOM) (и MATR_C/MATR_AMOR), должны быть связными между собой (то есть опираться на ту же нумерацию и тот же способ хранения).

5.2 Действия по умолчанию

Если ключевое слово DIM_SOUS_ESPACE не инициализировано строго меньше числа частот nf (операнд NMAX_FREQ), оператор автоматически считает приемлемый размер проекционного подпространства через эмпирические формулы (см. §3.6.7):

  METHODE='SORENSEN’
  ndim=MIN (MAX (2+nf, mse*nf), nactif) с mse=2 по умолчанию

  METHODE='TRI_DIAG”
  ndim=MIN (MAX (7+nf, mse*nf), nactif) с mse=4 по умолчанию

  METHODE='JACOBI”
  ndim=MIN (MAX (7+nf, mse*nf), nactif) с mse=2 по умолчанию

где nactif число активных степеней свободы (например, общее число степеней свободы минус число степеней свободы LAGRANGE и меньше, чем число линейных отношений между ними, (R5.01.01) §3.2) и mse это фактор пропорциональной поправки через COEF_DIM_ESPACE.

Если GEP решена, то размер подпространства удваивается. Значения различных параметров выводятся в файл MESSAGE.



6 Модальные параметры/Модальное положение/Нормализация модов

В выходе этого оператора, реальные или комплексные собственные моды нормализованы наибольшими компонентами, которые не являются мультипликатором LAGRANGE. Чтобы выбрать другую норму, нужно использовать команду NORM_MODE (U4.52.11).

В случае динамичного расчета, структура данных mode_meca_ *, содержит частоты вибрации и связанные модальные деформированные, параметры (масса общая, общая жесткость, фактор участия, действительная масса). Определение этих параметров дано в (R5.01.03).

В случае расчета линейных балок, структура данных mode_flamb, не содержит только критические нагрузки и деформированные формы.

В случае обобщенного динамичного расчета реальные симметричные матрицы, модальное положение соответствует положению мода в спектре, определенном первоначальными матрицами.

Во всех других случаях, модальным положениям присвоено 1 в nf (nf количество выбранных модов) в порядке возрастания алгебраически. Все модальные положения следовательно положительные.



7 Вывод на печать

Для вывода результатов, отображающих параметры модели и координаты модов, необходимо использовать оператор IMPR_RESU (U4.91.01) следующим образом:

  • Для отражения модальных параметров только в форме массива:
 IMPR_RESU (RESU=_F (RESULTAT=mode,
                     TOUT_PARA=`OUI',
                     TOUT_CHAM= ` NON'));
  • Для отражения модальных параметров и собственных векторов:
 IMPR_RESU (RESU=_F (RESULTAT=mode, 
                     TOUT_PARA= ` OUI',
                     TOUT_CHAM= ` OUI'));



8 Сортировка модов / Характеристика mode_meca_*

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

Команда EXTR_MODE (U4.52.12) делает возможной для открытия информационную структуру mode_meca_*type модов, которая проверяет конкретный критерий и соединяет определенные информационные структуры mode_meca_*type.

Макрокоманда, позволяющая соединить команды MODE_ITER_SIMULT, NORM_MODE и EXTR_MODE была создана: MACRO_MODE_MECA (U4.52.02).



9 Вычисление

9.1 Пример 5 собственных модов ближайших к заданной частоте (100 Гц)

 mode=MODE_ITER_SIMULT (MATR_RIGI=rigid, 
                        MATR_MASS=masse,
                        CALC_FREQ=_F (OPTION= `CENTRE',
                        FREQ=100.,
                        NMAX_FREQ=5	)
                       )

9.2 Вычисление критических нагрузок в ленте

 mode=MODE_ITER_SIMULT (MATR_RIGI=rigid, 
                        MATR_RIGI_GEOM=riggeo,
                        TYPE_RESU= ` MODE_FLAMB',
                        CALC_FREQ=_F (  OPTION= `BANDE',
                        CHAR_CRIT= (-1.E8,1.5E8))
                       );

9.3 Последовательность INFO_MODE+MODE_ITER_SIMULT (из SDLS504a)

  nbmod1 = INFO_MODE (… 
                      TYPE_MODE='MODE_FLAMB”,
                      CHAR_CRIT= (- 1.E+6, - 5.E+5,0.0, 1.E+5,1.1E+6,),)

  RESULT0=MODE_ITER_SIMULT (…
                         CALC_CHAR_CRIT=_F (OPTION='BANDE”,                                                                                                                        
                         TABLE_CHAR_CRIT=nbmod1, 
                         CHAR_CRIT= (- 1.E+06,1.E+05)),
                         TYPE_RESU='MODE_FLAMB'
                           )