(U4.91.01) Процедура IMPR RESU для форматов 'RESULTAT' и 'ASTER'

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


1 Цель

Запись конечно-элементной модели или результатов расчета в файл формата 'RESULTAT' или конечно-элементной модели в формате 'ASTER'.

В настоящее время данная процедура позволяет записать по выбору:

  • конечно-элементную модель,
  • поля с узлами (смещения, температуры, собственные режимы, статические режимы),
  • поля узлов с элементами или с точками Гаусса (напряжения, общих усилий, внутренних переменных величин…).

Процедура IMPR_RESU позволяет также записать конечно-элементную модель и/или результаты в видимый файл, в первую очередь графическое изображение (см. документы (U7.05.01) (формат 'IDEAS'), (U7.05.11) (формат 'CASTEM'), (U7.05.21) (формат 'MED') и (U7.05.31) (формат 'ENSIGHT')). Для понятий типа resultat можно распечатать только часть информации, отобрав только поля или номера по порядку, необходимые для использования.

Для печати в формате 'RESULTAT' необходимо выбрать топологические единицы (узлы, ячейки, группы узлов и группы ячеек), результаты которых нужно распечатать. Также можно сократить количество распечатываемой информации, отправив запрос на распечатку только некоторых компонентов, значений в определенном пользователем интервале или экстремальных значений. Можно комбинировать возможности, например, для получения экстремального значения заданного компонента, особой топологической единицы и значений за определенный интервал по выбору пользователя.

Формат 'RESULTAT' не должен служить базой для хранения или обмена результатами; данный формат не постоянен.



2 Синтаксис

 IMPR_RESU (
 ◊ MODELE = mo, [modele]
 ◊ UNITE = unit, [I]
 ◊ FORMAT = / 'RESULTAT', [DEFAUT]
            / 'ASTER',
 / RESU = (_F (
    # Syntaxe de la procédure IMPR_RESU au format 'RESULTAT'
    ♦ | MAILLAGE = MA, [maillage]
      | / CHAM_GD = CH_GD, [cham_gd]
        / RESULTAT = RESU, [resultat]
      # Extraction d'un champ de grandeur de resu
          ◊ / TOUT CHAM = /'OUI', [DEFAUT]
                          /'NON',
            / NOM_CHAM = L_NOMSYMB, [l_K16]
          ◊ / TOUT_ORDRE = 'OUI', [DEFAUT]
            / NUME_ORDRE = LORDRE, [l_I]
            / LIST_ORDRE = LENTI, [listis]
            / NUME_MODE = LMODE, [l_I]
            / NOEUD_CMP = LNOECMP, [l_K16]
            / NOM_CAS = NCAS, [l_K16]
            / / ANGLE = LANGL, [l_R]
                  / FREQ = LFREQ, [l_R]
                  / LIST_FREQ = LREEL, [listr8]
                  / INST = LINST, [l_R]
                  / LIST_INST = LREEL, [listr8]
                    ◊ | PRECISION = / PREC, [R]
                                    / 1.0D-3, [DEFAUT]
                      | CRITERE = / 'RELATIF', [DEFAUT]
                                  / 'ABSOLU',
          # Paramètres
          ◊ / TOUT_PARA = /'OUI',
                          /'NON', [DEFAUT]
            / NOM PARA = L_NOMPARA, [l_K16]
          ◊ FORM_TABL = /'OUI',
                        /'EXCEL',
                        /'NON', [DEFAUT]
     # Sélection des composantes
     ◊ / TOUT CMP = 'OUI', [DEFAUT]
       / NOM_CMP = L_NOMCMP, [l_K8]
     # Sélection des entités topologiques
     ◊ / TOUT = 'OUI', [DEFAUT]
       / | NOEUD = L_NOEU, [l_noeud]
         | GROUP_NO = L_GRNO, [l_gr noeud]
         | MAILLE = L_MAILLE, [l_maille]
         | GROUP_MA = L_GRMA, [l_gr_maille]
     # Sélection sur les valeurs
     ◊ VALE_MAX = /'OUI',
                  /'NON', [DEFAUT]
     ◊ VALE_MIN = /'OUI',
                  /'NON', [DEFAUT]
     ◊ BORNE_SUP = VSUP, [R]
     ◊ BORNE_INF = VINF, [R]
     # Impression des coordonnées
     ◊ IMPR_COOR = /'OUI',
                   /'NON', [DEFAUT]
     # Choix du format d’écriture des valeurs réelles
     ◊ FORMAT_R = / FORM,
                   / '1PE21.14', [DEFAUT]
     ◊ SOUS_TITRE = L_ST, [l_Kn]
     # Syntaxe de la procédure IMPR_RESU au format 'ASTER'
     ♦ | MAILLAGE = MA, / [maillage]
                        / [squelette]
       ◊ SOUS_TITRE = L_ST, [l_Kn]
    )),
 / CONCEPT = (_F (
     # Pour imprimer quelques champs de « donnée » :
     # Voir les explications dans U7.05.21
     # (Ne fonctionne que pour FORMAT='RESULTAT')
     / CHAM_MATER = chmat,
     / CARA_ELEM = caraele,
          ◊ REPERE LOCAL = / 'OUI',
                           / 'NON', [DEFAUT]
          # si REPERE_LOCAL = 'OUI',
                ♦ MODELE = mo [modele]
     / CHARGE = charge,
     )),
 )



3 Условные символы в документации IMPR_RESU

Для правильного понимания документации IMPR_RESU необходимо знать, что термин 'RESULTAT' объединяет в коде Code_Aster три отличающихся друг от друга понятия:

  • тип понятия,
  • тип файла,
  • формат записи.

Действительно, с одной стороны, результатом называют величины, созданные оператором путем вычислений Aster, что ведет к созданию нескольких полей (оценочный расчет, расчет собственных режимов и т. д.).

Эти данные (результаты) хранятся в структуре данных Aster типа родовая, называемой resultat. Данный тип родовой структуры делится на подтипы, например mode_meca, evol_elas, и т. д., способ хранения которых немного отличается. Понятие типа resultat имеет только один подтип. В документации Aster имена типов понятий записываются строчными буквами шрифтом Courier.

С другой стороны, результаты, выводимые на печать, а именно полученные из IMPR_RESU, сохраняются в файле, обозначенном как файл RESULTAT (связан с единицей 8 типа resu в astk). Формат записи связан с этим файлом, выводимым на печать, который также озаглавлен RESULTAT.

Заключение:

résultat данные получены в результате системных операций
resultat
evol_ther
родовое обозначение типа понятия (заданной структуры, содержащей результат)
mode_meca имя подтипа результата типа resultat
FICHIER (без кавычек) обозначение файла, содержащего результаты, независимо от формата его содержимого
'RESULTAT' (с кавычками) обозначение формата (Aster) файла, содержащего результаты



4 Операнды FORMAT и UNITE

Процедура IMPR_RESU позволяет записать конечно-элементную модель и/или значения результатов в различных видимых форматах, в частности, графических форматах для хранения изображений (U7.05.01), (U7.05.11), (U7.05.21) и (U7.05.31).

Операнд FORMAT позволяет уточнить формат печати результата.

Формат 'RESULTAT' принят по умолчанию. Он позволяет вывести на печать сведения из конечно-элементной модели и/или результаты в форме listing.

Следует уточнить, в какой файл записываются данные при помощи ключевого слова UNITE (см. команда DEFI_FICHIER). По умолчанию, UNITE = 8 в формате 'RESULTAT' и UNITE = 26 в формате 'ASTER'.



5 Ключевое слово RESU

Данное определяющее ключевое слово позволяет установить порядок вывода результатов на печать и их формат.



6 Операнды CHAM_GD и RESULTAT

Значения рассчитываемых полей хранятся в структурах данных, называемых полями величин. Поля величин могут находиться в прямом доступе (понятие cham_gd) или в структуре данных, объединяющей поля величин (понятие resultat).

  • поле величины представляет собой структуру данных, позволяющую хранить поля с узлами (cham_no_*) или поля элементов (cham_elem_*). Поля элементов делятся на поля узлов с элементами поля с точками Гаусса элементов;
  • понятие resultat состоит из нескольких полей величин. Например, на каждом шаге расчета в структуре данных resultat сохраняется поле величины смещения. Таким образом, данная структура индексируется матричной структурой второго порядка, один индекс которой, например, представляет собой перечень моментов расчета, а другой — совокупность полей расчета (смещения, усилия, деформации и т. д.).

В данном случае доступ к полю величины осуществляется путем уточнения переменной величины доступа (номер по порядку, момент расчета, частота, номер режима и т. д.) и имени поля ('DEPL', 'SIGM_ELNO'и т. д.). Есть несколько типов понятий resultat : evol_elas, evol_noli, mode_meca и т. д. Каждому соответствует перечень полей и перечень допустимых переменных доступа.

С другой стороны, понятие resultat также связано с некоторым количеством дополнительных результатов (например, совокупность родовых понятий или модальные факторы участия в модальном расчете (понятие resultat типа mode_meca), отличающихся для каждого значения переменной доступа. Эти дополнительные результаты называются параметрами.

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

  • сведения о структуре данных (например, перечень переменных доступа, перечень уже рассчитанных полей и т. д.),
  • выборочный доступ к полю величины (например, печать поля существующих на данный момент смещений t=15),
  • печать значений параметров.

Операнд RESULTAT позволяет вывести на печать содержимое полей понятия resultat. Также можно вывести на печать только некоторые поля (сравните ключевое слово ниже: NOM_CHAM) из некоторых компонентов некоторых узлов (ср. NOEUD_CMP).



7 Извлечение поля величины

7.1 Операнды TOUT_CHAM / NOM_CHAM

См. документ (U4.71.00).

7.2 Операнды TOUT_ORDRE / NUME_ORDRE / LIST_ORDRE / NUME_MODE / INST / LIST_INST / FREQ / LIST_FREQ / NOEUD_CMP / NOM_CAS / ANGLE / PRECISION / CRITERE

См. документ (U4.71.00).



8 Параметры

8.1 Операнд TOUT_PARA

Данное ключевое слово указывает, надо ли печатать все величины параметров, привязанные к понятию типа resultat.

Например:

 IMPR_RESU(RESU=(_F(RESULTAT= resu, TOUT_PARA= 'OUI';, NUME_ORDRE= 3)))

Из файла RESULTAT печатают значения всех параметров, но только для третьего шага расчетов понятия resultat типа mode_meca:

Печать параметров понятия resu для порядкового номера 3:

  NOM_MODE      3
  FREQ	        1.09787E+4
  OMEGA2        4.75843E+09
  AMOR_REDUIT	0.00000E+00
  ERREUR        2.76853E-10
  MASS_GENE	1.50009E-07
  RIGI_GENE	7.13806E+02
  ........	
  ........	
  NORME	        SANS_CMP: LAGR

8.2 Операнд NOM_PARA

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

Ключевые слова TOUT_PARA и NOM_PARA не могут использоваться одновременно.

Например:

 IMPR_RESU(RESU=(_F( RESULTAT= resu,
                     NOM_PARA= ('NORME'), NUME_ORDRE= 3)))

Из файла RESULTAT печатают значение параметра имени 'NORME', но только для третьего шага расчета понятия resultat типа mode_meca:

Печать параметров понятия resu для порядкового номера 3:

 NORME SANS_CMP: LAGR

8.3 Операнд FORM_TABL

Данное ключевое слово позволяет вывести на печать значения параметров либо в форме таблицы, каждая строчка которой ограничена 80 символами (FORM_TABL = 'OUI'), либо в форме таблицы, каждая строчка которой может быть увеличена до 2000 символов (FORM_TABL = 'EXCEL'), либо в форме перечня (один параметр в строчке) (FORM_TABL = 'NON').

По умолчанию параметры выводятся на печать в форме таблицы.

Например:

 1/ FORM_TABL = 'OUI'
 NUME_ORDRE NUME_MODE         ITER_QR           ITER_BATHE
            FREQ              OMEGA2            AMOR_REDUIT
            MASS_GENE         RIGI_GENE         AMOR_GENE
            MASS_EFFE_DY      MASS_EFFE_DZ      FACT_PARTICI_DX
            FACT_PARTICI_DZ   MASS_EFFE_UN_DX   MASS_EFFE_UN_DY
            NORME             METHODE
 2/ FORM_TABL = 'EXCEL'
 NUME_ORDRE     NUME_MODE     ITER_QR     ITER_BATHE   ...



9 Выбор из компонентов

Другой способ сократить объем печати — печатать только значения некоторых компонентов (например, только значение смещения по оси X: компонент DX).

9.1 Операнд TOUT_CMP

Данное ключевое слово позволяет уточнить, что на печать будут выведены только компоненты поля.

9.2 Операнд NOM_CMP

Данное ключевое слово позволяет выбрать перечень компонентов cham_gd или все поля понятия résultat, которые нужно напечатать.

Ключевые слова TOUT_СМР и NOM_СМР не могут использоваться одновременно.

Данные компоненты описаны в специальной документации элементов.



10 Выбор топологических единиц

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

10.1 Операнд TOUT

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

10.2 Операнд NOEUD

Данное ключевое слово указывает на перечень узлов, из которого нужно распечатать сведения cham_no. Если данное ключевое слово используется для вывода на печать операнда cham_elem, оно игнорируется, и информация операнда cham_elem выводится на печать, включая информацию всех специфических ячеек.

10.3 Операнд GROUP_NO

Данное ключевое слово указывает на перечень групп узлов, из которых нужно распечатать сведения операнда cham_no. Если данное ключевое слово используется для вывода на печать операнда cham_elem, оно игнорируется, и информация операнда cham_elem выводится на печать, включая информацию всех специфических ячеек.

10.4 Операнд MAILLE

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

10.5 Операнд GROUP_MA

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



11 Выбор из значений

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

11.1 Операнд VALE_MAX

Данное ключевое слово указывает, что нужно напечатать максимальное значение каждого компонента поля, по возможности в заданном интервале, определенном аргументами BORNE_SUP и/или BORNE_INF.

11.2 Операнд VALE_MIN

Данное ключевое слово указывает, что нужно напечатать максимальное значение каждого компонента поля, по возможности в заданном интервале, определенном аргументами BORNE_SUP и/или BORNE_INF.

11.3 Операнд BORNE_SUP

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

11.4 Операнд BORNE_INF

Данное ключевое слово указывает нижнюю границу интервала, поле которого нужно напечатать. На печать выводятся только значения поля, превышающие значения указанной нижней границы.



12 Печать координат: операнд IMPR_COOR

Данное ключевое слово позволяет уточнить, нужно ли печатать координаты узла при записи операнда cham_no в формате 'RESULTAT'.



13 Операнд FORMAT R

 ◊ FORMAT_R = / FORM,
              / '1PE21.14'; [DEFAUT]

Позволяет уточнить формат записи реальных значений в формате 'RESULTAT'.



14 Примечание

В коде Aster есть операнды cham_elem, содержащие вещественные значения с дробной частью (для операндов cham_elem с узлами и для операндов cham_elem с точками Гаусса). В формате 'RESULTAT' операнд IMPR_RESU позволяет выводить на печать информацию операндов cham_elem, содержащих вещественные значения с дробной частью.

Если один и тот же операнд cham_elem имеет ячейки, содержащие вещественные значения с дробной частью и ячейки, содержащие целочисленные значения, печать информации операнда cham_elem производится в два этапа:

  • сначала печать информации из операнда cham_elem всех ячеек, содержащих целочисленные значения;
  • затем печать информации из операнда cham_elem всех ячеек, содержащих вещественные значения с дробной частью.

Особый формат используется для всех видов печати.



15 Операнд SOUS_TITRE

Данный аргумент позволяет печатать подзаголовок комментария. Более подробное описание см. в документе (U4.03.01).

Операнд SOUS_TITRE по умолчанию:

  • для операнда cham_gd
    • для операнда cham_no
  SOUS_TITRE = ('CHAMP AUX NOEUDS')
  • для операнда cham_elem
  SOUS_TITRE = ('CHAMP PAR ELEMENT &LOC(cham_elem)')
Например: "CHAMP PAR ELEMENT AUX POINTS DE GAUSS" ("ПОЛЕ ЭЛЕМЕНТОВ С ТОЧКАМИ ГАУССА")
  • для операнда resultat
    • для операнда cham_no
   SOUS_TITRE =
     ('CHAMP AUX NOEUDS',
      'DE NOM SYMBOLIQUE &NOM_SYMB(Resultat cham_no)&RL',
      'NUMERO D'ORDRE &NUM_ORDRE(Resultat cham_no)',
      '&ACCES(Resultat cham_no)')
Пример печати:
     CHAMP AUX NOEUDS DE NOM SYMBOLIQUE DEPL
     NUMERO D'ORDRE: 2 NUME_MODE: 3
     FREQ : 5.52739E+00
  • для операнда cham_elem
     SOUS_TITRE =
     ( 'CHAMP PAR ELEMENT &LOC(Resultat cham_elem)',
       'DE NOM SYMBOLIQUE &NOM_SYMB(Resultat cham_elem)&RL',
       'NUMERO D'ORDRE &NUM_ORDRE(Resultat cham_elem)',
       '&ACCES(Resultat cham_elem)')
Пример печати:
     CHAMP PAR ELEMENT AUX NOEUDS DE NOM SYMBOLIQUE
     EPSI_ELNO NUMERO D'ORDRE: 1
     INST : 0.00000E+00

16 Печать конечно-элементной модели: операнды MAILLAGE/MODELE

Данный аргумент позволяет распечатать конечно-элементную модель в формате FORMAT = 'ASTER' и/или 'RESULTAT'. Также можно использовать формат для LIRE_MAILLAGE (U4.21.01) и описанный в (U3.01.00).

По умолчанию на печать выводятся сведения всей конечно-элементной модели.

Понятие типа modele является факультативным при большинстве способов печати. Тем не менее, его можно использовать в случае вывода на печать конечно-элементной модели в форматах 'ASTER' и/или 'RESULTAT' или печати только части конечно-элементной модели, ячейки которой относятся к формату модель.

При выборе формата 'ASTER' конечно-элементная модель записывается в файл типа .mail, который затем считывается из LIRE_MAILLAGE.

При выборе формата 'RESULTAT' конечно-элементная модель записывается по умолчанию в файл .resu и не считывается из LIRE_MAILLAGE, так как файл .resu содержит, кроме прочего, заголовки, подзаголовки и, при необходимости, другую информацию.