(U4.51.03) Оператор STAT NON LINE

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


Содержание

1 Цель

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

Любая нелинейность зависит либо от свойств материала (например, пластмасса), либо от геометрии (например, при больших смещениях), либо от контактного трения. Чтобы иметь подробные данные об используемом в решении методе, каждый из них будет ссылаться на документацию (R5.03.01).

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

Если времени, необходимого для выполнения вычислений, не достаточно, программа останавливается, и если база данных была определена в профиле пользователя, то полученные результаты вычисления сохраняются. Продукт представляет собой структуру данных типа evol_noli.



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

  statnl [evol_noli] =  STAT_NON_LINE
   ( reuse = statnl, 			[evol_noli]
    ♦ MODELE = mo , 			[model]
    ♦ CHAM_MATER =  chmat ,	[cham_mater]
    ♦  CARA_ELEM=carac , 		[cara_elem]
    ♦ EXCIT=_F (
    ♦ CHARGE=chi , 		[char_meca]
        FONC_MULT=fi ,    [function/formulate]
        TYPE_CHARGE= / “FIXE_CSTE” [DEFECT]
                     / “FIXE_PILO”
                     / “SUIV”
                     / “DIDI”
   ),
   ♦ CONTACT=contact , 		[char_contact]
   ♦ SOUS_STRUC=_F (
   ♦ CAS_CHARGE=chi ,		 [char_meca]
   ♦ / TOUT= 'OUI', 			 [DEFAUT]
     / SUPER_MAILLE =lma , 		 [l_maille]
      FONC_MULT=fmult ,
                    ),
   ♦ | COMP_INCR=_F 		(см. [U4.51.11]),
     | COMP_ELAS=_F 	(см. [U4.51.11]),
   ♦ ETAT_INIT=_F (
   ♦ / |SIGM=sig ,	 [cham_elem_SIEF_R]
       |VARI=vain , 	[cham_elem_VARI_R]
       |DEPL=depl , 	[cham_no_DEPL_R]
       |STRX=strx	 [cham_elem_STRX_R]
    / EVOL_NOLI =evol , 		[evol_noli]
    / NUME_ORDRE =nuini, 		[I]
    / INST =instini , 			[R]
   ♦ PRECISION  =  /1.0E-3, 			[DEFAUT]
 		   / prec, 			[R]
   ♦ CRITERE = / “RELATIF”,	 	[DEFECT]
               / “ABSOLU”,
   ♦ NUMERIQUE_DIDI  =  nudidi ,	[I]
   ♦ INST_ETAT_INIT = istetaini	[R]
                   ),
   ♦ INCREMENT=_F (
   ♦ LIST_INST= /litpsr8, 	[listr8]
                /litps, 	[list_inst]
                /NUME_INST_INIT =  nuini ,	[I]
                /INST_INIT =  instini ,		[R]
                /NUME_INST_FIN =  nufin ,	[I]
                /INST_FIN =  INSTFIN , 		[R]
   PRECISION= /1.0E-3, 		[DEFAUT]
              /prec, [R]
                  ),
   ♦ CRIT_QUALITE =_F (
   ♦ /ERRE_TEMPS_THM = /“NON” 		[DEFECT]
                     = /“OUI”
                      )
   ♦ METHODE= /“NEWTON”, 			[DEFECT]
              /“IMPLEX”,
              /“NEWTON_KRYLOV”,
   ♦ NEWTON=_F (
     PREDICTION  =   /“TANGENTE”, 	[DEFECT]
                     /“ELASTIQUE”,
                     /“EXTRAPOLE”,
                     /“DEPL_CALCULE”,
     EVOL_NOLI=  evol_noli , 			[evol_noli]
     MATRICE   =  /“TANGENTE”,		[DEFECT]
                  /“ELASTIQUE”
     REAC_INCR= /1, 				[DEFAUT]
                /mf,				 [I]
     REAC_ITER= /0, 				[DEFAUT]
                /it, 				[I]
     REAC_ITER_ELAS = /0,			[DEFAUT]
                      /it, 			[I]
     PAS_MINI_ELAS = /0, 			[DEFAUT]
                     /pasmini, 		[R]
               ),
   ♦ RECHERCHE_LINEAIRE=_F (
     METHODE  = /“ROPE”		 [DEFECT]
                /“MIXTE”
                /“PILOTAGE”
     RESI_LINE_RELA =  /1.E-1, 	 [DEFAUT]
                       /reslin, 	 [R]
     ITER_LINE_MAXI= /3		 [DEFAUT]
                     /itelin		 [I]
     RHO_MIN = /1.E-2			 [DEFAUT]
               /rmin 			 [R]
     RHO_MAX =  /1.E+1		 [DEFAUT]
                /rmax 			 [R]
     RHO_EXCL= /9.E-3 			 [DEFAUT]
               /rexc 			 [R]
                          ),
   ♦ PILOTAGE=_F (
   ♦ TYPE  = 	/“DDL_IMPO”,
                /“SAUT_IMPO”,
                /“LONG_ARC”,
                /“SAUT_LONG_ARC”
                /“ANA_LIM”,
                /“DEFORMATION”,
                /“PRED_ELAS”,
    TOUT= 'OUI',					 [DEFAUT]
    /GROUP_MA = lgrma , 			 [l_gr_maille]
    /MAILLE = lma ,				 [l_maille]
    /NOEUD = no , 				 [node]
    /GROUP_NO = rno , 				 [gr_noeud]
    FISSURE= fiss , 				 [sd_fiss_xfem],
    NOM_CMP= nomcmp ,			 [kN]
    /DIRE_PILO = direpilo ,			 [kN]
    COEF_MULT= /1. ,				 [DEFAUT]
               /cmult,			 [R]
    ETA_PILO_R_MAX = etarmax ,		 [R]
    ETA_PILO_R_MIN = etarmin ,		 [R]
    ETA_PILO_MAX = etamax , 		 [R]
    ETA_PILO_MIN = etamin 			 [R]
    PROJ_BORNES = /“OUI”			 [DEFECT]
                  /“NON”
    EVOL_PARA= /“SANS”			 [DEFECT]
               /“DECROISSANT”
   /“CROISSANT”	
SELECTION = /“NORM_INCR_DEPL”,	 [DEFECT]
   /“ANGL_INCR_DEPL”,
   /“RESIDU”,
                       ),
   ♦ SOLVEUR=_F	 (см. [U4.50.01]),
   ♦ CONVERGENCE=_F (
     / RESI_GLOB_RELA =1.E-6 , [DEFAUT]
     / | RESI_GLOB_MAXI= resmax , 		[R]
       | RESI_GLOB_RELA= resrel , 		[R]
       | RESI_COMP_RELA= rescmp , 		[R]
       | RESI_REFE_RELA= resref , 		[R]
    SIGM_REFE=sigref ,				[R]
    EPSI_REFE=sigref , 				[R]
    DEPL_REFE=depref ,			[R]
    FORC_REFE=forref , 			[l_R]
    VARI_REFE=varref , 			[R]
    FLUX_THER_REFE=sigref , 		[R]
    FLUX_HYD1_REFE=sigref , 		[R]
    FLUX_HYD2_REFE=sigref ,		[R]
    ITER_GLOB_ELAS = /25,			[DEFAUT]
                     /maxelas, 		[I]
    ITER_GLOB_MAXI= /10, 			[DEFAUT]
 	            /maglob, 		 [I]
    TYPE  = /“PIC” 		 [DEFECT]	
            /“PLATEAU”
    PLATEAU_ITER = /3 	 [DEFAUT]
                   /plaite	 [I]
    PLATEAU_RELA = /1.E-3  	 [DEFAUT]
                   /plarel  [R]
    ARRET = /“OUI”, 		 [DEFECT]
            /“NON”,
                      ),
   ♦ CRIT_STAB=_F (
      TYPE  = /“BUCKLING” 	[DEFECT]
            = /“STABILITY”
      NB_FREQ = /3, 		[DEFAUT]
                /nbfreq, 		[I]
      COEF_DIM_ESPACE = /5,		 [DEFAUT]
                        /coef, 	 [I]
      RIGI_GEOM = /“OUI”, 		 [DEFECT]
                = /“NON”,
      MODI_RIGI	= /“NON”,		 [DEFECT]
                = /“OUI”,
      CHAR_CRIT  = /(- 10.10), 		 [DEFAUT]
                   / intcc,
      DDL_EXCLUS = liste1_ddl
      DDL_STAB = liste2_ddl
     /LIST_INST =liste_r8 , 		[listr8]
     /INST =l_r8 , 				[R]
     /PAS_CALC =npas ,			[I]
   ♦ PRECISION= /1.E-6, 	 [DEFAUT]
                /prec,	 [R]
   ♦ CRITERE = /“RELATIF”,		 [DEFECT]
               /“ABSOLU”,
     SIGNE = /“POSITIF_NEGATIF”, 	 [DEFECT]
           = /“POSITIF”,
           = /“NEGATIF”,
     PREC_INSTAB= /1.E-6, 		 [DEFAUT]
                  /prec_instab,	 [R]
                         ),
   ♦ ENERGIE=_F ()
   ♦ ARCHIVAGE=_F (
    /LIST_INST = liste_r8 ,		[listr8]
    /INST =l_r8 , 				[R]
    /PAS_ARCH = npas, 			[I]
   ♦ PRECISION = /1.E-6, 		[DEFAUT]
                 /prec, 		[R]
   ♦ CRITERE= /“RELATIF”, 		[DEFECT]
              /“ABSOLU”,
   ♦ CHAM_EXCLU= list_txt,
                         ),
   ♦AFFICHAGE=_F (
   ♦ UNITE = /unit [I]
   ♦ INFO_RESIDU = /“NON”, [DEFECT]
                   /“OUI”
   ♦ INFO_TEMPS= /“NON”, [DEFECT]
                 /“OUI”
              ),
   ♦ OBSERVATION = _F (
   ♦ TITLE =  titre , 		[list_k]
   ♦ NOM_CHAM =  |'DEPL',
                 |'VITE',
                 |'ACCE',
                 |'DEPL_ABSOLU',
                 |'VITE_ABSOLU',
                 |'ACCE_ABSOLU',
                 |'SIEF_ELGA',
                 |'VARI_ELGA',
                 |'FORC_NODA',
                 |'VALE_CONT',
   ♦ EVAL_CHAM =  /“VALE”,	 [DEFECT]
                  /“MIN”,
                  /“MAX”,
                  /“MOY”,
                  /“MINI_ABS”,
                  /“MAXI_ABS”,
   ♦ NOM_CMP = lnocmp , 			[l_Kn]
   ♦ EVAL_CMP   =  /“VALE”, 		[DEFECT]
                   /“FORMULA”,
   { If EVAL_CMP = 'FORMULATE'
   ♦ FORMULE = form			 [formule_aster]
   }
   {If CHAM is of type ELGA (SIEF_ELGA, VARI_ELGA)
   ♦ TOUT= 'OUI', 			[DEFAUT]
   ♦ / GROUP_MA = lgrma , 		[l_gr_maille]
   ♦ /MAILLE =	lma , 			[l_maille]
   ♦ EVAL_ELGA= /“VALE”, 		[DEFECT]
                /“MIN”,
                /“MAX”,
   {If EVAL_ELGA ='VALE'
   ♦ POINT= pi , 		[I]
   ♦ SOUS_POINT = spi ,	[I]
   }
  }
   {If CHAM is of type NOEU
   ♦ TOUT= 'OUI', 		[DEFAUT]
   ♦ / GROUP_MA = lgrma ,	[l_gr_maille]
   ♦ /MAILLE=lma , 		[l_maille]
   ♦ /NOEUD=no , 		[node]
   ♦ /GROUP_NO =rno , 	[gr_noeud]
   }
   ♦ /LIST_INST =linst ,		[listr8]
   ♦ /INST =linst , 			[l_R]
   ♦ /PAS_OBSE =pas , 			[I]
   ♦ CRITERE= /“RELATIF”,		[DEFECT]
              /“ABSOLU”,
   { If CRITERE= 'RELATIF'
   ♦ PRECISION= /1.0E-6,	 [DEFAUT]
                /prec,	 [R]
   }
   { If CRITERE= 'ABSOLU'
   ♦ PRECISION=prec , [R]
   }
               ),
   ♦ SUIVI_DDL = _F (
   ♦ TITLE =  titre , 			[list_k]
   ♦ NOM_CHAM  =	|'DEPL',
                        |'VITE',
                        |'ACCE',
                        |'SIEF_ELGA',
                        |'VARI_ELGA',
                        |'FORC_NODA',
   ♦ EVAL_CHAM = 	/“VALE”,	[DEFECT]
                        /“MIN”,
                        /“MAX”,
                        /“MOY”,
                        /“MINI_ABS”,
                        /“MAXI_ABS”,
   ♦ NOM_CMP = lnocmp ,		[l_Kn]
   ♦ EVAL_CMP = /“VALE”, 		[DEFECT]
                /“FORMULA”,
   {If EVAL_CMP='FORMULATE'
   ♦ FORMULE = form 			[formule_aster]
   }
   {If CHAM is of type ELGA (SIEF_ELGA, VARI_ELGA)
   ♦TOUT= 'OUI', 			[DEFAUT]
   ♦ / GROUP_MA = lgrma , 		[l_gr_maille]
   ♦ /MAILLE = lma , 			[l_maille]
   ♦EVAL_ELGA =	/“VALE”, 	[DEFECT]
                /“MIN”,
                /“MAX”,
   {If EVAL_ELGA ='VALE'
   ♦ POINT = pi ,		 [I]
   ♦ SOUS_POINT = spi ,	 [I]
   }
  }
   {If CHAM is of type NOEU
   ♦ TOUT= 'OUI', 		[DEFAUT]
   ♦ / GROUP_MA = lgrma ,     [l_gr_maille]
   ♦ /MAILLE = lma ,		 [l_maille]
   ♦ /NOEUD = no , 		 [node]
   ♦ /GROUP_NO = rno , 	 [gr_noeud]
   } 
            ),
   ♦ INFO  = 	/1,			 [DEFAUT]
                /2,
   ♦ TITRE = tx 				 [kN]
   );



3 Операнды

3.1 Операнды MODELE/CHAM_MATER/CARA_ELEM

 ♦   MODELE  =  Мо 

Имя модели, элементы которой являются предметом механических вычислений.

 ♦  CHAM_MATER  =  chmat 

Имя области материала модели Мо, подвергшееся воздействию. Внимание, все основные ячейки модели должны быть связаны с материалом (если это не критичная ошибка с неточной трактовкой).

 ♦  CARA_ELEM  =   carac 

Имя характеристик (carac) элементов оболочки, балки, канала, панели, кабеля, и дискретные элементы, которые влияют на модель Мо. Очевидно, это ключевое слово является необязательным: если модель не содержит такие элементы, его наличие будет мало полезно; с другой стороны, если модель содержит такие элементы, то его необходимо задать.

3.2 Ключевое слово EXCIT

 ♦  EXCIT  =   F  () .

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

3.2.1 Оператор CHARGES

 ♦  LOAD  =  chi

chi- механическая нагрузка (возможно включая область температуры) для i-ой составляющей EXCIT .

Примечание:

  1. С точки зрения термомеханических вычислений, если начальная температура отличается от заданной температуры (оператор AFFE_MATERIAU), то область деформации в начальный момент времени может оказаться несовместимой, и привести к состоянию воздействия и интернировать переменные, связанные с ненулевыми. Если Вы будете использовать инкрементную модель свойств (ключевое слово COMP_INCR), и явно не определите состояние воздействия, начальные значения интернируемых переменных, область напряжения и интернируемые переменные, рассчитанные с помощью первого инкремента, то будет принято во внимание только первое колебание температуры, считая от начального момента времени до первого раза, и не будет возможного влияния совместимости, связанного с начальной температурой. Чтобы учесть начальное состояние, нужно задать его явно, например, с помощью ключевых слов SIGM, DEPL, VARI в ETAT_INIT. Во избежание ситуаций, которые могут привести к вычислительным ошибкам, лучше начинать вычисления, считая исходным состояние термического размагничивания.
  2. Если Вы выполняете ассиметричные вычисления и на каждом узле приложена сила, то при сравнении этих сил с реальными нагрузками, первые необходимо разделить на 2π (сектор работы каждой силы). Таким образом, если Вы хотите определить результирующую силу, то результат нужно умножить на 2π.

3.2.2 Операнд FONC_MULT

 ♦  FONC_MULT = fi

fi – функция времени нагрузки для i-ой составляющей EXCIT .

Механическая нагрузка для n составляющих ключевого слова EXCIT определяется как

U4.51.03 3.2.2.PNG

По умолчанию fi=1. Если условие типа Дирихле, то необходимо умножение на номинальное значение fi.

3.2.3 Операнд TYPE_CHARGE

 ♦  TYPE_CHARGE    =	/“FIXE_CSTE” , [DEFECT]
                       /“SUIV”,
                       /“DIDI”,
                       /“FIXE_PILO”

Если операнд определяется "FIXE_CSTE", то это соответствует нагрузке приложенной к начальной геометрии и не контролируемой. Однако, она может быть функцией и, в частности, зависеть от времени.

Если стоит "FIXE_PILO", то нагрузка является фиксируемой всегда ( зависит от геометрии), и управляться она будет с помощью ключевого слова PILOTAGE. Контролируемые загрузки должны следовать из AFFE_CHAR_MECA или AFFE_CHAR_MECA_F (если они являются функциями не зависящими от времени) и быть не зависимы от ключевого слова FONC_MULT. Невозможно управлять такими силами как сила тяжести, центробежная сила, сила Лапласа, силами тепловых, начальных или упругих деформаций, а также силами соединения.

Если стоит "SUIV", то нагрузка является ведомой, т.е. зависит от значения неизвестных факторов: например, давление, являющееся нагрузкой приложенной по нормали к конструкции, зависит от геометрии и, таким образом, от смещений. Такая нагрузка оценивается на каждой итерации алгоритма решения. Фиксированная нагрузка оценивается только один раз и то в случае, если chi зависит от времени (определяется в AFFE_CHAR_MECA_F и параметризуется временем).

В настоящий момент нагрузки, которые могут быть квалифицированы как "SUIV",являются силой тяжести для элемента CABLE_POULIE, давлением для моделизаций 3-D, 3-D SI, D_PLAN, D_PLAN_SI, ОСЬ, AXIS_SI, C_PLAN, C_PLAN_SI и для всех моделизаций THM (3D_HHM, 3-D HM, 3D_JOINT_CT, 3D_THH, 3D_THHM, 3D_THM, AXIS_HHM, AXIS_HM, AXIS_THH, AXIS_THHM, AXIS_THM, D_PLAN_HHM, D_PLAN_HM, D_PLAN_THH, D_PLAN_THHM, D_PLAN_THM) и центробежной силой при больших смещениях (ключевое слово ROTATION в AFFE_CHAR_MECA).

Если стоит "DIDI then", условия Дирихле (наложенные смещения, линейные условия) будут применяться к инкременту смещения как время, отведенное под ETAT_INIT/NUME_DIDI и не на полном смещении. Например, для наложенного смещения (ключевое слово DDL_IMPO AFFE_CHAR_MECA) условие будет в виде u- u0=d, где u0 – смещение, заданное с помощью NUME_DIDI и u=d.

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

 ♦  CONTACT = contact 

Это простое ключевое слово позволяет разрешить контактное трение или принять во внимание одностороннее соединение. contact - понятие, следующее из оператора DEFI_CONTACT (U4.44.11).

Предупреждение:

Это простое ключевое слово принимает одно понятие. Нельзя таким образом смешать некоторые нелинейное вычисление разрешение контакта и принятие во внимание одностороннего соединения. Нельзя перемешаться никакие различные формулировки (DISCRETE, CONTINUE и XFEM).

3.4 Ключевое слово SOUS_STRUC

 ♦  SOUS_STRUC

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

Эти нагрузки добавляются к нагрузкам на «конечных элементах», которые могут быть приложены к оставшейся части модели. Для достижения большей точности при использовании подконструкций (с линейной упругостью) в нелинейных конструкциях, каждая из них ссылается на документацию (U2.07.02) и контрольную отметку.

3.4.1 Операнд CAS_CHARGE

  ♦   CAS_CHARGE = nocas

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

См. оператор MACR_ELEM_STAT (U4.62.01).

3.4.2 Операнд TOUT / SUPER_MAILLE

  ♦  /  TOUT  =  "OUI" 

Это ключевое слово позволяет воздействовать на нагрузку всех подконструкций модели.

     /  SUPER_MAILLE = l_mail

Наличие этого ключевого слова позволяет присвоить нагрузку nocas только некоторым подконструкциям.

3.4.3 Операнд FONC_MULT

  ♦  FONC_MULT  = fi 

fi – функция времени нагрузки для i-ой составляющей SOUS_STRUCT.

Свойства этого ключевого слова такие же как для составляющей EXIT.

3.5 Ключевые слова COMP_INCR и COMP_ELAS

Синтаксис этих ключевых слов, относящихся к нескольким командам, описывается в документе (U4.51.11).

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

 ♦  ETAT_INIT 

Это ключевое слово позволяет определить начальное состояние. По умолчанию все поля тождественно равны нулю. Начальное состояние может быть определено путем занесения в каждое поле значения от начального состояния или извлечением, начиная с понятия предшествующего типа evol_noli. Данные начального состояния не имеют значений (и таким образом, не принимаются во внимание) только для части области, обработанной инкрементом (COMP_INCR); если присутствует эластичность (COMP_ELAS), значит угол приложения отсутствует.

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

Примечание:

  • Если пользователь указал, что результат используется повторно (с помощью зарезервированного слова reuse), то ключевое слово ETAT_INIT обязательно.
  • В случае использования непрерывного метода соединения, то при повторном вычислении можно обнаружить плохую сходимость из-за «провалов в памяти» состояния предшествующего соединению.

Если используется начальное состояние, для которого MODELE отличается от вычисленного значения MODELE в операторе, Code_Aster продолжается автоматически при обмене между этими двумя моделями:

  • Если вычисленная модель включает в себя модель, определяющую начальное состояние, данные для начального состояния просто копируются в общие ячейки;
  • Если модель, определяющая начальное состояние, включает в себя вычисленную модель, то Code_Aster запускается, копируя значения начального состояния для общих ячеек и заполняя остальное нулями.

3.6.1 Операнды SIGM / VARI / DEPL / STRX

  ♦  /  |  SIGM  = sig 
        |  VARI = vain
        |  DEPL =  depl 
        |  STRX = strx 

sig – это область напряжения в точках Гаусса, vain – область пробных переменных в точках Гаусса, depl – область смещений в узлах, принятых за исходное состояние и strx - область сил и перемещений, соответствующих структурным элементам.

Если какое –то из полей не определено , то по умолчанию ставится ноль. Для примера, операнды могут следовать из команды CREA_CHAMP, или быть считаны из файла с помощью команды LIRE_RESU.

3.6.2 Операнды EVOL_NOLI

  ♦ /  EVOL_NOLI = evol 

Название понятия evol_noli type соответствует тому, откуда будет извлечено начальное состояние.

3.6.3 Операнд NUME_ORDRE / INST / NUME_DIDI

  ♦ /    NUME_ORDRE  =   nuini 
    /    INST        =  instini 

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

Если NUME_ORDRE или INST не заполнены, берется последнее, занесенное в evol, значение.

  ♦ NUME_DIDI  =  nudidi

Дан случай нагрузок дифференциала типа Дирихле ("DIDI"), каждая из которых следует после NUME_DIDI числа записей механического состояния (смещений), которые используются в качестве ссылки на граничные условия. С помощью дефекта находится определенное механическое состояние под NUME_ORDRE и INST.

3.6.4 Операнд INST_ETAT_INIT

 ♦  INST_ETAT_INIT  =  istetaini

Позволяет привязать значение времени в начальном состоянии.

По умолчанию:

  1. Когда начальное состояние задается областью данных (ETAT_INIT с DEPL/SIGM/VARI), к нему нельзя привязать значение времени.
  2. Когда состояние задается параметром evol_noli (ETAT_INIT с EVOL_NOLI), это будет время в предыдущем вычислении (istetaini = instini).
  • А – Простой пример (свойство дефекта)
 LIST1 = DEFI_LIST_REEL (DEBUT =0.,
                         INTERVALLE =_F (JUSQU'A = 4. , NOMBRE =4)),
 U = STAT_NON_LINE (INCREMENT =_F (LIST_INST =LISTE1)) ,
 LIST2 = DEFI_LIST_REEL (DEBUT =4.,
                         INTERVALLE =_F (UNTIL = 10. , NOMBRE =6)),
 U = STAT_NON_LINE (reuse=U,
                    INCREMENT =_F (LIST_INST =LISTE2),
                    ETAT_INIT =_F (EVOL_NOLI =U)) ,

Первый STAT_NON_LINE: выполняет вычисление в моменты времени равные 1,2,3 и 4с.

Второй STAT_NON_LINE: выполняет вычисление в моменты времени 5, 6,7,8, 9 и 10с, начальное состояние соответствует времени 4с.

  • В – Пример, иллюстрирующий применение INST_ETAT_INIT (два различных списка времени)
 LIST1 = DEFI_LIST_REEL (DEBUT =0.,
                         INTERVALLE =_F (JUSQU'A = 10. , NOMBRE =10)),
 U = STAT_NON_LINE (INCREMENT =_F (LIST_INST =LISTE1)) ,
 LIST2 = DEFI_LIST_REEL (DEBUT =20.,
                         INTERVALLE =_F (UNTIL = 30. , NOMBRE =10)),
 U = STAT_NON_LINE (reuse=U
                    INCREMENT =_F (LIST_INST =LISTE2),
                    ETAT_INIT =_F (EVOL_NOLI =U,
                    INST_ETAT_INIT = 20.)) ,

Первый STAT_NON_LINE: выполняет вычисление в течение времени с 1с по 10с.

Второй STAT_NON_LINE: выполняет вычисление в течение времен с 21с по 30с, где начальное состояние соответствует времени 10с из первого STAT_NON_LINE (по умолчанию INST = 10).

Это начальное состояние соответствует второму STAT_NON_LINE в момент времени t = 20 с. (INST_ETAT_INIT = 20)

  • С – Пример, иллюстрирующий применение INST_ETAT_INIT (соответствует одному циклу)
 LIST1 = DEFI_LIST_REEL (DEBUT =0.,
                         INTERVALLE =_F (JUSQU'A = 10. , NOMBRE =10)),
 U1 = STAT_NON_LINE (INCREMENT =_F ( LIST_INST =LISTE1)) ,
 U2 = STAT_NON_LINE (INCREMENT =_F ( LIST_INST =LISTE1),
                    ETAT_INIT =_F ( EVOL_NOLI =U1,
                    INST_ETAT_INIT = 0.)) ,

Первый STAT_NON_LINE: выполняет вычисление в течение времени с 1 по 10с.

Второй STAT_NON_LINE: выполняет вычисление в течение времен с 1 по 10с, где начальное состояние, соответствующее времени t =10с из первого STAT_NON_LINE (по умолчанию INST = 10).

Это начальное состояние соответствует второму STAT_NON_LINE в момент времени t = 0 с. (INST_ETAT_INIT = 0)

3.6.5 Операнд PRECISION / CRETERE

 ♦ PRECISION = prec 

Подробный синтаксис описан в (U4.71.00) .

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

Пример:

U4.51.03 3.6.5 1.PNG

Если пользователь хочет выбрать время, соответствующее NUMÉRIQUE=4, то ему достаточно задать INST=0,004. С другой стороны, для второго примера:

U4.51.03 3.6.5 2.PNG

Если пользователь хочет выбрать время, соответствующее NUMÉRIQUE=4, будет уже недостаточно задать INST=0,10000004, так как относительная разность будет составлять (0,10000005-0,10000004)/0,10000004 = 1Е-7, что превышает значение точности дефекта (1E-6). Таким образом, нельзя будет отличить NUMÉRIQUE=3,4 и 5 (выполнение кода приведет к ошибке). В таком случае, достаточно будет изменить параметр PRECISION (например, PRECISION = 1Е-8).

3.7 Ключевое слово INCREMENT

 ♦  INCREMENT  =  _F ()

Позволяет задать интервал времени, необходимый для инкрементного метода.

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

3.7.1 Операнд LIST_INST

  ♦   LIST_INST      =	/litpsr8,	[listr8] 
                        /litps,	        [list_inst] 
  ♦ if  LIST_INST  =	 litpsr8	[listr8] 

Времена вычисления – время, установленное в litpsr8 с помощью действующего оператора DEFI_LIST_REEL (U4.34.01).

 ♦ if  LIST_INST =    litps	[list_inst] 

Время вычисления - время, установленное в litps с помощью действующего DEFI_LIST_INST (U4.34.03).

3.7.2 Операнды NUME_INST_INIT / INST_INIT / NUME_INST_FIN / INST_FIN

 /NUME_INST_INIT = nuini 
 /INST_INIT = instini 

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

Если отсутствуют ключевые слова INST_INIT или NUME_INST_INIT, дефект рассчитывается следующим образом:

  1. Если есть начальное состояние (операнд ETAT_INIT) и если это определяет одно соответствующее время (EVOL_NOLI или INST_ETAT_INIT), то начальное время определяется, с помощью этого начальным состояния;
  2. Если нет никакого начального состояния (операнд ЕTAT_INIT отсутствует) или не определено соответствие времени (области заданы в ETAT_INIT без указания INST_ETAT_INIT), тогда берется первое время из списка времени (NUMÉRIQUE_INST_INIT=0).
  3. В случае регистрации времени (см. ключевое слово ARCHIVAGE), начальное время есть последнее зарегистрированное поле, и нет INST_INIT.
 /NUME_INST_FIN =   nufin
 /INST_FIN = instfin 

Конечное время (последнее расчетное поле) указывается тем же самым способом, что и начальное время (или NUME_INST_FIN, или INST_FIN), за исключением того, что невозможно обратиться ко времени начального состояния.

Предупреждение:

  • Если активно автоматическое разделение времени на шаги, NUME_INST_FIN не содержит записи и всегда работает с шагами по времени из списка времен в списке начальных времен. NUME_INST_INIT и NUME_INST_FIN активны только если инициализированы.

A - Простой пример (свойство дефектом)

 LISTE = DEFI_LIST_REEL ( DEBUT =0.,
                         INTERVALLE =_F (JUSQU'À = 10. , NOMBRE =10)),
 U = STAT_NON_LINE ( INCREMENT =_F ( LIST_INST =LISTE,
                                     INST_FIN =4.)) ,
 U = STAT_NON_LINE ( reuse=U,
                     INCREMENT =_F ( LIST_INST =LISTE),
 ETAT_INIT =_F (EVOL_NOLI: U)) ,

Первый STAT_NON_LINE: выполняет вычисление в 1, 2, 3 и 4 с.

Второй STAT_NON_LINE: выполняет вычисление в 5, 6, 7, 8, 9 и 10 с, начальное состояние соответствует времени 4 с (по умолчанию INST_INIT =INST_ETAT_INIT = =INST=4).

В – Пример, иллюстрирующий применение INST_INIT

 LISTE = DEFI_LIST_REEL ( DEBUT =0.,
 INTERVALLE = _F (JUSQU'A = 10. , NOMBRE =10)),
 U = STAT_NON_LINE ( INCREMENT = _F ( LIST_INST = LISTE,
                                      INST_FIN = 4.)) ,
 U = STAT_NON_LINE ( reuse = U,
                     INCREMENT =_F ( LIST_INST =LISTE,
                                     INST_INIT =8.),
                                     ETAT_INIT =_F ( EVOL_NOLI =U)) ,

Первый STAT_NON_LINE: выполняет вычисление в течение времени с 1с по 4 с.

Второй STAT_NON_LINE: выполняет вычисление в течение времени 9 и 10 с (ничего не делает для t=5, 6,7 и 8 с), начальное состояние соответствует времени t=4с (по умолчанию INST=4.).

3.7.3 Операнд PPRECISION

 ♦ PRECISION = prec

Подробный синтаксис в (U4.71.00)

Этот параметр используется для идентификации хорошего порядкового номера (NUME_INST_FIN/NUME_INST_INIT), когда пользователь сообщает время (INST_FIN/INST_INIT). Действительно, время в STAT_NON_LINE идентифицируются с помощью порядкового номера (целое число). Если пользователь хочет использовать само время (NUMÉRIQUE_INST_ *), а не порядковый номер, то точность операнда позволяет выбрать этот номер.

Пример:

U4.51.03 3.7.3 1.PNG

Если пользователь хочет выбрать время, соответствующее NUMÉRIQUE=4, то ему достаточно задать INST=0,10000004. С другой стороны, для второго примера:

U4.51.03 3.7.3 2.PNG

Если пользователь хочет выбрать время, соответствующее NUMÉRIQUE=4, будет уже недостаточно задать INST=0,10000004, так как относительная разность будет составлять
(0,10000005-0,10000004) / 0,10000004 = 1Е-7, что превышает значение точности дефекта (1E-6). Таким образом, нельзя будет отличить NUMÉRIQUE=3,4 и 5 (выполнение кода приведет к ошибке). В таком случае, достаточно будет изменить параметр PRECISION (например, PRECISION = 1Е-8)

3.8 Операнд CRIT_QUALITE

 ♦  ERRE_TEMPS_ THM = / "NON"          [DEFECT]
                      /  "OUI" 

Операнд позволяет задействовать вычисление счетчика погрешности. ERRE_TEMPS_THM – временной указатель погрешности для нестационарного моделирования HM. См. (R4.10.05).

3.9 Операнд METHODE

   ♦   METHODE = /  "NEWTON"
	         /  "IMPLEX"
	         / "NEWTON_KRYLOV"

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

 / " NEWTON " 

Метод использует алгоритм Ньютона-Репшона для решения задачи (см. (R5.03.01)).

 / "IMPLEX" 

Метод использует алгоритм IMPLEX для решения задачи (см. (R5.03.81)).

 / " NEWTON_KRYLOV " 

Метод использует приближенную версию алгоритма Ньютона-Репшона; точность решения линейной системы итеративным методом адаптируется на каждом шаге алгоритма (см. (R5.03.01)).

3.10 Ключевое слово NEWTON

Характеристики точности метода решения нелинейной инкрементной задачи (метод Ньютон-Репшона).

3.10.1 Операнд PREDICTION

  ♦  PREDICTION   =  / “TANGENTE”
       	  	     /  “ELASTIQUE”
                     /  “EXTRAPOLE”
      		     /  “the purpose of  DEPL_CALCULE”

На этапе PREDICTION (см. (R5.03.01)) происходит оценка полей смещений для того, чтобы сделать метод Ньютона – Репшона быстро сходимым. Если ключевое слово отсутствует, то касательная матрица скоростей (опция RIGI_MECA_TANG), которая используется, если выбран метод Ньютона - MATRICE='TANGENTE', а также матрица эластичности (опция RIGI_MECA), которая используется, если MATRICE= 'ELASTIQUE'.

 / “TANGENTE”

Позволяет использовать касательную матрицу задачи скорости(опция RIGI_MECA_TANG).

 /  “ELASTIQUE”

Позволяет использовать матрицу эластичности (опция RIGI_MECA).

 /  “EXTRAPOLE”

Вычисляет оценку смещения приращения, начиная с общего прироста полученного решения с предыдущего шага времени (сбалансированный отчет временных шагов). Проекты – это оценка на всех кинематических допустимых полях (то есть удовлетворяющих условиям Дирихле), удовлетворяющих норме определенной матриц эластичности, которая должна быть вычислена. Подобная функциональность интересна в случае использования схем явного метода Рунге-Кутта, который не обеспечивает получение касательной матрицы: в этом случае метод Ньютона использует матрицу эластичности, и тогда счетчик итерации может быть большим. С помощью экстраполяции можно улучшить производительность.

 / "DEPL_CALCULE"

Позволяет сделать предположить величину смещения на каждом шаге времени, где смещение задаётся EVOL_NOLI. Что касается метода EXTRAPOLE , смещение есть проект на всех кинематически допустимых полях.

Примечание:

  • Методы "EXTRAPOLE" и "DEPL_CALCULE" осуществляют проецирование решения на все кинематически допустимые области. Они определяют граничные условия Дирихле с помощью ключевого слова EXCIT. В этом случае нельзя использовать «кинематические» нагрузки типа Дирихле (операнд AFFE_CHAR_CINE), а только дуализированные нагрузки Дирихле (операнд AFFE_CHAR_MECA). Если Code_Aster не нашел дуализированной нагрузки, то появится предупреждение. Существует риск, что область смещения является кинематически недопустимой.
  • В связи с имеющимися условиями на ограничения, эти два варианта несовместимы с функциональностью PILOTAGE.

Польза:

  1. Предположим, что выполняются два вычисления: одно с крупной сеткой, а другое с мелкой. Можно также предположить, что результат второго вычисления близок к результату первого, а таким образом, хорошим прогнозом для смещения этого второго решения будет проекция смещения первого вычисления в узлах новой сетки (проекция перемещения на новую сетку должна быть реализована заранее с помощью оператора PROJ_CHAMP (U4.72.05)). Это ключевое слово позволяет проводить прогнозирование.
  2. Позволяет уменьшить место в памяти и сохранить текущие результаты для дальнейшего продолжения. Для больших вычислений можно хранить смещения только для IDEAS или MED в IMPR_RESU. Если необходимо пересчитать воздействие и интернируемую переменную, то выполняется LIRE_RESU, затем DEPL_CALCULE с условием ITER_GLOB_MAXI=0 (выполняется только для одной итерации) и АRRET = 'NON’ (отсутствует сходимость, выполнение условия равновесия не выполняется). Однако необходимо по причине синтаксиса задать нагрузку (избегая нагрузки Дирихле, которые накладывают линейное разрешение), а также критерий сходимости, даже если эта информация не учитывается.

3.10.2 Операнд STAMPS

  ♦  MATRIX   = /"TANGENTE" 
  ♦  REAC_INCR =  /1		    [DEFAUT] 
                  /mf 
  ♦  REAC_ITER =   / 0		    [DEFAUT] 
 	           / it 

Матрица, используемая для полных итераций метода, является касательной матрицей (R5.03.01). Касательная матрица прогнозирования переоценивается для всех всех MF инкрементов времени (MF положительно или равно нулю) , а когерентная касательная матрица (опция FULL_MECA) переоценивается на всех it итерациях Ньютона для инкремента данного времени (точнее на итерациях it, 2it, 3it…). Таким образом, если it = 1, начиная с первой итерацией Ньютона, каждый раз повторно пересчитывается касательная матрица(только если ничто не удерживает матрицу на этапе предсказания). Условно, если it = 0, матрица не переоценивается.

  ♦  PAS_MINI_ELAS =   /   0  .		[DEFAUT] 
                       /  pasmini	[R] 
  ♦   REAC_ITER_ELAS = / 0		[DEFAUT] 
                       / it 	 	[I] 

Эти опции позволяют перейти от касательной матрицы к матрице разряда (учитывая, что не появится нелинейность), когда шаг по времени меньше, чем pasmini. Матрица разряда - это упругая матрица для моделирования свойств модели пластикового типа; для других моделей существует секущая матрица.

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

Можно определить частоту переактуализации матрицы разряда с помощью ключевого слова REAC_ITER_ELAS (аналог REAC_ITER). Если матрица разряда не зависит от состояния деформации (что имеет место для моделей типа пластмасс), берется REAC_ITER_ELAS = 0 (так как он буде одинаковый в течение всей итерации).

Польза:

Опция может быть полезной в случае, если автоматического деления временного шага недостаточно для обеспечения сходимости вычислений. Например, в случае облегченных моделей, касательная матрица может стать сингулярной, следовательно, для сходимости лучше использовать матрицу эластичности.
 ♦   MATRIX   =    /  “ELASTIQUE”
Такая матрица оценивается только один раз в начальный момент времени в начале алгоритма. «Эластичная» матрица рассчитывается с использованием модуля Юнга, определенного под ключевым словом ELAS в действующем операторе DEFI_MATERIAU.

3.10.3 Операнд EVOL_NOLI

 ♦    EVOL_NOLI = evol_noli

Название понятия типа evol_noli, которое будет полезно при прогнозировании с помощью DEPL_CALCULE.

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

 ♦  RECHERCHE_LINEAIRE=_F ()

Линейный поиск может позволить улучшить сходимость метода Ньютона(для более подробных данных см. (R5.03.01)).

Предупреждение:

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

3.11.1 Операнд METHODE

  ♦  METHODE      = 	/  “TWISTS” 	[DEFECT]
                        /  “MIXTE”
                        /  “PILOTAGE”

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

Метода TWISTS – самый простой метод, являющийся одномерным методом секущей.

Метод MIXTE использует метод секущей с переменными пределами. Более эффективен, когда функциональное исчисление не является строго вогнутым.

Метод PILOTAGE предназначен для управления типом DEFORMATION, PRE_ELAS и LONG_ARC (см. §2121). Является единственным методом с данным типом управления. Для управления типа DDL_IMPO можно использовать ROPE или MIXTE.

3.11.2 Операнды RESI_LINE_RELA / ITER_LINE_MAXI

  ♦  RESI_LINE_RELA = / 1.E-1	 [DEFAUT]
                      / reslin
  ♦  ITER_LINE_MAXI = / 3 	 [DEFAUT]
                      / itelin

Они являются параметрами линейного поиска. Каждый из них определяет максимальное количество итераций itelin необходимое для достижения точности reslin, чтобы достигнуть сходимости линейного поиска. Линейный поиск с контактом лучше не использовать.

Для метода TWISTS необязательно указывать ни точность, ни число итераций, как показывает практика, достаточно выполнить две или три итерации. Таким образом , можно выполнить три итерации с точностью по умолчанию. Пользователь не может задать более чем 999 итераций линейного поиска для метода TWISTS.

Для метода MIXTE обычно необходимо несколько десятков итераций.

3.11.3 Операнды RHO_MIN / RHO_MAX / RHO_EXCL

  ♦ RHO_MIN   =   / 1.E-2 	[DEFAUT]
                  / rmin 	[R]
  ♦  RHO_MAX  =   / 1.E+1 	[DEFAUT]
                  /  rmax	[R]
  ♦  RHO_EXCL    =    / 9.E-3 	[DEFAUT]
                      / rexc	[R] 

С помощью этих ключевых слов задается интервал I , в котором вычисляется коэффициент линейного поиска RHO.

 I=[rmin,rmax]-[-rexc,rexc]   (см. (R5.03.01))

3.12 Ключевое слово PILOTAGE

 ♦   PILOTAGE =_F ()

Когда интенсивность η нагрузки априори неизвестна (нагрузка известна как ссылка, определенная в AFFE_CHAR_MECA или AFFE_CHAR_MECA_F с нагрузкой типа FIXE_PILO), ключевое слово PILOTAGE позволяет управлять этой нагрузкой через вершину (или группу вершин), на которой можно задавать разные режимы управления.

Обратите внимание, что:

  • Если есть FIXE_PILO, нельзя использовать для определения нагрузки ключевое слово FONC_MULT.
  • Если нагрузка определяется с помощью AFFE_CHAR_MECA_F, то она может быть функцией переменных пространства, но не времени. В то же время изменения, зависящие от командных переменных (такие как температура), которые в свою очередь зависят от времени, не могут быть использованы с управлением.
  • Ключевое слово PILOTAGE является запрещающим при контакте (за исключением контакта XFEM).
  • Нельзя использовать PILOTAGE при PREDICTION='DEPL_CALCULE' или PREDICTION='EXTRAPOLE' (см. § 19)

3.12.1 Операнд TYPE

  ♦ TYPE = /“DDL_IMPO”
           /“LONG_ARC”
           /“ANA_LIM”
           /“DEFORMATION”
           /“PRED_ELAS”
           /“SAUT_IMPO”
           /“SAUT_LONG_ARC”

Определяет тип управления. Доступны семь режимов управления (см. (R5.03.80)):

 /“DDL_IMPO”

Позволяет привязывать заданное значение приращения смещения (только один возможный i-ый компонент) в узле No (или группе узлов, состоящей из одного узла). С каждым приращением по времени ищется амплитуда нагрузки η , которая будет удовлетворять следующему утверждению:

cmult.∆ui (no)=∆t
 /“SAUT_IMPO”

Для контроля приращения скачка смещения вводит X-FEM. Контроль возможен только в одном направлении и определяется в локальной базе (по нормали или тангенсально). X-FEM управляет средним значением приращения скачка на множестве точек пересечения интерфейса приложения Рa и границ сетки a. Это описывает все случаи, если GROUP_NO не указано (поведение дефекта). Очень важно, что этот вид контроля может быть использован только в X-FEM моделировании.

U4.51.03 3.12.1 1.PNG
 /“LONG_ARC”

Позволяет контролировать интенсивность нагрузки η с помощью длины (криволинейной абсциссы) ответного смещения группы узлов (например, может использоваться, когда нужно контролировать изгиб пробирки). Проверяется следующее утверждение:

U4.51.03 3.12.1 2.PNG

Здесь N – контрольные точки и С – компоненты смещения узлов.

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

 /“SAUT_LONG_ARC”

Для контроля нормы приращения скачка смещения вводит X-FEM. Он управляет средней нормой на множестве точек пересечения интерфейса приложения Рa и границ сетки a.

U4.51.03 3.12.1 3.PNG

Здесь С – компоненты смещения. Даже если группа контрольных точек является маленькой, все равно нужно использовать GROUP_NO.

 /“ANA_LIM”

Это особый режим контроля, который вычисляет предел текучести нагрузки (модель NORTON_HOFF), используя кинематическую аппроксимацию (см. (R7.07.01)). Если F указывает на контролируемое множество нагрузок, TYPE_CHARGE='FIXE_PILO”, тогда функция контроля будет записана как

P(u)=F,u=1.

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

 /“DEFORMATION”

DEFORMATION гарантирует, что, как минимум, точки Гаусса конструкции изменяются монотонно. Правило проверки:

U4.51.03 3.12.1 4.PNG

Этот режим контроля действителен только для моделей ENDO_FRAGILE (с помощью локальной и нелокальной версий GRAD_EPSI), ENDO_SCALAIRE (с нелокальной версией), ENDO_ISOT_BETON и ENDO_ORTH_BETON (с локальной и нелокальной версиями), BARENBLATT, BETON_DOUBLE_DP, CZM_EXP (с элементами с внутренним разрывом *_ELDI), CZM_OUV_MIX и CZM_TAC_MIX (элементы интерфейса *_INTERFACE), CZM_EXP_REG (элементы соединения *_JOINT или моделирования X-FEM) и CZM_LIN_REG (элементы соединения).

Фиксированный параметр cmult трудно определить, потому что выходной сигнал ∆t / cmult интуитивно непонятен и варьируется в зависимости от уравнений. Для моделей ENDO_FRAGILE, ENDO_SCALAIRE и ENDO_ISOT_BETON версия отличается от используемой ∆t / cmult, где этот параметр связан с приращением повреждений.

Использование:

Когда хочется использовать два последних режима управления, важно сделать первым STAT_NON_LINE без ключевого слова PILOTAGE, чтобы получить начальное состояние ε- отличное от нуля. Он выполняется после восстановления, начиная с ненулевого начального состояния, и использует управление.
Кроме того, решение двух последних уравнений позволяет получить неизвестную интенсивность нагрузки. В некоторых случаях решение этих уравнений может дать несколько значений интенсивности. Выбирается одно значение, которое ближе всего к ε-.

Замечание:

DEFORMATION и PRED_ELAS недоступны для структурных элементов.

3.12.2 Операнды NODE/ GROUP_NO

 / NODE = No
 / GROUP_NO =grno

Используются только с “DDL_IMPO”, “LONG_ARC”, “SAUT_IMPO” или “SAUT_LONG_ARC”. Для “DDL_IMPO”, если используется операнд GROUP_NO, группа узлов должна содержать один узел. В других случаях используется только GROUP_NO (который может содержать также только один узел). Для “SAUT_IMPO” и “SAUT_LONG_ARC”операнд необязателен. Для “DDL_IMPO” и “LONG_ARC”операнды определяют имя узла или имя группы узлов, над которыми будет установлено управление. Для “SAUT_IMPO” и “SAUT_LONG_ARC”определение более тонкое, так как в моделировании XFEM они управляют значениями не в узлах, но на точках пересечения границы сетки и трещин, то есть просто указывают на ребра пересечения границ.

Алгоритм начинается с создания множества независимых границ, которые охватывают все трещины (см. рис.3.12.2-13.12.2-1). По умолчанию контролируются все эти точки. Ключевое слово GROUP_NO дает возможность ограничить эту группу. Объявим следующие правила:

  • Если два узла принадлежат двум связанным границам, то сохраняется только один (рис. 3.12.2-2)
  • Если узел является концом нескольких ребер, то произвольным образом сохраняется только один
  • Если два узла являются концами некоторой трещины (рис. 3.12.2-33.12.2-3) возвращается ошибка, в которой сообщается, что все введенные узлы лежат на одной стороне трещины.
  • Если узел не соответствует ни одному краю (рис. 3.12.2-4), то возвращается ошибка.

U4.51.03 3.12.2.PNG

3.12.3 Операнды TOUT/NET/GROUP_MA

 / TOUT= “OUI” [DEFECT]
 / GROUP_MA=lgrma
 / MAILLE=lma

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

3.12.4 Операнд NOM_CMP

 ♦  NOM_CMP = nomcmp

Определяет имя компонента (соответствующий степени свободы i), который используется для управления ( например,“DX”). Операнд используют только с “DDL_IMPO”и “LONG_ARC”.

3.12.5 Операнд DIRE_PILO

 ♦  DIRE_PILO = direpilo

Определяет название направления i, в соответствии с которым он управляет скачком смещения. Возможные значения: “DX”, “DY”, “DZ”, “DNOR” для нормы с трещиной, “DTAN” для первой касательной (по нормали с Х), “DTAN2” для второй касательной. Операнд используется только с моделированием XFEM. Если выбирать управляющее решение как “ANGL_INCR_DEPL” или“NORM_INCR_DEPL”, то используется тип “SAUT_IMPO”, “SAUT_LONG_ARC” или“PRED_ELAS”.

3.12.6 Операнд FISSURES

 ♦  CRACK = fiss

Позволяет задать sd_fiss_xfem. Используется только с моделированием XFEM. Если выбирать управляющее решение “ANGL_INCR_DEPL”или“NORM_INCR_DEPL”, то необходимо использовать типы “SAUT_IMPO”, “SAUT_LONG_ARC”или “PRED_ELAS”.

3.12.7 Операнд COEF_MULT

 ♦  COEF_MULT = cmult

Это значение, с помощью которого увеличивается степень свободы для управления. По умолчанию его значение равняется единице. Не используется с ANA_LIM.

Пример с DDL_IMPO.

Предположим, что нам необходимо узнать предел текучести нагрузки конструкции.
Нагрузка, установленная на конструкцию давлением неизвестной интенсивности ( P = η ✕ valeur de référence Px ) на группу из сетки. Чтобы найти предел текучести нагрузки Plimite, будем контролировать смещение узла NO1. Хотим, чтобы следующее окончательное смещение x либо было равно этому узлу, либо было равно 2 (или в соответствии со списком времени высота была 0.2, или
коэффициент cmult = 1 / 0.2 = 5 ).
 PRESSION = AFFE_CHAR_MECA (PRES= (GROUP_MA =A, PX = 1.0)),
 LISTE = DEFI_LIST_REEL (DEBUT=0 .,
                        INTERVALLE=_F (UNTIL = 10, NOMBRE =10),
 RESU  = STAT_NON_LINE (EXCIT=_F ( LOAD = PRESSURE,
                                   TYPE_CHARGE ='FIXE_PILO'),
 PILOTAGE=_F ( TYPE = “DDL_IMPO”,
               NODE = NO1,
               NOM_CMP = “DX”,
               COEF_MULT = 5.))

В файле .resu для каждого момента времени будет выводится значение η. Чтобы вычислить значение предела текучести, достаточно предположить Plimite = η ✕ Px. Если наложить на конструкцию давление близкое к пределу текучести без использования управления, вычисления не будут сходиться).

С особым вниманием нужно использовать COEF_MULT для управления типа PRED_ELAS.

3.12.8 Операнд ETA_PILO_R_MAX / ETA_PILO_R_MIN

 ♦    ETA_PILO_R_MAX = etarmax , [R]
 ♦    ETA_PILO_R_MIN = etarmin , [R]

Эти два ключевых слова позволяют задать интервал поиска значения управления. На каждой итерации метода Ньютона все значения управления игнорируются, кроме тех, что лежат в интервале [etarmin,etarmax]. Если интервал слишком маленький, то это может привести к «недостаточности контроля».

Если границы интервала не указаны, то есть etarmin = −∞ , а earmax = +∞ . Такой интрвал можно использовать при желании, например, контролировать давление, приложенное к конструкции, и сохранять его положительным. Фиксируя etarmin на нуле, можем наложить ограничение, чтобы значение контроля было положительное.

3.12.9 Операнд ETA_PILO_MAX/ETA_PILO_MIN

 ♦  ETA_PILO_MAX = etamax , [R]
 ♦  ETA_PILO_MIN = etamin , [R]

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

Принцип работы заключается в следующем: вычисление останавливается, если на какой-то из итераций при достижении одного из пределов метод Ньютон сходится. Интервал можно использовать, например, при установленном значении etamin близком к нижней границе. Тогда становится возможным остановить вычисление перед частичным/полным повреждением образца и тем самым избежать расхождения с результатом на последнем шаге по времени. Так же можно считать, что etamax является максимальным пределом текучести.

Внимание:

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

3.12.10 Операнд PROJ_BORNES

  ♦  PROJ_BORNES= /“OUI” [DEFECT]
                  /“NON”

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

При PROJ_BORNE='OUI' будет выполняться демонстрация (если сначала eta > etamax , затем eta = etamax или сначала eta < etamin затем eta = etamin), которая позволяет в случае сходимости остановить вычисление на etamin или etamax.

При PROJ_BORNE = 'NON', то значение eta изменять нельзя, даже если на последней итерации метода Ньютона конечное значение выше etamax или ниже etamin. Однако вычисления останавливаются, так как при сходимости eta превышает предел.

При PROJ_BORNE='OUI' интервал используют, например, для сравнения нескольких вычислений, которые контролируют смещение. Эти параметры контроля дают возможность останавливать вычисления при некоторой нагрузке, когда конструкция достаточно смягчается. Такая стратегия облегчает сравнение, благодаря проверки последней контрольной точки.

При PROJ_BORNE='NON' операнд использует в некоторых случаях решить вычисления, которые по-разному не сходятся при слишком жестких ограничениях (etarmin, etarmax). Он контролирует давление, приложенное к конструкции, и можно ожидать, что оно положительное. При etarmin равном нулю вычисление останавливается, так как отсутствует контроль. С другой стороны если принять etarmin немного отрицательным, во время выполнения итераций Ньютона «де-факто» обеспечивается переход из «нефизического» состояния, то облегчает сходимость. Состояние сходимости в этом случае может быть как физическим (положительное давление), так и нефизическим. При этом значение etarmin = 0 будет контролировать поведение предела сходимости. Такая стратегия позволяет сохранять только положительные значения контроля.

3.12.11 Операнд SELECTION

  ♦  / SELECTION = /“NORM_INCR_DEPL”, [DEFECT]
     / “ANGL_INCR_DEPL”,
     / “RESIDU”
     / “MIXTE”

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

“NORM_INCR_DEPL” позволяет выбрать контрольную величину, приводящую к наименьшей норме приращения смещения от шага по времени.

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

“RESIDU” позволяет выбрать значение контроля, приводящее к наименьшему остатку.

“MIXTE” позволяет выбрать значение контроля, опираясь на несколько стратегий. Первоначально начинается с “NORM_INCR_DEPL”, описанной выше. Если результаты целевой функции (норма приращения смещения) расположены слишком близко, то на этой итерации склоняются к стратегии “RESIDU”. Тем не менее, если остатки расположены слишком близко, возвращаются к стратегии “NORM_INCR_DEPL” и рассматривается список остатков “RESI_GLOB_MAXI". Если не так, то просто выбирается лучше из двух , даже если они недостаточно контрастны.

Примечание:

Если делается повторное вычисление с ключевым словом SELECTION = 'ANGL_INCR_DEPL', важно иметь в виду, что этот критерий требует двух предыдущих шагов по времени. Таким образом, будет необходимо заархивировать результаты предыдущих вычислений риска получения ложных результатов. Сигналы оповещения информируют пользователя.

3.12.12 Операнд EVOL_PARA

  ♦  EVOL_PARA= /“SANS”          [DEFECT]
                /“DECROISSANT”
                /“ CROISSANT ”

Этот оператор позволяет увеличить или уменьшить скорость роста параметра управления.

3.13 Ключевое слово SOLVER

 ♦  SOLVER =_F ()

Синтаксис этого ключевого слова общий для несколько команд. Он описан в документе (U4.50.01).

3.14 Ключевое слово CONVERGENCE

 ♦  CONVERGENCE =_F ()

Если после него нет ни один из двух операндов, все происходит так: RESI_GLOB_RELA = 1.E-6.

3.14.1 Операнд RESI_GLOB_RELA/RESI_GLOB_MAXI

 ♦  |RESI_GLOB_RELA = resrel ,	[R]

Алгоритм продолжается до тех пор, пока

U4.51.03 3.14.1 1.PNG

где Fn представляет собой остаток итерации n , а L – вектор приложенных нагрузок и реакций в подшипниках. (См. (R5.03.01)).

Когда нагрузка и реакция в подшипниках становятся нулевыми, то есть когда L равно нулю (например, в случае полного разряда), происходит попытка перейти от относительного критерия сходимости RESI_GLOB_RELA к абсолютному критерию RESI_GLOB_MAXI. Эта операция остается прозрачной для пользователя (сообщение-уведомление передается в файл .mess). Когда вектор L становится отличным от нуля, автоматически устанавливается относительный критерий сходимости RESI_GLOB_RELA.

Однако, этот механизм не может функционировать с не может работать с первого шага по времени. На самом деле, чтобы найти значение RESI_GLOB_MAXI автоматическим способом (пользователь не информируется), необходимо чтобы на каком-то шаге была сходимость на режиме RESI_GLOB_RELA. Следовательно, если нагрузка равна нулю в начальный момент времени, вычисление останавливается. Пользователь должен будет потом проверить, что нулевая нагрузка нормальная, с точки зрения выполняемого моделирования, и если все так, найти другой критерий сходимости (например, RESI_GLOB_MAXI).

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

 ♦  |RESI_GLOB_MAXI = resmax , [R]

Алгоритм продолжается до тех пор пока

U4.51.03 3.14.1 2.PNG

где Fn представляет собой остаток итерации n (см. (R5.03.01)). Если операнд отсутствует, испытание не выполняется.

Примечание:

Если задаются граничные условия типа Дирихле с помощью AFFE_CHAR_CINE, а не AFFE_CHAR_MECA, степени свободы, определяющие эти условия, игнорируются во время ранжирования остатков равновесия. Когда нагрузка становится нулевой

3.14.2 Операнд RESI_COMP_RELA

 ♦  |RESI_COMP_RELA =  rescmp , [R]

Этот операнд учитывает результат сходимости метода Ньютона. Для этого в векторе выделяют подвектора, соответствующие каждому компоненту cmp (например, в THM, cmp = {DX ,DY , DZ , PRE1 , PRE2 ,TEMP}). Эти вектора затем нормализуют с помощью соответствующих внутренних сил. Алгоритм продолжают до тех пор пока

U4.51.03 3.14.2 1.PNG

где Fc,n – это часть остатка Fn,соответствующая остатку с, и Lint,c,n – вектор внутренних сил в момент времени n, соответствующий тому же компоненту c (см. (R5.03.01)).

Внутренние силы в момент времени n вычисляются в начале шага по времени, начиная с результата на предыдущем шаге. На первом шаге по времени происходит автоматический переход к относительному критерию тип RESI_GLOB_RELA, чтобы сравнить с абсолютным критерием для случаев, когда нагрузка равна нулю. Подобный вариант имеет место только для задач эволюционного типа (THM), где резидент сильно отличается от различных неизвестных факторов.

3.14.3 Операнд RESI_REFE_RELA

  | RESI_REFE_RELA = resref , 	[R]
    SIGM_REFE = sigref , 	[R]
    FORC_REFE = (forref, momref) [l_R]
    VARI_REFE = varref ,	[R]
    EPSI_REFE = epsref , 	[R]
    FLUX_THER_REFE = fthref , 	[R]
    FLUX_HYD1_REFE = fh1ref , 	[R]
    FLUX_HYD2_REFE = fh2ref ,	[R]
    DEPL_REFE = depref,		[R]
    LAGR_REFE = lagref, 	[R]

Этот операнд используется для оценки результата сходимости метода Ньютона. Начинается он со ссылки, которая может быть следующей:

  • Напряжение sigref;
  • Напряжение epsref для несжимаемых элементов, элементов сетки и мембраны;
  • Интернируемая переменная varref, если использовать модели с градиентом деформации;
  • Тепловой поток fh1ref и fh2ref в случае HHM;
  • displacement, если использовать элементы соединения, имеющие свойства типа CZM;
  • Сила forref и момент momref, если используются структурные элементы (дискретные, балки и кабели);
  • Коэффициент Лагранжа lagref для смешанных составов.

Вычисляется Fref остаток (такой вектор длиннее чем вектор остатка). Сходимость обеспечивается только если

U4.51.03 3.14.3.PNG

3.14.4 Операнд ITER_GLOB_MAXI

  ♦   ITER_GLOB_MAXI =  / 10 			[DEFAUT]
                        / maglob

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

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

3.14.5 Операнд ITER_GLOB_ELAS

  ♦  ITER_GLOB_ELAS =  / 25 			[DEFAUT]
                       /maxelas

Максимальное количество итераций проводится с упругой матрицей, когда он использует ключевое слово PAS_MINI_ELAS ключевого фактора NEWTON (см. § 1818), чтобы в любой момент решить глобальную задачу (25 дефектов).

Он напоминает PAS_MINI_ELAS, который дает возможность перейти от касательной матрицы к упругой, когда шаг по времени ниже значения указанного в PAS_MINI_ELAS.

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

3.14.6 Операнд TYPE/PLATEAU_ITER/PLATEAU_RELA

  ♦ TYPE = /“PIC”		[DEFECT]
           /“PLATEAU”
  ♦ PLATEAU_ITER = /3 		[DEFAUT]
                   /plaite 	[I]
  ♦ PLATEAU_RELA = /1E-3 	[DEFAUT]
                   /plarel 	[R]

Этот операнд позволяет контролировать тип оператора сходимости, которые применяются для ключевого слова RESI_ *. Режим “PIC” гарантирует достижимость сходимости, начиная с некоторого порогового значения, заданного с помощью RESI_*. Режим “PLATEAU” является более серьезным и требует, чтобы критерий сходимости был стабилен в течение некоторого количества итераций и лежал в интервале шириной plarel около некоторого значения, заданного в RESI_*. Этот режим полезен в THM моделировании, в котором критерий Ньютона на особо критичен.

3.14.7 Операнд ARRET

 ♦  ARRET = /“OUI”		[DEFAUT]

Если при выборе общего критерия сходимости, этот операнд не проверяется после maglob, программа останавливается (предыдущие результаты сохраняются).

 ♦  ARRET = /“NON” 		[DEFAUT]

Если использование maglob недостаточно, чтобы проверить критерии сходимости заданных пользователем, операнд используется в следующий раз.

3.15 Ключевое слово CRIT_STAB

 ♦  CRIT_STAB =_F ()

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

  • Потери устойчивости в результате механического явления обратимы:
Критерий вычисляется следующим образом: в конце временного шага при малых возмущениях решается det (KT - λ∙Kg ) = 0. KT является когерентной касательной матрицей. Kg – это геометрическая матрица жестокости, рассчитывающаяся исходя из поля напряжений в этот момент времени. На практике нагрузка нестабильна, если |λ|<1 (фактически -1<λ<0). По методу Соренса вычисляют собственные значения (см. MODE_ITER_SIMULT (U4.52.03)). При решении задачи большого размера это может оказаться дорогим. При больших смещениях и большой деформации решают det (KT - λ∙I)=0, так как KT содержит Kg. Критерием сходимости является критерий устойчивости: если λ меняет знак (таким образом, проходит мимо нуля), то нагрузка нестабильна. В MODE_FLAMB сохраняется собственный режим, соответствующий наименьшей критической нагрузке (в абсолютном значении) в конечном объекте. Этот режим можно извлекать и визуализировать (например, область смещений или обычный собственный режим). Линейный анализ устойчивости не делает возможным принять во внимание аспекты следующих за ним заданных сил, и затем необходимо использовать CRIT_STAB.

В документации [U2.08.04] представлены различные подходы к анализу потери устойчивости в Code_Aster.

  • При анализе знака второй производной энергии относительно приращения необратимых степеней свободы в диссипативной механике:
Рассмотрим частный случай, когда геометрическая матрица жесткости равна единичной матрице Kg = Id. Ищется минимум следующего вычисления квадратичной функции: C(x) = (xt ∙KT∙x) / (xt∙x), где KT – это когерентная тангенсальная матрица в рассматриваемое время и xt - это вектор, перенесенный из области неизвестных узлов x, при положительных напряжениях на степенях свободы. Знак минимума позволяет сделать вывод об устойчивости нагрузки. Если он отрицателен, то она неустойчива. Иначе полученное численное решение устойчиво. Полученный режим, который является минимизацией вектора C(x)(известен как режим нестабильности, если минимум отрицателен) и оценки привязанного критерия устойчивости, хранящегося в результирующем объекте под названием MODE_STAB (CHAR_STAB = C(x)).

3.15.1 Операнд LIST_INST / INST / PAS_CALC

  ♦    /“LIST_INST' =  list_r8
       /“INST' = l_r8
       /“PAS_CALC' =  npas

Набор, для которого необходимо сделать вычисление стабильности определяет список времен (liste_r8 или l_r8) и частоты PAS_CALC (все npas по времени).

При отсутствии этих ключевых слов вычисление проводится для всех шагов по времени.

3.15.2 Операнд PRECISION/CRITERE

  ♦ RECISION = /1.e-6 			[DEFAUT]
               /prec
  ♦ CRITERE = /“RELATIF”, 		[DEFECT]
              /“ABSOLU”,

Позволяет выбрать времена (см. (U4.71.00)).

3.15.3 Операнд CHAR_CRIT

  ♦  CHAR_CRIT= / (- 10.10),	 [DEFAUT]
  		/ intcc

Ключевое слово CHAR_CRIT позволяет сэкономить время, сделав только одно испытание Штурмана в предоставленной полосе частот. Если частота найдена, то вычисляют действительное значение критической нагрузки в этом интервале.

3.15.4 Операнд NB_FREQ

  ♦  NB_FREQ = / 3 , 	 [DEFAUT]
               / nbfreq

Ключевое слово NB_FREQ ( 3 его значение по умолчанию) указывает на количество критических нагрузок вычисления.

3.15.5 Операнд COEF_DIM_ESPACE

  ♦  COEF_DIM_ESPACE = / 5,	[DEFAUT]
                     / coeff 

Ключевое слово COEF_DIM_ESPACE (5 его значение по умолчанию) позволяет пользователю контролировать размер подпространства в методе Соренса (размер подпространства равен произведению этого коэффициента на ранее заданное значение nbfreq). Операнд интересен, когда необходимо уменьшить пространство, если использовать больше операндов DDL_STAB.

3.15.6 Операнд RIGI_GEOM

  ♦  RIGI_GEOM = / “OUI”, 	[DEFECT]
     		 / “NON”

Ключевое слово RIGI_GEOM дает возможность пользователю выбирать проводить или нет поиск собственных значений обобщенных с помощью геометрической матрицы со вторым элементом (для случая с большой деформацией). Выбор варианта “NON” означает, что геометрическая матрица жесткости заменяется на идентичную.

3.15.7 Операнд MODI_RIGI

  ♦  MODI_RIGI = / “NON”, 		[DEFECT]
                 / “OUI”

Ключевое слово MODI_RIGI позволяет определить будет ли глобальная матрица жесткости (и геометрическая матрица жесткости, если она используется), должны быть изменены на уровне степеней свободы, которые записывают с помощью DDL_EXCLUS.

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

3.15.8 Операнд DDL_EXCLUS

 ♦  DDL_EXCLUS = (“DX”, “DY”,…)

Ключевое слово DDL_EXCLUS указывает на все степени свободы, которые необходимо положить равными нулю для второго элемента поиска для обобщенных собственных значений. Он может быть использован только при RIGI_GEOM = “NON” или MODI_RIGI = “OUI”.

В случае если RIGI_GEOM = “NON” и MODI_RIGI = “NON” нельзя наложить дополнительные условия совместимости на собственные режимы и, таким образом, осуществить селективный поиск. Это подходит для смешанных композиций. Тогда при ликвидации множителей Лагранжа со вторым элементом можно исключить режимы с доминирующим Lagrangiennes и отрицательными собственными значениями.

В случае MODI_RIGI = "OUI", который позволяет изменить матрицу жесткости (и если необходимо геометрическую матрицу жесткости), чтобы провести анализ устойчивости, но, не учитывая количество степеней свободы. Например, необходимо использовать эту опцию для жидких моделей (с формулировкой (u,p,ф), см. документацию (R4.02.02), которые можно использовать с DYNA_NON_LINE, но не со STAT_NON_LINE), исключая степени свободы жидкости, так как глобальная матрица жесткости особая для этих степеней свободы.

3.15.9 Операнд DDL_STAB

 ♦  D.O.F. _STAB = (“DAMG”,…)

Ключевое слово D.O.F. _STAB указывает на все необратимые степени свободы в исследовании на устойчивость, которое выполняется с CRIT_STAB. Он может быть использован только в случае: TYPE='STABILITY” и RIGI_GEOM='NON”. Это позволяет провести исследование знака второй производной энергии с рассчитанной нагрузкой, учитывая только вероятность увеличения степеней свободы, объявленных в DDL_STAB. Это необходимо для наблюдения за механическими условиями необратимости.

3.15.10 Операнд SIGNE

  ♦   SIGNE = /“POSITIF_NEGATIF”, 	[DEFECT]
            = /“POSITIF”,
            = /“NEGATIF”,

Ключевое слово SIGNE позволят задать тип критерия неустойчивости, который будет использоваться. Этим критерием можно будет выполнить чистую остановку (без сохранения) нелинейных вычислений в случае неустойчивости, если пользователь определяет его, под DEFI_LIST_INST (см. документацию (U4.34.03)) со следующим синтаксисом:

 ECHEC=_F (EVENEMENT='INSTABILITY”, ACTION='ARRET',).

Без этого определения в соответствии с DEFI_LIST_INST даже в случае обнаруженной нелинейности вычисление попытается продолжиться: это режим по умолчанию. Для анализа устойчивости без геометрической матрицы жесткости критерий неустойчивости в том, что критическая нагрузка при этом стремится к нулю или меняет знак. В этом случае ключевое слово SIGNE не нужно.

С другой стороны, в тех случаях, когда используется геометрическая матрица жесткости, ключевое слово SIGNE полезно. При значении по умолчанию SIGNE = " POSITIF_NEGATIF", решение будет объявлено неустойчивым, когда критическая нагрузка будет лежать в диапазоне от -1 до 1. Если пользователь выбирает “NEGATIF“, тогда область неустойчивости будет определяться диапазоном от 1 до 0. Наоборот, при выборе "POSITIF" будет от 0 до -1. Выбор “POSITIF_NEGATIF” самое консервативное, но в некоторых случаях, где можно априори исключить часть области неустойчивости, то это отношение изменяет критерий с ключевым словом SIGNE. Это напоминает, что критическая нагрузка вычисляется с помощью CRIT_STAB (если учитывается геометрическая матрица жесткости) и является обратной коэффициенту умножения наложенной нагрузки, которая делает задачу неустойчивой. Таким образом, если вычисленное по CRIT_STAB значение равно «-1», то при приложенной нагрузке задача неустойчива. Если значение равно 1, то неустойчивость будет такая же, но с другим знаком.

3.15.11 Операнд PREC_INSTAB

  ♦  PREC_INSTAB = / 1.E-6, 		[DEFAUT]
 	           / prec_instab, 	[R]

Ключевое слово PREC_INSTAB позволяет определить допущение, с которым можно проверить критерий устойчивости, параметризованный с помощью SIGNE.

3.16 Операнд ENERGIE

 ♦  ENERGIE =_F ()

Это ключевое слово позволяет активировать расчёт оценки энергии и её отображение в процессе вычисления, а также сохранить её в массиве под названием PARA_CALC. Оценка энергии может быть извлечена из этого массива с помощью команды RECU_TABLE (U4.71.02).

3.17 Ключевое слово ARCHIVAGE

 ♦  ARCHIVAGE =_F ()

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


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

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

3.17.1 Операнды LIST_INST / INST / PAS_ARCH

  ♦  /“LIST_INST' =  list_r8
     /“INST' = l_r8
     /“PAS_ARCH' =  npas

Определяет сохраняемые шаги по времени либо в виде списка (liste_r8 или l_r8) или по частоте заполнения (все npas времени). Если эти ключевые слова отсутствуют, то архивируются все шаги по времени.

Примечания:

  1. последнее вычисление всегда сохраняется, чтобы иметь возможность выполнить восстановление;
  2. если используется список времен, то последнее время вычислений, разбивающееся автоматически на шаги по времени, не заполняется;
  3. начальное состояние систематически заполняется порядковым номером 0, так как не участвует при возобновлении вычислений (reuse).

3.17.2 Операнды PRECISION/CRITERE

  ♦  PRECISION= /1.e-6 [DEFAUT]
		/prec
  ♦  CRITERE = /“RELATIF”, [DEFECT]
               /“ABSOLU”,

Смотри (U4.71.00)

3.17.3 Операнд CHAM_EXCLU

 ♦  CHAM_EXCLU

Позволяет указать области, которые не будут заполнены, за исключением последнего шага по времени. Имена исключений зависят от операторов.

3.18 Ключевое слово AFFICHAGE

 ♦  AFFICHAGE =_F ()

Позволяет персонализировать отображение таблицы сходимости в STAT_NON_LINE и DYNA_NON_LINE.

Если ключевое слово не указано, то таблица строится в соответствии с различными вариантами вычислений (линейный поиск, управление, контакт и т.д.) и с INFO_RESIDU='NON”.

3.18.1 Операнд UNITE

 ♦  UNITE = unit

Таблица сходимости будет дублироваться в файл блока с форматом .csv (разделителем будет запятая).

3.18.2 Операнд INFO_RESIDU

  ♦  INFO_RESIDU = /“NON”, 		[DEFECT]
                   /“OUI”

Операнд дает возможность добавить столбец для каждого оцененного остатка ((RESI_GLOB_RELA, RESI_GLOB_MAXI, RESI_COMP_RELA и RESI_REFE_RELA). Эта колонка будет указывать на узел, где остаток максимальный; это сможет помочь пользователю при возникновении трудностей со сходимостью. Например, чтобы увидеть насколько неправильно определено значение материала на элементе.

3.18.3 Операнд INFO_TEMPS

  ♦  INFO_TEMPS = /“NON”, 		[DEFECT]
                  /“OUI”

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

3.19 Ключевое слово OBSERVATION

  ♦  OBSERVATION =_F ()
  ♦  TITLE = title

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

Это ключевое слово позволяет создать массив с одноименным названием для наблюдения за результатом STAT_NON_LINE, и извлечь его можно будет с помощью команды RECU_TABLE. Можно использовать только 99 вхождений ключевого слова OBSERVATION для максимума. Это дает возможность дать имя вхождению (колонка NOM_OBSERVATION) с помощью ключевого слова TITRATES. Если оно не используется , колонка NOM_OBSERVATION заполняется OBSERVATION_xx , где xx – переменная от 1 до 99.

3.19.1 Операнды LIST_INST / INST / PAS_OBSE

  ♦  /“LIST_INST' = list_r8
     /“INST' = l_r8 
     /“PAS_OBSE' = npas

Этот операнд позволяет определить варианты выбора списка времен наблюдения. LIST_INST, INST и PAS_OBSE имеют тоже значение, что и одноименные операнды используемые для определения списка заполнения(подачи). PAS_OBSE играет ту же роль, что и PAS_ARCH в ARCHIVAGE [§ 34].

3.19.2 Операнды PRECISION / CRITERE

  ♦ PRECISION = prec
  ♦ CRITERE = /“ABSOLU”
              /“RELATIF”

Более подробно в (U4.71.00)

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

3.19.3 Операнды NOM_CHAM / NOM_CMP

  ♦ NOM_CHAM = nomcham
  ♦ NOM_CMP = nomcmp

Эти операнды позволяют определить область после обработки (NOM_CHAM), и ее компонентам дается их название (NOM_CMP). Максимум можно определить только 20 компонентов.

3.19.4 Операнды TOUT/NODE/GROUP_NOEUD/NET/GROUP_MA

  ♦  /TOUT = “NON”		[DEFECT]
             “OUI”
     /NOEUD = No 		[No]
     /GROUP_NO = grno		[grno]
     /MAILLE = lma 		[my]
     /GROUP_MA = lgrma 		[grma]

Этот операнд позволяет определить геометрическую поддержку постобработки:

  • для области с узлами (“DEPL”, “VITE”, “ACCE”, “DEPL_ABSOLU”, “VITE_ABSOLU”,“ACCE_ABSOLU”, “VALE_CONT”, “FORC_NODA”), извлекает список узлов;
  • для области с точками Гаусса (“SIEF_ELGA” , “VARI_ELGA” ), извлекает список сеток.

Внимание! Не использовать TOUT='OUI” на больших сетках.

3.19.5 Наблюдение за полем ELGA

  ♦  EVAL_CMP = /” VALE ”, 		[DEFECT]
                / “FORMULA”
  ♦  FORMULATES = form 			[ formule_aster ]

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

  • Если EVAL_CMP = ” VALE ”, извлекается просто список компонентов, заданный с помощью NOM_CMP;
  • Если EVAL_CMP = “FORMULA”, оценивается формула, заданная с помощью ключевого слова FORMULA.

Если применяется формула компонентов, значит они имеют значение, а, следовательно, их количество будет равно количеству компонентов в списке NOM_CMP.

  ♦  EVAL_ELGA  =  /“ VALE ”, [DEFECT]
                   /“ MIN ”,
 	           /“ MAX ”,
  ♦ /POINT = pi 		[I]
  ♦ /SOUS_ POINT = spi 	        [I]

Как только определены компоненты или формула на компонентах можно:

  • Извлечь значения в точках и подточках интеграции с EVAL_ELGA = “ VALE”. В этом случае необходимо явно задать точку и подточку интеграции с помощью POINT

и SOUS_POINT. Подточки интеграции появляются для структурных элементов (балок, пластин, оболочек, труб и т.д.).

  • Запросить извлечение максимума EVAL_ELGA = “MAX” или минимума EVAL_ELGA = “MIN” для всех точек и подточек сетки.
  ♦  EVAL_CHAM   =   /“VALE”, 		[DEFECT]
                    /“MIN”,
                    /“MAX”,
                    /“MOY”,
                    /“MINI_ABS”,
                    /“MAXI_ABS”,

“MINI_ABS ” – это минимальное абсолютное значение: MINI_ABS (- 1,3,4, - 12, - 0.1) = 0.1

“MAXI_ABS” – это максимально абсолютное значение: MAXI_ABS (- 1,3,4, - 12, - 0.1) = 12

Выполняется оценка компонентов (или формулировок этих компонентов), в которых nsi – точка/подточка извлечения:

  • Извлекаются значения для всей сетки EVAL_CHAM= “ VALE ”.
  • Запрашивается максимум EVAL_ CHAM= “MAX”, минимум EVAL_ CHAM= “MIN” или среднее EVAL_ CHAM= “MOY”.

Пример: Извлечение максимального L E от следа тензора напряжений на GROUP_MA='TOTO“

  traces = FORMULA (VALE='0.333* (SIXX+SIYY+SIZZ)”,
                    NOM_PARA= (“SIXX”, “SIYY”, “SIZZ”,));
  OBSERVATION=_F ( NOM_CHAM ='SIE F _ELGA',
                    GROUP_MA = “TOTO”,
                    EVAL_CHAM = “MAX”,
                    NOM_CMP = (“SIXX”, “SIYY”, “SIZZ”,),
                    EVAL_CMP = “FORMULA”,
                    FORMULATES = trace,
                    EVAL_ELGA = “MAX”)

3.19.6 Наблюдение за полем NOEU

  ♦  EVAL_CMP = /“ VALE ”, 		[DEFECT]
      		/“FORMULA”
  ♦ FORMULATES = form 			[ formule_aster ]

Начинается с выбора компонентов или формулы связи компонентов:

  • Если EVAL_CMP = “ VALE ”, то они просто извлекаются из списка компонентов, определенного с помощью NOM_CMP.
  • Если EVAL_CMP = “FORMULA”, то они вычисляются по формуле, заданной с помощью ключевого слова FORMULA.
  ♦   EVAL_CHAM = /“ VALE ”, 	[DEFECT]
          	  /“ MIN ”,
 		  /“ MAX ”,
           	  /“ MOY ”,

Выполняется оценка компонентов (или формулировок этих компонентов):

  • Извлекаются значения для всей сетки EVAL_CHAM= “ VALE ”.
  • Запрашивается максимум EVAL_ CHAM= “MAX”, минимум EVAL_ CHAM= “MIN” или среднее EVAL_ CHAM= “MOY”.

Пример: Извлечение максимума компонента DX от смещения на GROUP_MA='TOTO“

  OBSERVATION=_F ( NOM_CHAM =” DEPL “,
                   GROUP_NO = “TOTO”,
                   EVAL_CHAM = “MAX”,
                   NOM_CMP = (” DX “,),
                 )

3.19.7 Содержание массива

Массив будет содержать максимально 16 колонок.

U4.51.03 3.19.7.PNG

Параметр NUME_REUSE полезен в случае обогащения результата структуры данных. Действительно, если восстановление дробит старые числа последовательности в результате структуры данных (см. ключевое слово ETAT_INIT), то это не учитывает значения в массиве наблюдений, который никогда не изменяется задним числом. Таким образом, в массиве будут получены 2 различных значения для некоторого времени, и отличаться они будут на NUME_REUSE.

3.20 Ключевое слово SUIVI_DDL

 ♦ SUIVI_DDL =_F ()

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

Ключевой фактор SUIVI_DDL имеет тот же синтаксис, что и OBSERVATION для извлекаемых областей, за исключением того, что не дают информации по количеству извлечений, так как они выполняются на каждой итерации метода Ньютона (фактор не имеет таких ключевых слов как LIST_INST/INST/PAS_OBSE/CRITERE/PRECISION).

 ♦  TITLE = ltitre , 	[ list_k ]

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

3.21 Содержание структуры данных EVOL_NOLI

Структура данных EVOL_NOLI содержит список полей с данными для вычисления (различные варианты ключевого слова ARCHIVAGE). По умолчанию он содержит следующие поля:

  • DEPL: поле (с узлами) смещений;
  • SIEF_ELGA: поле (точки Гаусса) напряжений;
  • VARI_ELGA: поле (точки Гаусса) интернируемых переменных;
  • COMPOR: карта поведения;

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

  • VALE_CONT: информационное поле (с узлами) контактного трения (для более подробной информации см. (U4.44.11));
  • INDC_ELGA: поле (точки Гаусса) состояний контакта для случая XFEM с контактом;
  • COHE_ELGA: параметрическое поле связей (точки Гаусса) для случая XFEM с RELATION='CZM”;
  • SECO_ELGA: поле состояний (точки Гаусса) трения для случая XFEM с контактом и трением;

Кроме того, эти поля структуры данных также содержат параметры. В любой момент это хранилище содержит:

U4.51.03 3.21 1.PNG

Когда ищется режим неустойчивости (с помощью STAT_NON_LINE или DYNA_NON_LINE) или колебательный режим (только с помощью DYNA_NON_LINE), здесь хранится поле, соответствующее перемещению и значению критической нагрузки или частоты.

U4.51.03 3.21 2.PNG

3.22 Операнд INFO

 ♦  INFO =inf

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

Внимание! Файлы .mess с INFO = 2 могут иметь очень важную информацию.

3.23 Операнд TITRATES

 ♦  TITLE = tx

tx – это название вычислений. Оно будет печататься в верхней части результатов. См. (U4.03.01).