Библиотека конечных элементов и сеточных технологий
WebCAE включает законченную мультифизическую библиотеку конечных элементов и конечно-объёмных ячеек, скомпилированную в WebAssembly для расчёта в браузере на вашем устройстве и в нативный бинарный код для десктопных рабочих станций. Комплекс объединяет 1D балки Тимошенко, 2D оболочки MITC4 и Миндлина–Рейснера, 3D линейные и квадратичные изопараметрические элементы (Tet4, Tet10, Hex8, Hex20, Hex27, Voxel8, Wedge6, Pyr5), точечные массы и конечно-объёмные дуальные схемы SU2_CFD. Все элементы автоматически встраиваются в расчёты статики, модального анализа, потери устойчивости, теплопроводности и геометрически нелинейного контакта Mortar без необходимости ручного выбора номеров элементов в интерфейсе.
Верификация и сравнение с эталонами
Каждая формулировка элементов WebCAE проверена на аналитических решениях и тестах NAFEMS и MacNeal–Harder с открытой публикацией погрешностей.
Сводный каталог элементов решателя
13 FEA + SU2 FVMСводная таблица численных формулировок, кинематических степеней свободы, схем интегрирования и областей применения элементов с ID 1 по 13 и ячеек гидрогазодинамики CFD.
| ID | Тип элемента | Узлы | DOF / узел (Всего) | Схема квадратуры | Область применения |
|---|---|---|---|---|---|
| #1 | 3D балка Тимошенко (базовая) STRUCT_BEAM | 2 | 12 | 2 точки Гаусса / аналитическая | Пространственные симметричные каркасы, фермы, балки без смещения осей |
| #2 | 4-узловая оболочка MITC4 (базовая) STRUCT_SHELL_QUAD | 4 | 24 | 2x2 Гаусс + сдвиговые связки MITC4 | Однородные металлические листы, пластины, резервуары без смещения срединной плоскости |
| #3 | 8-узловой трилинейный гексаэдр (Hex8) STRUCT_SOLID_HEX | 8 | 24 | 2x2x2 Гаусс (метод B-bar) | Регулярные объёмы, протянутые sweep-сетки, O-Grid цилиндры, массивные плиты |
| #4 | 4-узловой линейный тетраэдр (Tet4) STRUCT_SOLID_TET | 4 | 12 | 1 точка Гаусса в барицентре | Автоматическая генерация Netgen, быстрый экспресс-расчёт, адаптивное сгущение |
| #5 | Сосредоточенная точечная масса и инерция STRUCT_MASS | 1 | 6 | Узловая сосредоточенная масса | Навесное оборудование, двигатели, балласт в модальном и динамическом анализе |
| #6 | 10-узловой квадратичный тетраэдр (Tet10) STRUCT_SOLID_TET10 | 10 | 30 | 4 точки Гаусса Keast | Промышленные CAD/B-Rep детали, концентраторы напряжений, изгибаемые тела |
| #7 | 3-узловая треугольная оболочка STRUCT_SHELL_TRI | 3 | 18 | 1 точка по площади / 3 точки Гаусса | Неструктурированные треугольные оболочки, сложные поверхности B-Rep, стыки |
| #8 | 20-узловой гексаэдр серендипова семейства (Hex20) STRUCT_SOLID_HEX20 | 20 | 60 | 3x3x3 = 27 точек Гаусса | Кольца отверстий (Hole Collar), усталостные концентраторы, прецизионный контакт |
| #9 | 6-узловая треугольная призма / клин (Wedge6) STRUCT_SOLID_WEDGE6 | 6 | 18 | 6 точек Гаусса (3 в треугольнике x 2 по высоте) | Sweep протяжка смешанных торцов, пограничные призматические слои, CFD погранслой |
| #10 | 5-узловая четырёхугольная пирамида (Pyr5) STRUCT_SOLID_PYR5 | 5 | 15 | 5 точек Гаусса | Конформный переходный мост между 4-узловыми гранями Hex8/Wedge6 и 3-узловыми Tet4 |
| #11 | 27-узловой триквадратичный гексаэдр (Hex27) STRUCT_SOLID_HEX27 | 27 | 81 | 3x3x3 = 27 точек Гаусса | Эталонные расчёты волновых процессов, пограничные слои сдвига, p-адаптация |
| #12 | 3D балка Тимошенко (расширенная) STRUCT_BEAM_EXT | 2 | 12 | 2 точки Гаусса с кинематическим плечом | Подкреплённые панели (flush=outer|inner), уголки, швеллеры, смещённый центр сдвига |
| #13 | 4-узловая оболочка MITC4 (ламинат / пакет ABD) STRUCT_SHELL_QUAD_L | 4 | 24 | 2x2 Гаусс с интеграцией пакета ABD | Многослойные композиты (CLT), ортотропные листы, смещение отсчётной поверхности (z0) |
| CFD | Конечно-объёмная дуальная полиэдральная ячейка SU2_CFD FVM | Tet/Hex/Wedge/Pyr | Потоки на рёбрах | Узловые медианные дуальные контрольные объёмы | Внешняя аэродинамика профилей и крыльев, внутренние каналы, 1-DOF гидроупругость FSI |
Сводный каталог элементов решателя (ID 1–13 и CFD)
Расчётный комплекс WebCAE включает математически строгое семейство конечных элементов и конечно-объёмных ячеек, скомпилированное в WebAssembly для мгновенной работы в браузере и в нативный бинарный код для десктопных рабочих станций. Внутреннее расчётное ядро строго следует перечислению enum StructuralElemType из файла solver_structural.hpp (номера с 1 по 13), дополненному схемой FVM для гидрогазодинамики SU2.
#1 STRUCT_BEAM — 3D балка Тимошенко (базовая)
Элемент STRUCT_BEAM — двухузловой пространственный стержневой элемент с 6 физическими степенями свободы в каждом узле ($u_x, u_y, u_z, \theta_x, \theta_y, \theta_z$), что даёт 12 степеней свободы на элемент.
- Вектор свойств сечения: Компактный 6-элементный массив:
[E, G, A, Iy, Iz, J], где $E$ — модуль Юнга, $G$ — модуль сдвига, $A$ — площадь сечения, $I_y, I_z$ — главные моменты инерции, $J$ — крутильная жёсткость Сен-Венана. - Сдвиговая деформация Тимошенко: Угол поворота сечения не привязан жёстко к производной линии прогиба. Поперечный сдвиг учитывается через безразмерные коэффициенты $\Phi_y$ и $\Phi_z$: $$\Phi_y = \frac{12 E I_z}{\kappa_y G A L^2}, \quad \Phi_z = \frac{12 E I_y}{\kappa_z G A L^2}$$ где $\kappa_y, \kappa_z$ — сдвиговые коэффициенты Каупера (по умолчанию $5/6$ для прямоугольника). При $L/h \to \infty$ параметр $\Phi \to 0$, обеспечивая асимптотический переход к балке Бернулли без численного запирания.
- Кручение Сен-Венана: Чистый крутильный момент $G J / L$ действует вокруг продольной локальной оси.
- Коротационная нелинейность (`beamcorot`): В расчётах с большими перемещениями (
nlgeom) используется кинематическое расщепление $SE(3)$: твёрдотельное перемещение и пространственные повороты выделяются в подвижный базис, а упругие деформации вычисляются в локальной системе.
#2 STRUCT_SHELL_QUAD — 4-узловая оболочка MITC4 (базовая)
Элемент STRUCT_SHELL_QUAD — 4-узловой четырёхугольник с 6 степенями свободы на узел (24 DOF на элемент), реализующий смешанную интерполяцию тензорных компонент MITC4 (Батэ и Дворкин).
- Вектор свойств: Стандартная изотропная тройка:
[E, nu, t](модуль Юнга, коэффициент Пуассона, толщина листа). - Устранение сдвигового запирания (Shear Locking): В тонких пластинах ($t/L < 0.001$) классические элементы чрезмерно ожесточаются из-за кинематического зажима $\gamma = 0$. Метод MITC4 интерполирует компоненты поперечного сдвига $\gamma_{xz}$ и $\gamma_{yz}$ из контрольных точек на серединах рёбер: $$\gamma_{r3} = \frac{1}{2}(1 + s) \gamma_{r3}^{(A)} + \frac{1}{2}(1 - s) \gamma_{r3}^{(C)}$$ $$\gamma_{s3} = \frac{1}{2}(1 + r) \gamma_{s3}^{(B)} + \frac{1}{2}(1 - r) \gamma_{s3}^{(D)}$$ Это полностью устраняет сдвиговое и мембранное запирание при любых соотношениях гибкости $L/t > 1000$ (тесты Макнила–Хардера и свод Скорделиса–Ло).
- Стабилизация drilling DOF: Вращение $\theta_z$ стабилизируется штрафом Хьюза–Бреззи $k_{\text{drill}} = 10^{-3} G A_{\text{elem}} t$.
#3 STRUCT_SOLID_HEX — 8-узловой гексаэдр (Hex8)
Элемент STRUCT_SOLID_HEX — 8-узловой трилинейный изопараметрический кирпич с 3 степенями свободы перемещения на узел ($u_x, u_y, u_z$), итого 24 степени свободы.
- Селективная проекция объёмной деформации (метод $\bar{B}$ / B-bar): Стандартное интегрирование $2 \times 2 \times 2$ страдает от объёмного запирания (volumetric locking) при несжимаемости материала (коэффициент Пуассона $\nu \to 0.5$, резина, пластичность). Метод $\bar{B}$ расщепляет матрицу деформаций на девиаторную и шаровую части: $$\mathbf{B} = \mathbf{B}_{\text{dev}} + \bar{\mathbf{B}}_{\text{vol}}, \quad \bar{\mathbf{B}}_{\text{vol}} = \frac{1}{V_e} \int_{V_e} \mathbf{B}_{\text{vol}} dV$$ Объёмная деформация усредняется по объёму ячейки, что снимает искусственное ожесточение, а полный ранг исключает появление паразитных форм потери устойчивости (hourglass modes).
- Геометрическая нелинейность (`solidtl`): Total Lagrangian с тензором деформаций Грина–Лагранжа $\mathbf{E}$ и вторым тензором напряжений Пиолы–Кирхгофа $\mathbf{S}$.
#4 STRUCT_SOLID_TET — 4-узловой линейный тетраэдр (Tet4)
Элемент STRUCT_SOLID_TET — 4-узловой симплекс с 3 поступательными степенями свободы на узел (12 DOF суммарно).
- Квадратура: 1 точка интегрирования Гаусса в барицентре тетраэдра ($\xi = \eta = \zeta = 1/4$, вес $W = 1/6$).
- Механика: Линейное поле перемещений и строго постоянный тензор деформаций по всему объёму.
- Назначение: Базовая ячейка алгоритмов быстрой автоматической триангуляции Делоне и метода наступающего фронта (ядро Netgen). Оптимален для растянутых/сжатых массивных деталей, теплопроводности и фоновых сеток адаптивного сгущения.
#5 STRUCT_MASS — Сосредоточенная масса и инерция
Элемент STRUCT_MASS — 1-узловой динамический элемент с 6 степенями свободы ($u_x, u_y, u_z, \theta_x, \theta_y, \theta_z$).
- Вектор свойств: 4 числа:
[m, Ixx, Iyy, Izz]— масса $m$ и главные моменты инерции вокруг координатных осей. - Формулировка: Формирует вклад исключительно в матрицу масс $\mathbf{M}$ ($m$ в поступательные строки, $I_{xx}, I_{yy}, I_{zz}$ во вращательные). Матрица жёсткости строго нулевая ($\mathbf{K} = \mathbf{0}$).
- Применение: Модальный анализ (
solve modal) и расчёт динамических колебаний: двигатели, полезная нагрузка, навесные агрегаты и балласт без утяжеления CAD-геометрии.
#6 STRUCT_SOLID_TET10 — 10-узловой квадратичный тетраэдр (Tet10)
Элемент STRUCT_SOLID_TET10 — 10-узловой криволинейный тетраэдр (4 вершины + 6 серединных узлов на рёбрах), по 3 степени свободы на узел (30 DOF суммарно).
- Квадратура: Точное интегрирование по 4 точкам Гаусса схемы Киста (Keast).
- Защита от сдвигового запирания: Квадратичные функции формы обеспечивают линейное изменение деформаций и напряжений внутри элемента. Элемент свободен от сдвигового запирания при изгибе, обеспечивая эталонную точность даже при одном элементе по толщине стенки.
- Аппроксимация геометрии CAD: Серединные узлы на внешних поверхностях проецируются на истинные криволинейные поверхности B-Rep (цилиндры, скругления, фаски). Это исключает фасеточную ступенчатость и гарантирует достоверные коэффициенты концентрации напряжений $K_t$.
#7 STRUCT_SHELL_TRI — 3-узловая треугольная оболочка
Элемент STRUCT_SHELL_TRI — 3-узловая плоская треугольная оболочка с 6 DOF на узел (18 DOF на элемент):
- Вектор свойств: Стандартная тройка
[E, nu, t]. - Мембранная и изгибная компоненты: CST мембрана + изгиб DKT (Discrete Kirchhoff Triangle) Миндлина–Рейснера.
- Стабилизация drilling DOF ($\theta_z$): Регуляризация Хьюза–Бреззи ($k_{\text{drill}} = 10^{-3} G A_{\text{tri}} t$), гарантирующая положительную определённость матрицы при пространственных изломах обшивки.
- Применение: Неструктурированные сетки сложных поверхностей STEP/B-Rep, органические формы и переходные зоны между квадами.
#8 STRUCT_SOLID_HEX20 — 20-узловой гексаэдр (Hex20)
Элемент STRUCT_SOLID_HEX20 — 20-узловой гексаэдр серендипова семейства (8 вершин + 12 серединных узлов на рёбрах), 3 DOF на узел (60 DOF суммарно).
- Квадратура: Численное интегрирование по сетке $3 \times 3 \times 3 = 27$ точек Гаусса (или редуцированная 14-точечная схема).
- Криволинейные рёбра: Серединные узлы точно садятся на дуги отверстий и пазов.
- Применение: Обоймы вокруг отверстий (Hole Collar), концентраторы напряжений при усталостном анализе и контактные зоны.
#9 STRUCT_SOLID_WEDGE6 — 6-узловая призма / клин (Wedge6)
Элемент STRUCT_SOLID_WEDGE6 — 6-узловая изопараметрическая треугольная призма (18 DOF суммарно).
- Квадратура: 6 точек Гаусса: 3 точки в плоскости треугольного сечения $\times$ 2 точки по высоте призмы.
- Применение: Sweep-протяжка 2.5D, пограничные слои (Inflation) и сопряжение блочных сеток с тетраэдрами.
#10 STRUCT_SOLID_PYR5 — 5-узловая пирамида (Pyr5)
Элемент STRUCT_SOLID_PYR5 — 5-узловая пирамида с 4-узловым четырёхугольным основанием и 1 вершиной (15 DOF суммарно).
- Рациональные функции формы Бедиа–Дювена: В WebCAE применяются рациональные базисные функции: $$N_i(\xi, \eta, \zeta) = \frac{1}{4} \left( (1 + \xi_i \xi)(1 + \eta_i \eta) - \zeta + \frac{\xi_i \xi \eta_i \eta \zeta}{1 - \zeta} \right) \quad (i=1..4), \quad N_5 = \zeta$$ сохраняющие $C^0$-непрерывность поля перемещений без сингулярности в вершине.
- Топологический мост: Четырёхугольное основание конформно стыкуется с гранью
Hex8илиWedge6, а 4 треугольные боковые грани соединяются с тетраэдрамиTet4без висячих узлов.
#11 STRUCT_SOLID_HEX27 — 27-узловой гексаэдр Лагранжа (Hex27)
Элемент STRUCT_SOLID_HEX27 — полный квадратичный лагранжев гексаэдр (8 вершин + 12 рёберных + 6 центров граней + 1 центральный узел), 3 DOF на узел (81 DOF суммарно).
- Полный тензорный базис: Базис $Q_2 = P_2(\xi) \otimes P_2(\eta) \otimes P_2(\zeta)$ лишён недостатков серендипова семейства при сильных внутренних искажениях сетки.
- Квадратура: $3 \times 3 \times 3 = 27$ точек Гаусса.
- Применение: Прецизионные эталонные расчёты волновых процессов, распространение сдвиговых волн в пограничных слоях и p-адаптивный анализ.
#12 STRUCT_BEAM_EXT — 3D балка Тимошенко (расширенная)
Элемент STRUCT_BEAM_EXT — расширенная двухузловая пространственная балка Тимошенко (12 DOF), содержащая 22 числа в массиве elemMat:
- Раскладка `elemMat[22]`:
-
[0..5]: Базовые параметры сечения:E, G, A, Iy, Iz, J-[6..7]: Точные сдвиговые коэффициенты $k_{sy}, k_{sz}$ -[8]: Центробежный момент инерции $I_{yz}$ для несимметричных профилей (уголки, Z-профили) -[9]: Угол крена главных осей сечения $\beta$ в радианах (rollDeg) -[10..12]: Опорный вектор $\mathbf{v}_{\text{ref}}$ для задания направления локальной оси $z$ -[13..15]: Плечи жесткого рычага Штейнера на узле $I$: $\mathbf{e}_1 = [e_{x1}, e_{y1}, e_{z1}]$ -[16..18]: Плечи жесткого рычага Штейнера на узле $J$: $\mathbf{e}_2 = [e_{x2}, e_{y2}, e_{z2}]$ -[19..20]: Координаты центра сдвига относительно центра сечения: $(y_s, z_s)$ -[21]: Неструктурная погонная масса $NSM$ (кг/м) - Связка с обшивкой по теореме Штейнера: При расчёте подкреплённых панелей (
assign beam,flush=outer|inner) кинематическая матрица $\mathbf{A}$ автоматически трансформирует продольные усилия балки в изгибающие моменты обшивки, обеспечивая точный эффективный момент инерции $I_{\text{eff}} = I_s + I_b + A_{\text{eff}} e^2$.
#13 STRUCT_SHELL_QUAD_L — 4-узловая оболочка MITC4 (пакет ABD ламината)
Элемент STRUCT_SHELL_QUAD_L — расширенная 4-узловая оболочка MITC4 (24 DOF) для многослойных композитов, ортотропии и смещённых отсчётных поверхностей, содержащая 36 чисел в массиве elemMat:
- Раскладка `elemMat[36]`:
-
[0..5]: Мембранная матрица жёсткости $\mathbf{A}$ ($A_{11}, A_{12}, A_{13}, A_{22}, A_{23}, A_{33}$) -[6..11]: Матрица мембранно-изгибного взаимодействия $\mathbf{B}$ ($B_{11}, B_{12}, B_{13}, B_{22}, B_{23}, B_{33}$) -[12..17]: Изгибная матрица жёсткости $\mathbf{D}$ ($D_{11}, D_{12}, D_{13}, D_{22}, D_{23}, D_{33}$) -[18..20]: Матрица поперечного сдвига $\mathbf{A}_s$ ($A_{s11}, A_{s12}, A_{s22}$) с учётом $k_s$ -[21]: Полная физическая толщина пакета $h$ (м) -[22..24]: Единичный вектор главной оси материала $\mathbf{x}_e$ в мировых координатах -[25..27]: Моменты инерции на единицу площади: $I_0 = \int \rho dz$, $I_1 = \int \rho z dz$, $I_2 = \int \rho z^2 dz$ -[28]: Масштабный множитель drilling-жёсткости -[29]: Неструктурная поверхностная масса $NSM$ (кг/м²) -[30..32]: Вектор температурных мембранных усилий $\mathbf{N}_T$ -[33..35]: Вектор температурных изгибающих моментов $\mathbf{M}_T$ - Смещение отсчётной поверхности $z_0$: Смещение срединной плоскости на $z_0$ пересчитывает блоки: $\mathbf{B}' = \mathbf{B} + z_0 \mathbf{A}$ и $\mathbf{D}' = \mathbf{D} + 2 z_0 \mathbf{B} + z_0^2 \mathbf{A}$, моделируя одностороннюю обшивку без смещения координатных узлов сетки.
CFD FVM (SU2_CFD) — Конечно-объёмная дуальная ячейка
В гидрогазодинамическом режиме (cfd) WebCAE задействует решатель SU2_CFD на узловых медианных дуальных объёмах:
- Дуальные контрольные объёмы: Вокруг каждого узла сетки строится многогранник $\Omega_i$, соединяющий центроиды смежных элементов (тетраэдров, призм, пирамид, гексаэдров) с серединами рёбер и граней.
- Законы сохранения: Интегральная форма уравнений Навье–Стокса: $$\frac{\partial}{\partial t} \int_{\Omega_i} \mathbf{U} d\Omega + \sum_{j \in N(i)} \oint_{\partial \Omega_{ij}} (\mathbf{F}_c - \mathbf{F}_v) \cdot d\mathbf{A} = \int_{\Omega_i} \mathbf{Q} d\Omega$$
- Конвективные потоки: Схема Роу (Roe) и центрированная схема JST с адаптивной вязкостью 2-го и 4-го порядков.
- Турбулентность: Модели Menter SST ($k-\omega$) для отрывных течений и Spalart–Allmaras для внешней аэродинамики.
- Подвижные сетки: Скользящие сетки (Sliding Mesh) для вращающихся роторов и винтов; упругая деформация сетки ALE для гидроупругости и флаттера.
Как выбирается тип элемента (почему в UI нет ручного выбора номеров 1–10)
В интерфейсе WebCAE пользователю не нужно вручную переключать числовые идентификаторы элементов от 1 до 13. Компилятор WebCAE реализует 4-уровневую автоматическую диспетчеризацию:
[1. Размерность геометрии] ──> Кривая: Балка (#1/#12) | Поверхность: Оболочка (#2/#7/#13) | Тело: Солид (#3..#6, #8..#11)
│
[2. Алгоритм генерации] ──> Free Tet (#4/#6) | Hex Sweep (#3/#8/#11) | Inflation (#9) | Мост (#10)
│
[3. Порядок интерполяции] ──> Порядок 1 (P1) | Порядок 2 (P2) | Sphere of Influence (Гибрид)
│
[4. Режим решателя] ──> Линейная статика | NLGEOM SE(3)/TL | Модальный/Buckling | SU2 CFD FVM4 уровня компилятора
1. Размерность геометрии:
- 1D балочные оси, стержни каркаса (frame, assign beam) $\to$ Элемент #1 (STRUCT_BEAM) или #12 (STRUCT_BEAM_EXT).
- 2D срединные поверхности, листовые детали (shell, frame patch) $\to$ Элемент #2 (STRUCT_SHELL_QUAD), #7 (STRUCT_SHELL_TRI) или #13 (STRUCT_SHELL_QUAD_L).
- 3D твердотельные CAD-тела (STEP/IGES/B-Rep) $\to$ Семейство 3D-солидов (#3..#6, #8..#11).
2. Алгоритм построения сетки:
- Неструктурированная сетка (mesh tet) $\to$ Tet4 (#4) или Tet10 (#6).
- Протяжка или O-Grid (mesh hex) $\to$ Hex8 (#3), Hex20 (#8) или Hex27 (#11).
- Пристенные слои (inflation) $\to$ Wedge6 (#9).
- Переход от гексаэдров к тетраэдрам $\to$ Pyr5 (#10).
- Регулярная декартова вокселизация $\to$ Voxel8 (#5).
3. Порядок аппроксимации ($p$-уровень):
- order=1 создаёт линейные элементы (Tet4, Hex8, Wedge6, Pyr5).
- order=2 активирует квадратичные элементы с серединными узлами (Tet10, Hex20, Hex27).
- Локальные зоны (Sphere of Influence) повышают порядок до квадратичного только внутри концентратора, сохраняя линейные элементы вдали.
4. Физический режим и материал:
- Линейная статика (solve) использует стандартные матрицы жёсткости.
- Большие перемещения (nlgeom) активируют коротационные операторы $SE(3)$ для балок/оболочек и формулировку Total Lagrangian для солидов.
- Гидрогазодинамика (cfd) автоматически преобразует сетку в контрольные объёмы для SU2.
Как компилятор выбирает между базовым и расширенным элементом: 1 vs 12 и 2 vs 13
Ключевая особенность компилятора WebCAE — динамическое повышение типа элемента в зависимости от физических атрибутов:
- Выбор балки: `#1 STRUCT_BEAM` vs `#12 STRUCT_BEAM_EXT` (функция компилятора
needsBeamExt/hasBeamExtStage3): - Базовый элемент (`#1`): Если у стержня симметричное сечение (круглая труба, двутавр, короб) без эксцентриситета ($e = 0$), без угла крена ($\beta = 0$), центр сдвига совпадает с центром тяжести ($(y_s, z_s) = (0, 0)$) и отсутствует неструктурная масса ($NSM = 0$) — компилятор эмитит компактный тип1(STRUCT_BEAM, 6 чисел материала). Это экономит память и ускоряет факторизацию матрицы. - Автоматическое повышение (`#12`): Как только у стержня появляется хотя бы один расширенный параметр: 1. Эксцентриситет полки или ребра:flush=outer,flush=innerилиecc=[ey, ez]2. Несимметричный открытый профиль (швеллер, уголок, Z-профиль) со смещённым центром сдвига: $(y_s, z_s) \ne 0$ 3. Центробежный момент инерции: $I_{yz} \ne 0$ 4. Угол поворота главных осей:rollDeg$\ne 0$ 5. Пользовательский опорный вектор ориентацииzref/vref6. Точные коэффициенты сдвига $k_{sy}, k_{sz}$ 7. Неструктурная погонная массаnsm$> 0$ компилятор мгновенно и прозрачно для пользователя переключает элемент на `12` (`STRUCT_BEAM_EXT`, 22 числа материала в `elemMat`). - Выбор оболочки: `#2 STRUCT_SHELL_QUAD` vs `#13 STRUCT_SHELL_QUAD_L`:
- Базовый элемент (`#2`): Однослойный изотропный лист без смещения срединной поверхности ($z_0 = 0$) и без неструктурной массы получает тип
2(STRUCT_SHELL_QUAD, 3 числа[E, nu, t]). - Автоматическое повышение (`#13`): Многослойный композитный пакет (CLT ламинат), ортотропный лист, оболочка со смещением отсчётной поверхности (offset$z_0 \ne 0$, порождающим матрицу связи растяжения-изгиба $\mathbf{B}$), неструктурная масса ($NSM > 0$) или градиент температур компилируются в `13` (`STRUCT_SHELL_QUAD_L`, 36 чисел пакета ABD).
Таблица диспетчеризации компилятора
| Команда в UI / DSL | Геометрия | Порядок | Назначаемый элемент решателя | Особенности формулировки |
|---|---|---|---|---|
frame node, frame member (симметр.) | 1D стержень | P1 | #1 STRUCT_BEAM | Балка Тимошенко, 12 DOF, 6 чисел [E, G, A, Iy, Iz, J] |
assign beam edges=... (flush/ecc) | 1D ребро | P1 | #12 STRUCT_BEAM_EXT | Балка Тимошенко с эксцентриситетом Штейнера, 22 числа |
mesh shell, квад-сетка изотропная | 2D лист | P1 | #2 STRUCT_SHELL_QUAD | MITC4, связки Батэ–Дворкина, 24 DOF, 3 числа [E, nu, t] |
| Композитный ламинат / смещение z0 | 2D пакет | P1 | #13 STRUCT_SHELL_QUAD_L | MITC4 с пакетом ABD из 36 чисел, смещение отсчётной оси |
mesh shell, три-сетка | 2D сложный лист | P1 | #7 STRUCT_SHELL_TRI | Мембрана CST + изгиб DKT + drilling $\theta_z$, 18 DOF |
mesh tet | 3D тело | P1 | #4 STRUCT_SOLID_TET | Симплекс постоянной деформации, 1 точка Гаусса, 12 DOF |
mesh tet order=2 | 3D B-Rep тело | P2 | #6 STRUCT_SOLID_TET10 | Квадратичный Tet10, 4 точки Keast, дуговая посадка, 30 DOF |
mesh hex | 3D призма | P1 | #3 STRUCT_SOLID_HEX | Гексаэдр Hex8, селективная проекция B-bar, 24 DOF |
mesh hex order=2 | 3D sweep-тело | P2 | #8 STRUCT_SOLID_HEX20 | Серендипов Hex20, 27 точек Гаусса, дуговые рёбра, 60 DOF |
| Триквадратичная гекса-сетка | 3D эталон | P2 | #11 STRUCT_SOLID_HEX27 | Полный Лагранж Q2, 27 узлов, 81 DOF |
| Точечная масса / полезная нагрузка | 0D узел | - | #5 STRUCT_MASS | Только матрица масс (K = 0), 4 числа [m, Ixx, Iyy, Izz] |
mesh inflation (погранслой) | 3D граница | P1 | #9 STRUCT_SOLID_WEDGE6 | Пятигранная призма Wedge6, 6 точек Гаусса, 18 DOF |
| Гекса-доминантный переход | 3D стык | P1 | #10 STRUCT_SOLID_PYR5 | Пирамида Бедиа–Дювена Pyr5, 5 точек Гаусса, 15 DOF |
cfd solve | 3D объём потока | FVM | SU2_CFD FVM | Дуальные многогранники, потоки Roe / JST, модели SST / SA |
Локальные зоны: Sphere of Influence, Cylinder, Hole Collar и гибридные переходы
Равномерное измельчение сетки по всей детали неэффективно: степени свободы растут в кубической прогрессии, а точность в некритичных зонах не меняется. WebCAE предоставляет локальные зоны сгущения, объединяющие измельчение размера ($h$-refinement) и локальное повышение порядка элементов ($p$-refinement).
Сфера влияния (Sphere of Influence): сгущение $h$ и порядок $p$
Сфера влияния задаётся центром $(x_c, y_c, z_c)$ и радиусом $R$:
mesh tet size=10
mesh refine sphere center=[50, 20, 0] radius=15 size=2 order=21. Измельчение размера ($h$): Внутри сферы элементы измельчаются с базовых $10\text{ мм}$ до $2\text{ мм}$ с плавным градиентным переходом к внешней границе.
2. Локальное повышение порядка ($p$): Внутри сферы создаются квадратичные элементы Tet10 (#6), улавливающие пики напряжений в концентраторах. Вне сферы остаются быстрые линейные Tet4 (#4).
3. Буферный слой и сшивка `LinearConstraint3`:
При стыковке P1 и P2 элементов на серединах рёбер возникают «висячие» узлы (hanging nodes).
WebCAE автоматически строит один буферный слой элементов и связывает степени свободы граничных серединных узлов через точные трёхчленные линейные уравнения связи:
$$u_m = \frac{1}{2} u_a + \frac{1}{2} u_b$$
где $u_m$ — перемещение серединного узла на стыке, а $u_a, u_b$ — перемещения угловых вершин соседнего линейного элемента.
Эти уравнения исключаются на этапе факторизации разрежённой матрицы, обеспечивая непрерывность перемещений $C^0$ и предотвращая ложные сингулярности напряжений.
Цилиндрические зоны, кольца Hole Collar и топология O-Grid
В окрестности отверстий распределение напряжений описывается решением Кирша ($K_t \approx 3$). Аппроксимация окружности многоугольником вносит геометрическую погрешность, занижающую пик напряжений.
1. Гекса-обойма вокруг отверстия (Hole Collar):
Вокруг отверстий компилятор WebCAE формирует радиальное кольцо из элементов Hex8 или Hex20. Шаг сетки по радиусу сгущается к кромке по геометрической прогрессии ($r_{i+1} = r_i \cdot q$).
В квадратичных сетках (Hex20) серединные узлы садятся точно на дугу окружности, исключая хордовую ошибку.
2. 5-блочная топология O-Grid для цилиндров:
Сплошные цилиндрические валы разбиваются по схеме O-Grid: центральный квадратный гекса-блок окружается 4 криволинейными полярными блоками. Это снимает сингулярность в центре и обеспечивает ортогональность граней ($90^\circ$) на наружной границе.
3. Конформный переход через 6-тетраэдральное разбиение Куна:
При переходе от гекса-обоймы к тетраэдральному ядру наружные четырёхугольные грани гексаэдров разбиваются на треугольники конформно через триангуляцию Куна без разрывов сетки.
Где рождаются призмы (#9 Wedge6) и пирамиды (#10 Pyr5)
- Sweep-протяжка торцов со смешанными ячейками: При вытягивании поверхностей с треугольниками и четырёхугольниками вдоль направляющей квады превращаются в
Hex8, а треугольники — в призмыWedge6. - Пристенные пограничные слои (Inflation): Экструзия треугольников обшивки по нормали к стенке порождает призмы с малым шагом по нормали для разрешения пристенного слоя ($y^+ \approx 1$).
- Пирамидальный переходный мост (`#10 Pyr5`): Пирамида служит конформным переходником: её четырёхугольное основание крепится к грани
Hex8илиWedge6, а 4 треугольные боковые грани соединяются с тетраэдрамиTet4.
Стержневые, оболочечные и подкреплённые конструкции (Beam + Shell)
В авиастроении (стрингеры и обшивка фюзеляжа), судостроении (шпангоуты и борта) и строительстве (диагрид-башни) широко применяются комбинированные балочно-оболочечные конструкции.
Сшивка на общих узлах vs. контактные связи
1. Параметрические оболочки и каркасы (`frame patch`, `frame stiffen`):
Оболочечные элементы (MITC4) и балки (Timoshenko) генерируются на единой сетке и разделяют общие номера узлов. Вспомогательные контактные уравнения не требуются: члены жёсткости суммируются в общей глобальной матрице $\mathbf{K}$.
2. Импринт на B-Rep (`imprint`, `assign beam`):
На листовых деталях STEP/IGES траектории рёбер впечатываются в поверхность командой imprint. Поверхностный мешер строит сетку с конформными узлами вдоль линий импринта. Балки назначаются непосредственно на рёбра: assign beam edges=....
Эксцентриситет оси ребра по теореме Штейнера
Нейтральная ось подкрепляющего ребра смещена относительно срединной поверхности обшивки:
assign beam edges=4,5,6 section=rect w=15 h=45 flush=outer- Кинематическое преобразование смещения: Перемещения $\mathbf{u}_b$ и повороты $\boldsymbol{ heta}_b$ в центре тяжести балки выражаются через степени свободы узла обшивки $\mathbf{u}_s, \boldsymbol{ heta}_s$: $$\mathbf{u}_b = \mathbf{u}_s + \boldsymbol{ heta}_s \times \mathbf{e}, \quad \boldsymbol{ heta}_b = \boldsymbol{ heta}_s$$ где $\mathbf{e} = [0, e_y, e_z]^T$ — вектор эксцентриситета.
- Матрица жёсткости в узлах обшивки: Матрица балки пересчитывается к узлам обшивки через оператор конгруэнтности: $$\mathbf{K}_{e,\text{shell}} = \mathbf{T}_{\text{ecc}}^T \mathbf{K}_{e,\text{beam}} \mathbf{T}_{\text{ecc}}$$ Это связывает осевое растяжение балки с изгибом обшивки, давая точный эффективный момент инерции: $$I_{\text{eff}} = I_s + I_b + A_{\text{eff}} e^2$$
Нелинейная механика, контакт Mortar и верификация
Геометрическая нелинейность (nlgeom)
WebCAE поддерживает расчёт больших перемещений и поворотов через два кинематических подхода:
1. Коротационный базис $SE(3)$ (балки и оболочки):
Для гибких элементов (STRUCT_BEAM, STRUCT_SHELL_TRI, STRUCT_SHELL_QUAD), полное движение разделяется на твёрдотельное вращение локального базиса и малые упругие деформации в подвижной системе координат. Это исключает ложное мембранное запирание при больших углах закручивания.
2. Формулировка Total Lagrangian (солид-элементы):
Для 3D элементов (STRUCT_SOLID_HEX, STRUCT_SOLID_TET, STRUCT_SOLID_TET10) уравнения формулируются в исходной недеформированной конфигурации $\Omega_0$. Используется пара «тензор деформаций Грина–Лагранжа $\mathbf{E}$ — второй тензор напряжений Пиолы–Кирхгофа $\mathbf{S}$», поддерживающая гиперупругие модели (неосжимаемый и сжимаемый Нео-Гук).
Нелинейный контакт Mortar
Для сборок с неконформными сетками применяется сегментный контактный алгоритм Mortar:
- Дуальные множители Лагранжа: Контактные давления $\boldsymbol{\lambda}$ интерполируются с использованием дуальных функций формы, удовлетворяющих условию биортогональности: $$\int_{\Gamma_s} \Phi_i N_j d\Gamma = D_{ii} \delta_{ij}$$ Это делает контактную матрицу диагональной, позволяя исключить множители Лагранжа из системы без увеличения ширины ленты.
- Типы взаимодействия: Односторонний контакт без трения, склейка (bonded tie) и кулоновское трение со сцеплением и проскальзыванием.
Матрица верификации элементов
Все элементы библиотеки WebCAE регулярно верифицируются на аналитических тестах и тестах NAFEMS и MacNeal–Harder. Полные результаты и отчёты опубликованы в разделе Верификация.
| ID и код элемента | Верификационный тест | Источник | Контролируемая величина | Допуск |
|---|---|---|---|---|
#1 STRUCT_BEAM | beam-cantilever | Аналитика Эйлера–Бернулли / Тимошенко | Прогиб консоли и опорные реакции | $< 0.1\%$ |
#2 STRUCT_SHELL_QUAD | macneal-harder-beam | Тест искривлённой балки Макнила–Хардера | Прогибы в плоскости и из плоскости | $< 1.1\%$ |
#3 STRUCT_SOLID_HEX | hex-cantilever-shear | NAFEMS LE1 | Прогиб и напряжения Мизеса | $< 0.8\%$ |
#4 STRUCT_SOLID_TET | tet-bar-tension | Закон Гука (аналитика) | Продольная реакция $R_z$ | $< 0.05\%$ |
#5 STRUCT_MASS | cantilever-lumped-mass-modal | Аналитическая частота Рэлея | Основная частота $f_1$ | $< 0.3\%$ |
#6 STRUCT_SOLID_TET10 | cylinder-stress-concentration | Аналитическое решение Кирша ($K_t = 3.0$) | Пиковое напряжение на кромке отверстия | $< 1.8\%$ |
#6 STRUCT_SOLID_TET10 | nafems-le1-elliptic-membrane | Тест NAFEMS LE1 | Напряжение $\sigma_y$ в углу эллипса | $< 2.2\%$ |
#7 STRUCT_SHELL_TRI | scordelis-lo-roof | Свод MacNeal–Harder | Вертикальный прогиб середины свода | $< 3.5\%$ |
#8 STRUCT_SOLID_HEX20 | o-grid-cylinder-torsion | Аналитическое кручение Сен-Венана | Угол закручивания $\theta$ и касательные напряжения | $< 0.5\%$ |
#9 STRUCT_SOLID_WEDGE6 | wedge-sweep-prism | Аналитика изгиба призматической балки | Прогиб торца и реакции | $< 1.4\%$ |
#10 STRUCT_SOLID_PYR5 | pyr-hybrid-patch-test | Патч-тест Айронса | Постоянная деформация и твёрдотельные моды | Точно ($< 10^{-7}$) |
#11 STRUCT_SOLID_HEX27 | hex27-wave-propagation | Аналитический тест упругой волны | Фазовая скорость и амплитуда | $< 0.4\%$ |
#12 STRUCT_BEAM_EXT | stiffened-panel-cantilever | Аналитика теоремы Штейнера | Изгибный прогиб панели с ребром | $< 1.2\%$ |
#13 STRUCT_SHELL_QUAD_L | composite-plate-bending | Аналитическое решение для CLT плиты | Прогиб в центре с муфтой ABD | $< 1.0\%$ |
SU2_CFD FVM | cfd-airfoil-naca0012 | База NASA Langley Turbulence Resource | Коэффициенты сопротивления $C_d$ и подъёмной силы $C_l$ | $< 2.0\%$ |
Верификация и сравнение с эталонами
Каждая формулировка элементов WebCAE проверена на аналитических решениях и тестах NAFEMS и MacNeal–Harder с открытой публикацией погрешностей.