Що таке метод скінченних елементів?
МСЕ розбиває суцільну конструкцію на прості елементи. Для 2D-ферми (тип, що використовується в мостах) кожен елемент — це стрижень, який може сприймати лише осьове навантаження — розтягування чи стискання. Аналіз визначає, наскільки деформується кожен стрижень під зовнішнім навантаженням, а потім обчислює внутрішнє напруження.
Для ферми з $n$ вузлами система рівнянь має вигляд: $\mathbf{K} \cdot \mathbf{u} = \mathbf{f}$, де $\mathbf{K}$ — глобальна матриця жорсткості ($2n \times 2n$), $\mathbf{u}$ — вектор переміщень, а $\mathbf{f}$ — вектор прикладених сил.
Крок 1: Побудова матриці жорсткості елемента
Кожен стрижень ферми додає локальну матрицю жорсткості 4×4. Вона залежить від кута орієнтації стрижня $\theta$, площі його поперечного перерізу $A$, модуля Юнга $E$ та довжини $L$:
Крок 2: Складання глобальної матриці жорсткості
Матриця 4×4 кожного елемента "штампується" у відповідні позиції глобальної матриці розміром $2n \times 2n$. Вузол $i$ займає ступені вільності $[2i, 2i+1]$ (x та y):
Крок 3: Застосування граничних умов
Закріплені вузли (опори) мають відоме переміщення (нульове). Ми закладаємо це, обнуляючи рядок і стовпець для кожного закріпленого ступеня вільності та встановлюючи діагональ у 1:
Крок 4: Розв'язувач методом Гаусса
Із застосованими граничними умовами розв'язуємо $\mathbf{K} \cdot \mathbf{u} = \mathbf{f}$ методом Гаусса з частковим вибором провідного елемента. Для типового моста (50 вузлів) це виконується менш ніж за 1 мс у JavaScript:
Крок 5: Обчислення напруження в елементах
Знаючи переміщення $\mathbf{u}$, осьову деформацію кожного стрижня обчислюємо як: $\varepsilon = (du_x \cdot \cos\theta + du_y \cdot \sin\theta) / L$, а напруження — як $\sigma = E \cdot \varepsilon$. Додатне значення = розтягування (стрижень витягується), від'ємне = стискання.
Крок 6: Кольорове кодування напружень у Three.js
Значення напруження кожного стрижня перетворюється на колір: синій (максимальне стискання) → білий (нульове навантаження) → червоний (максимальне розтягування).
Візуалізація деформації (масштаб 50×)
Реальні прогини сталевих мостів під навантаженням вимірюються міліметрами — вони непомітні у звичайному масштабі. Ми застосовуємо настроюваний коефіцієнт посилення (за замовчуванням 50×) до переміщень вузлів, щоб деформація була видимою без спотворення геометрії. Стрижень залишається з'єднаним з (масштабованими) зміщеними вузлами:
Готові типи мостів (пресети)
Примітка щодо точності: Наша реалізація обробляє лише 2D-елементи ферми. Реальні мости потребують 3D-балкових елементів (Ейлера-Бернуллі) для врахування згинальних моментів. Для навчальної мети — демонстрації складання матриці жорсткості та розв'язання МСЕ — 2D-аналіз ферми є точним і швидким у браузері.
Спробуйте зараз
Відкрийте Конструктор мостів, оберіть пресет, прикладіть навантаження в різних вузлах і спостерігайте, як кольорове кодування напружень і деформація оновлюються в реальному часі. Панель коефіцієнта запасу міцності стає червоною, коли будь-який елемент перевищує межу текучості.