Модель: FPRS3D
Библиотека: Mechanics3D
Имя на уровне решателя: FPRS3D
Аннотация: Элемент, распределяющий постоянное давление на пространственный треугольник
Обозначение:
Описание Модели
# Расчет векторов сторон треугольника
AB = nodeB.r - nodeA.r
AC = nodeC.r - nodeA.r
# Расчет нормали к треугольнику (векторное произведение)
normal = cross(AB, AC)
# Площадь треугольника (половина длины нормали)
area = 0.5 * norm(normal)
# Нормализованная нормаль
if area > 0:
n = normal / (2 * area)
else:
n = vector(0, 0, 0)
# Сила давления (равномерно распределенная по трем точкам)
force = Pressure.x * K * area * n / 3
# Приложение сил к узлам
nodeA.fx += force.x
nodeA.fy += force.y
nodeA.fz += force.z
nodeB.fx += force.x
nodeB.fy += force.y
nodeB.fz += force.z
nodeC.fx += force.x
nodeC.fy += force.y
nodeC.fz += force.z
№ |
Обозначение порта |
Тип |
Наименование порта |
|---|---|---|---|
1 |
nodeA |
base.XYZ |
Механический порт 1, движение точки A треугольника |
2 |
nodeB |
base.XYZ |
Механический порт 2, движение точки B треугольника |
3 |
nodeC |
base.XYZ |
Механический порт 3, движение точки C треугольника |
4 |
Pressure |
base.DOF1 |
Гидравлический порт 1, задает давление на элемент |
№ |
Параметр |
Тип |
Описание |
Значение по умолч. |
|---|---|---|---|---|
1 |
K |
base.real |
Масштабирующий коэффициент для пересчета давления в усилие |
1.0 |
2 |
pointA |
base.pXYZ |
Начальная координата точки A |
0, 0, 0 |
3 |
pointB |
base.pXYZ |
Начальная координата точки B |
1, 1, 1 |
4 |
pointC |
base.pXYZ |
Начальная координата точки C |
1, 1, 0 |