Перейти до змісту

Керування кроками

Структурний аналіз у FrontISTR виконується з перемиканням граничних умов, навантажень, контакту та активації елементів за кроками. На цій сторінці описано тривалість кожного кроку, підкроки, критерії збіжності та вибір між фіксованим приростом і автоматичним приростом із cutback.

Терміни, пов’язані з часом аналізу

На цій сторінці для часу аналізу використовуються такі окремі терміни.

  • Поточний час: загальний час, що минув від початку аналізу.
  • Час кроку: час, що минув від початку поточного кроку.
  • Тривалість кроку: час аналізу, на який просувається один крок.
  • Відносний час: час кроку, поділений на тривалість кроку. На початку кроку він дорівнює 0, а наприкінці — 1.
  • Приріст часу: приріст від поточного часу до наступного моменту, для якого визначається рівновага.

Визначення термінів, пов’язаних із часом аналізу

Рис. 4.7.1. Визначення термінів, пов’язаних із часом аналізу

Огляд функцій

Керування кроками складається з таких аспектів.

Аспект Роль Основне місце задання
Спосіб прирощення Визначає, чи просувати крок із фіксованим приростом, чи регулювати приріст часу відповідно до стану збіжності !STEP
Тип кроку Визначає статичний аналіз або в’язкісний аналіз, що включає в’язкопружність і повзучість (це окрема характеристика від типу аналізу в !SOLUTION; діє лише для статичного аналізу й не використовується в динамічному аналізі) !STEP
Умови, що активуються Вибирає для кожного кроку групи граничних умов, навантажень, контакту та активації елементів рядок даних !STEP
Критерій збіжності Дає змогу для кожного кроку регулювати критерії для нев’язки, множника Лагранжа, приросту переміщення тощо !STEP
Час виведення Задає моменти часу, у які під час автоматичного прирощення потрібно обов’язково виконати обчислення та виведення !TIME_POINTS і !STEP

У статичному аналізі можна вибрати фіксований приріст або автоматичний приріст із cutback. У динамічному аналізі також можна перемикати умови за допомогою кількох !STEP; для фіксованого приросту рекомендується задавати приріст часу та тривалість кроку через !STEP. n_step і t_delta у !DYNAMIC розглядаються як значення за замовчуванням, коли !STEP пропущено, або для зворотної сумісності. У нелінійному неявному методі можна використовувати автоматичний приріст і cutback. Керування часом у теплопровідному аналізі задається не через !STEP, а через часовий крок у !HEAT.

Умови, що активуються на кроці, задаються за ID груп. Оскільки граничні умови, навантаження, контакт і активацію елементів можна перемикати для кожного кроку, поетапне навантаження, перемикання контактних умов і аналіз із послідовністю будівництва можна описати в одному файлі керування аналізом. Вибір режиму активації та деактивації елементів див. у Активація та деактивація елементів.

Вибір кроку

Спосіб прирощення вибирають з урахуванням нелінійності аналізу та вимог до часу виведення.

  • Для лінійного аналізу або аналізу, що завершується за один крок, часто немає потреби детально налаштовувати керування приростом.
  • Для нелінійного статичного аналізу, в якому навантаження й відгук змінюються плавно, часто достатньо фіксованого приросту. Якщо збіжність ускладнена, зменшіть приріст часу.
  • Для аналізу, що включає встановлення або втрату контакту, розвиток текучості, великі деформації чи різкі зміни матеріальної нелінійності, насамперед слід розглянути автоматичний приріст і cutback. У ділянках із легкою збіжністю приріст можна збільшувати, а в ділянках зі складною збіжністю — зменшувати.
  • Якщо при автоматичному прирощенні потрібно отримати результати в певні моменти часу, використовуйте також список часу виведення.

Критерії збіжності налаштовують, балансуючи стабільність аналізу та час обчислень. Жорсткіші критерії збіжності підвищують точність рівноваги результату, але збільшують кількість ітерацій. В аналізі з контактом або множниками Лагранжа на перебіг обчислення впливають не лише звичайний критерій нев’язки, а й кількість контактних ітерацій та критерій множника Лагранжа.

Керування кроками статичного аналізу

Статичний аналіз складається з одного або кількох кроків аналізу. Ітерацію за кроками називають циклом кроків, а ітерацію, у якій один крок розбивається на прирости часу, — циклом підкроків. На кожному підкроці виконується обчислення рівноваги з використанням коефіцієнта навантаження, граничних умов, стану контакту тощо для заданого часу.

За фіксованого приросту час усередині кроку просувається на задану величину. Якщо збіжності досягти не вдається, аналіз у цей момент завершується.

За автоматичного прирощення та cutback базове значення наступного приросту часу dtime_base оновлюється за станом збіжності попереднього підкроку. Якщо збіжність не досягнута, стан відновлюється до останнього збереженого, і той самий часовий інтервал обчислюється повторно з меншим приростом часу.

Схема керування приростом

Рис. 4.7.2. Схема керування приростом

Послідовність автоматичного прирощення та cutback така.

  1. На початку кроку початковий приріст часу приймається як dtime_base.
  2. Фактичний приріст часу визначається так, щоб не перевищити час завершення кроку або наступний час виведення.
  3. Обчислення рівноваги виконується в момент часу, віддалений від поточного часу на величину приросту.
  4. Якщо збіжність досягнута, час просувається вперед, а наступне dtime_base збільшується або зменшується залежно від стану збіжності.
  5. Якщо збіжності немає, стан відновлюється, dtime_base зменшується з використанням коефіцієнта зменшення cutback, після чого обчислення повторюється.
  6. Коли поточний час досягає часу завершення кроку, цей крок завершується.

Збільшення або зменшення приросту визначається за станом ітерацій попереднього підкроку. Основними величинами для цього є такі три.

Величина Значення
N_max Максимальна кількість ітерацій методу Ньютона
N_sum Сумарна кількість ітерацій методу Ньютона. За відсутності контактних ітерацій дорівнює N_max
N_cont Кількість контактних ітерацій

Якщо стан, у якому будь-яка з величин N_max, N_sum або N_cont перевищує поріг для зменшення, повторюється задану кількість разів, приріст часу зменшується. Якщо ж усі три величини залишаються в межах порога для збільшення протягом заданої кількості разів, приріст часу збільшується. Під час збільшення його обмежують верхньою межею приросту часу.

За автоматичного прирощення та cutback аналіз завершується як невдалий у таких випадках.

  • Досягнуто максимальної кількості підкроків до завершення кроку.
  • Базове значення приросту часу стало меншим за нижню межу приросту часу.
  • Досягнуто максимальної кількості послідовних cutback.

У наступному прикладі ввімкнено автоматичне прирощення з початковим приростом часу 0.01, тривалістю кроку 2.5, нижньою межею приросту часу 1E-5, верхньою межею 0.3 і максимальною кількістю підкроків 200. Кроку призначено набір параметрів автоматичного прирощення AP1 і список часу виведення TP1 для загального часу 1.5, 2.7 і 3.9.

!AUTOINC_PARAM, NAME=AP1
0.25, 10, 50, 10, 1
1.25,  1,  1,  1, 2
0.25,  5
!TIME_POINTS, TIME=TOTAL, NAME=TP1
1.5
2.7
3.9
!STEP, INC_TYPE=AUTO, SUBSTEPS=200, AUTOINCPARAM=AP1, TIMEPOINTS=TP1
0.01, 2.5, 1E-5, 0.3

Формат введення та значення за замовчуванням кожного параметра див. у !STEP, !AUTOINC_PARAM і !TIME_POINTS.

Керування кроками динамічного аналізу

Для прямого інтегрування за часом у динамічному аналізі метод розв’язання та параметри інтегрування за часом задаються в !DYNAMIC, а крок аналізу, групи граничних умов і навантажень та спосіб прирощення — в !STEP. Якщо !STEP пропущено, виконується однокроковий аналіз, у якому активні всі граничні умови й навантаження.

За фіксованого приросту в другому рядку !STEP задаються DTIME, ETIME, щоб керувати приростом часу та тривалістю кроку окремо для кожного кроку. Якщо визначено кілька !STEP, можна перемикати активні групи граничних умов і навантажень між кроками. t_delta і n_step у !DYNAMIC використовуються як значення за замовчуванням для старого однокрокового формату без !STEP або для зворотної сумісності. Для нових вхідних даних рекомендується явно задавати часові умови через !STEP навіть за фіксованого приросту.

Для автоматичного прирощення задайте !STEP, INC_TYPE=AUTO, а в рядку даних !STEP укажіть початковий приріст часу, тривалість кроку, нижню та верхню межі приросту часу. У нелінійному неявному методі приріст часу збільшується або зменшується залежно від стану ітерацій Ньютона та контактних ітерацій; якщо збіжності немає, стан повертається до попереднього й обчислення повторюється з меншим приростом часу.

TYPE (STATIC/VISCO) у !STEP є перемикачем часової залежності матеріалу для кроку й діє лише в статичному аналізі. У динамічному аналізі він не використовується, а приріст часу завжди розглядається як фізичний час, тому задання TYPE у !STEP динамічного аналізу не має ефекту.

Метод інтегрування за часом, коефіцієнти методу Ньюмарка-β тощо задаються в !DYNAMIC. Формат введення див. у !DYNAMIC і !STEP.

Керування кроками теплопровідного аналізу

Часовий крок теплопровідного аналізу задається в !HEAT. У !HEAT спільно задаються часовий крок, час завершення, мінімальний часовий крок, максимальна зміна температури, кількість ітерацій, критерій збіжності тощо.

Керування часом у теплопровідному аналізі працює за механізмом, відмінним від !STEP, INC_TYPE=AUTO структурного статичного аналізу. Тому для налаштування часового кроку теплопровідного аналізу слід перевіряти !HEAT, а не !STEP. Формат введення див. у !HEAT.

Задання часу виведення

За автоматичного прирощення приріст часу змінюється відповідно до стану збіжності, тому моменти виведення результатів можуть не збігатися із заздалегідь потрібними. !TIME_POINTS — це список моментів часу, для яких приріст часу коригується так, щоб обчислення рівноваги обов’язково виконувалося в заданий момент і результат можна було вивести.

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

Для кожного кроку список часу, що використовується, посилається з !STEP. У поєднанні з автоматичним прирощенням приріст часу обрізається так, щоб не перевищити наступний час виведення або час завершення кроку. Формат введення див. у !TIME_POINTS.

Пов’язані теми