В данной статье описан облачный сервис ammonit3d (https://ammonit.xyz) — [1] на основе интерактивной веб 3D-графики для моделирования пространственных стержневых систем (пространственных ферм, балок, рам, связей) методом конечных элементов с численно-аналитическим решением для каждого конечного элемента, в основе которого — математическая модель Эйлера — Бернулли [2-5]. Идея численно-аналитического способа нахождения прогибов и усилий в рамках одного конечного элемента основана на определении функции прогиба из решения обыкновенного неоднородного дифференциального уравнения 4-го порядка для упругой оси стержня с линейно распределенной силой и парой сил по длине стержня. На примере одноэлементной модели балки с жестко защемленными концами дано сравнение аналитического и численного решения SCAD++, Лира и веб-приложения ammonit3d [1].
Описание облачного SPA-приложения
Данная статья посвящена, в том числе, собственному опыту по разработке ammonit3d [1] — облачного SPA веб-приложения (Single Page web Application, или одностраничного веб-приложения) для моделирования пространственных стержневых систем (пространственных ферм, балок, рам, связей). Особенность приложения в том, что в нем был использован метод конечных элементов с численно-аналитическим решением (то есть аналитическое определение параметров усилий в рамках одного конечного элемента), и интерактивная WebGL-графика, которая позволяет отображать эпюры на пространственной схеме и использовать анимацию «на лету». В приложении используется, в том числе, математическая модель Эйлера — Бернулли, вариационные принципы и итерационный метод сопряженных градиентов, применяемый для большеразмерных СЛАУ с разреженной матрицей жесткости, с одной стороны, и JavaScript-экосистема облака, выполненного в стеке
Node.js, Express.js серверной части и
React.js, MobX, Three.js, glsl-шейдеров клиентской части, с другой стороны. Отображение эпюр усилий в пространственных стержневых элементах реализовано на шейдерах vertexShader и fragmentShader. Это позволяет вычислять эпюры для каждого стержня «на лету» и выполнять отображение графиков (в общем случае полиномов 5-й степени) в пространственной схеме мгновенно.
Клиентская часть представляет собой одностраничное SPA-приложение с возможностью регистрации новых пользователей, профиля пользователя для управления приватными моделями, списком публичных моделей и основного интерфейса приложения, который состоит из навигационной панели и окна 3D-сцены. Веб-приложение построено на адаптивной верстке. Это позволяет организовать удобное отображение элементов интерфейса на мониторах, планшетах и смартфонах. И главная особенность — моделями расчетных 3D-схем можно делиться в соцсетях, по почте, размещать ссылки публичных моделей на различных сайтах или делиться приватными моделями в своем сообществе.
Механическая модель Эйлера — Бернулли
В основе численно-аналитического решения пространственных стержней (балок, ферм, рам, связей) методом конечных элементов лежит механическая модель изогнутой балки или стержня длиной L с заданной изгибной жесткостью EJ и постоянным поперечным сечением. На стержень действуют сосредоточенная сила F или момент M, а также распределенная сила q(x1) или момент m(x1) по длине стержня 0 < x1 < L и в общем случае они являются полиномами первой степени. Начало координат локального ортонормированного базиса совпадает с центром тяжести сечения левого конца стержня. Продольная ось стержня x1, ось x2 является вертикальной, а ось x3 направлена на нас из точки пересечения x1, x2. Примем гипотезу Эйлера — Бернулли, полагая сечения плоскими до и после изгиба, а также одноосное деформированное состояние ε11 в рамках линейной теории упругости. Это необходимое и достаточное условие для стержней и балок, характерный размер поперечного сечения которых на порядок меньше длины стержня L. Тогда уравнение изогнутой оси стержня в плоскости Ox1, x2 можно записать в виде обыкновенного неоднородного дифференциального уравнения 4-го порядка, с распределенными силами и парами в виде линейных полиномов правой части [2-5]:
.
Здесь и далее x = x1. Как известно, общее решение такого уравнения представляется суммой частного решения правой части и решения однородного обыкновенного дифференциального уравнения, в общем случае — полиномом 5-й степени [5]:
,
где коэффициенты a1 ÷ a4 находятся из краевых условий:

где
— производная по координате x = x1 или угол поворота. Тогда коэффициенты a1 ÷ a4 могут быть выражены через прогибы (вертикальные перемещения) Vp и повороты φp в узлах стержня p = {1,2} — [5]:
,
где
— эрмитовы полиномы p-го узла I-ой степени свободы. В таком случае можно выписать систему линейных алгебраических уравнений (СЛАУ) из условия стационарности дискретного функционала Лагранжа [5]:

где
— вторая производная эрмитового полинома по координате х.
Для связи локальной и глобальной области обычно используется матрица ортогональных преобразований (для которой обратная матрица равна транспонированной), компоненты которой являются координатами локального базиса i, j, k в глобальной системе координат. Матрицу жесткости в глобальном базисе можно получить из матрицы жесткости локального базиса, если выписать квадратичную часть функционала Лагранжа в терминах глобальных прогибов и поворотов:

Таким образом, можно составить глобальную СЛАУ и найти неизвестные узловые прогибы (перемещения) и повороты. В этом и заключается основная идея метода конечных элементов. Далее, зная узловые перемещения и повороты в глобальной системе координат, можно с помощью матрицы
транспонированной перейти к локальным перемещениям (прогибам) и поворотам в узлах и восстановить аналитическую функцию прогиба, функцию момента и поперечной силы:
,
Стоит сделать уточнение. Если рассматривается краевая задача на плоскости, то индексы матрицы ортогональных преобразований i, j, m, n = {1,2}.
В качестве примера на рис. 1 и 2 представлены иллюстрации публичных конечно-элементных моделей с эпюрами прогибов и моментов, найденных численно-аналитическим методом в рамках гипотезы Эйлера — Бернулли.
![Рис. 1. Эпюры прогибов Uy для пространственной рамы [6] под действием крутящего момента M3, приложенного к центральному узлу верхней грани модели. Если приложена линейная распределенная нагрузка q(x), то функция прогиба вдоль элемента в общем случае является полиномом 5-й степени](/archive/sg/2026/6/6/001.jpg)
Рис. 1. Эпюры прогибов Uy для пространственной рамы [6] под действием крутящего момента M3, приложенного к центральному узлу верхней грани модели. Если приложена линейная распределенная нагрузка q(x), то функция прогиба вдоль элемента в общем случае является полиномом 5-й степени
![Рис. 2 Эпюры моментов для 3-элементной рамы [7]. В общем случае вдоль стержня моменты представлены полиномом 3-й степени для линейного полинома q(x) = kx+q0](/archive/sg/2026/6/6/002.jpg)
Рис. 2 Эпюры моментов для 3-элементной рамы [7]. В общем случае вдоль стержня моменты представлены полиномом 3-й степени для линейного полинома q(x) = kx+q0
Сравнение функций прогибов v(x) и моментов My(x), найденных аналитически и численно SCAD++, ammonit3d
Параметр |
v(0.5), [м] |
My(0.0), [Н·м] |
My(0.5), [Н·м] |
Аналитическая формула |
1.16500E3 |
–250 |
125 |
SCAD++ |
1.16499E3 |
–250 |
125 |
Лира |
1.16500E3 |
–250 |
125 |
ammonit3d |
1.16500E3 |
–250 |
125 |
Сравнение аналитического решения с результатами SCAD++, Лира и ammonit3d в рамках одноэлементной схемы
Рассмотрим модель балки из одного конечного элемента — пространственного стержня, концы которого жестко защемлены. Длина балки L = 1 м с квадратным сечением высотой h = 25 мм (L\h>10) из стали с модулем Юнга E = 2.06E+11 Н/м2 и коэффициентом Пуассона v = 0.3. На балку сверху по всей ее длине действует статическая равномерно распределенная нагрузка q0 = – 3 кН/м. Следовательно, из общего решения функция прогиба и изгибающего момента примет вид:

Из аналитических выражений и графиков, представленных на рис. 3 и 4, видно, что наибольший прогиб v(x) достигается в середине балки v(0.5) = 1.165·10-3 м.
Наибольший изгибающий момент достигается на концах балки M(0) = M(1) = –250 Н·м. В середине балки момент равен M(0.5) = 125 Н·м. Аналогичные результаты были получены и в программе Лира.

Рис. 3. Распределение аналитической функции прогиба (а) и момента (б) по длине балки в рамках гипотезы Эйлера — Бернулли, найденной из дифференциального уравнения 4-го порядка

Рис. 4. Распределение момента (a) и прогиба (б), найденные SCAD++; распределение момента (в) и прогиба (г), найденные ammonit3d
Безусловно, коммерческие пакеты SCAD++ и Лира обеспечивают в рамках модели Эйлера-Бернулли аналитическую точность на одном конечном элементе, как и ammonit3d. Однако облачное приложение демонстрирует современную графику и кроссплатформенность, то есть возможность создавать модели и выполнять расчеты на компьютерах, планшетах, смартфонах и других гаджетах, имеющих доступ к интернету. И главная особенность — моделями 3D-расчетных схем можно делиться в соцсетях, по почте, размещать ссылки публичных моделей на различных сайтах или делиться приватными моделями в своём сообществе.
Список источников:
- Романов А.В. Облачное SPA-приложение https://ammonit.xyz.
- Победря Б.Е., Георгиевский Д.В. Лекции по теории упругости. М.: Ленанд, 2018. 208 с.
- Segerlind, L.J. Applied Finite Element Analysis. New York-London-Sydney-Toronto, John Wiley & Sons 1976. XIII, 422 S.
- Oñate E. Structural Analysis with the Finite Element Method Linear Statics. Volume 2: Beams, Plates and Shells. Lecture Notes on Numerical Methods in Engineering and Sciences. Springer Dordrecht. 2013. https://doi.org/10.1007/978-1-4020-8743-1.
- Романов А.В. Облачное моделирование пространственных стержней численно-аналитическим методом // В сб. Материалы XXX международного симпозиума «Динамические и технологические проблемы механики конструкций и сплошных сред» имени А.Г. Горшкова. Издательство Общество с ограниченной ответственностью «ТОРУС ПРЕСС» (г.Москва), том 1, 2026.
- Модель: «Рамный каркас». https://ammonit.xyz/?mid=5666e06b-f0ea-41f8-836c-47f11cb702ef.
- Модель: «Рама». https://ammonit.xyz/?mid=8ca12345-4ec6-4541-ba21-08f9d2b33b51.


.jpg)

