Математика провисающих проводов и цепей в играх
Время на прочтение
5 мин
Количество просмотров 12K
Во многих современных играх присутствуют провода, кабели и цепи. В этой статье мы рассмотрим математические модели, от которых зависит их форма, также называемая catenary («цепная линия»).
Введение в цепные линии
Из множества изученных и описанных математических объектов один очень дорог многим разработчикам игр. И только некоторые из них знают его истинное название: цепная линия.
Цепная линия — это фигура, к которой естественным образом сводится подвешенная за края верёвка или цепь. Неслучайно само название catenary происходит от латинского catenaria, что и означает «цепь».
В современных играх появляется всё больше заброшенных предприятий и разрушенных окружений. И во многих из них встречается довольно много свисающих проводов. Например, их можно увидеть в комнате GLaDOS из «Portal» или в «Half-Life: Alyx».
Так как цепные линии окружают нас повсюду, неудивительно, что мы с детства привыкли к их форме. А ещё это означает, что мы очень легко замечаем, когда что-то свисает неправильно. Подобно сложности движения кожи или физики ткани, неправильное свисание цепных линий само по себе создаёт эффект «зловещей долины».
Тем не менее, в очень многих играх цепные линии реализуют неправильно! Однако причина этого неудивительна. Хоть их так легко создавать в реальной жизни, их математическое описание — настоящий кошмар. За исключением нескольких особых случаев, «простых» уравнений для генерации цепной линии не существует; по крайней мере, не в том виде, который нужен для украшения уровня.
Один из стандартных способов создания физически обоснованных цепных линий без затрат — использование твёрдых тел (rigid bodies) и шарниров (hinge joints) при создании цепей и верёвок. Это имеет и дополнительное преимущество — они реагируют на действия игрока, однако ценой затратных вычислений. Большинство свисающих проводов и кабелей является частью фона, и использовать физику для их создания было бы слишком затратно. Следовательно, очень важно иметь возможность создавать статические цепные линии без вычислений в реальном времени.
Кроме того, отрисовка цепных линий имеет ещё одно преимущество. Допустим, что нам нужно создать для игры настоящий, управляемый физикой свисающий провод. Как располагать сегменты провода при его создании в игре? Многие разработчики бы просто разместили их вдоль линии, позволив физическому движку самому выбрать равновесное состояние. Отрисовка цепных линий позволяет инициализировать физически верные провода и кабели уже в их состоянии равновесия, без необходимости ждать, пока они сами остановятся в нужном положении.
Стоит заметить, что в Unity нет встроенных инструментов для кабелей и цепей, а в Unreal Engine существует Cable Component, решающий как раз эту задачу при помощи техники Verlet Integration (которая станет темой моих будущих статей). А на случай, если вам нравятся шейдеры, Росс Бёрдсэлл недавно создал гениальное решение для симуляции спиральных шнуров в Unreal Engine 4.
Формальное определение
Если мы хотим получить физически корректные цепные линии, то, наверно, лучше начать с начала. Простейшая цепная линия задаётся однозначно определённым уравнением с использованием
— гиперболического косинуса:
Уравнение цепной линии имеет параметр
, меняющий общую «ширину» кривой. Однако все кривые цепных линий похожи, потому что все они являются версиями друг друга с разным масштабом. Ниже показано изменение кривой как функции от
(в оригинале статьи анимация интерактивна):
Что такое гиперболический косинус?
Многие из вас знакомы с более «традиционной» функцией косинуса. Синус и косинус задаются на окружности, а их гиперболические аналоги — на гиперболе (см. анимацию ниже).
Их естественной областью использования является изучение гиперболической геометрии. Также они часто оказываются решением множества дифференциальных уравнений. На самом деле,
и
играют важную роль в решении следующего дифференциального уравнения:
а именно:
Также они сильно связаны с
:
Покажите, как выводится уравнение!
Вывод уравнения цепной линии — сложная задача, требующая довольно продвинутого математического анализа. Если вам любопытно, на Math24 есть очень подробная статья Equation of Catenary, пошагово демонстрирующая его вывод.
Вывод уравнения начинается с допущения о том, что для каждого небольшого сегмента цепи гравитационные силы находятся в идеальном балансе с силой натяжения от соседних сегментов. Это приводит к созданию системы уравнений, при решении которой мы получаем (1):
Этот вывод также даёт нам некое понимание того, что же на самом деле означает параметр
:
где:
Как используют цепные линии?
Кроме использования для воссоздания висящих цепей, цепные линии особенно полезны во множестве других областей применения. Их форма образуется благодаря тщательному балансу между внутренним натяжением цепи и силой гравитации. Такое равновесие означает, что вес самой цепи равномерно распределён вдоль всей длины. Благодаря этому перевёрнутые цепные линии становятся идеальной формой для свободно стоящих арок постоянной толщины.
Доктор Том Кроуфорд рассказывал об этом в недавнем видео Numberphile, объясняя, как внутренняя структура купола собора Святого Павла в Лондоне поддерживается перевёрнутой трёхмерной цепной линией.
Цепные линии обладают и ещё одним любопытным свойством. Они являются формой, позволяющей квадратам перемещаться без колебаний их центров (см. анимацию ниже).
Параметризация цепной линии
Если мы хотим научиться рисовать физически точные цепные линии, то (1) может быть не лучшим способом для этого. Причина проста: кроме изменения
у нас практически нет никакого контроля над тем, где и как их можно разместить.
Более «настраиваемым» уравнением является (2), позволяющее перемещать кривую горизонтально и вертикально при помощи двух дополнительных параметров
и
:
Однако в идеале нам бы подошло уравнение цепной линии, проходящей через две точки закрепления
и
:
Параметр
позволяет перемещать вершину цепной линии; когда
, вершина находится на оси Y. Мы можем сдвигать цепную линию так, чтобы вершина находилась ровно между
и
:
На самом деле, это идеально, если и
, и
находятся на одном уровне (т.е. когда
). Но если это не так, то получившаяся цепная линия будет физически неверной. Кроме того, это почти не позволяет нам управлять степенью провисания цепной линии. Поэтому нам нужно подойти к задаче по-другому: нам нужен более «художественный» способ управления линией.
Решение задачи цепной линии
В этом разделе мы покажем уравнения физически правильной цепной линии, представляющей верёвку, закреплённую в двух точках пространства,
и
, с заданной длиной
. Математический вывод уравнения довольно запутан, поэтому чтобы не мучить вас, я просто покажу результат решения.
Для начала зададим два вспомогательных параметра,
и
, указывающих горизонтальное и вертикальное расстояние между двумя точками.
При выводе уравнения мы предполагаем, что
; если это не так, то можно просто поменять местами две точки. Также нам нужно задать условие, что
больше расстояния между двумя точками. Это кажется справедливым, ведь длина цепной линии должна быть не меньше расстояния между точек закрепления.
Мы получаем следующие значения для
и
:
где
— гиперболический котангенс:
На показанной ниже анимации (в оригинале статьи она интерактивна) перемещается вторая точка закрепления (
) и меняется длина цепи (
), при этом изменяется форма линии.
Находим a
В предыдущем разделе нам не удалось представить уравнение первого параметра цепной линии:
. Так получилось, потому что в этом случае нет лаконичного решения, способного вычислить его точное значение. На самом деле, при любых попытках вывода
мы придём к следующему трансцендентному уравнению:
Иными словами, мы не можем преобразовать это уравнение в более простой вид
так, чтобы
не находилась и в правой части уравнения. Иногда трансцендентные уравнения можно переписать в таком виде, но часто это требует бесконечного количества операций (например, использования рядов или интеграла).
Когда такое происходит, то это значит, что нам нужен другой способ вычисления значения
. Если не получается решить задачу аналитически, то приходится использовать численные решения. То есть нам нужно использовать алгоритм для поиска приблизительного решения. Об этом мы поговорим в следующей статье.
Длина дуги цепной линии — это число, характеризующее протяжённость дуги цепной линии в единицах измерения длины.
Цепная линия (висящая цепь) — это линия, образуемая гибкой тяжёлой нерастяжимой нитью (цепью), подвешенной в двух точках. График цепной линии имеет вид графика гиперболического косинуса.
Рассмотрим дуги цепной линии, с вершиной в точке (0, R).
Обозначения[править]
Введём обозначения:
x1 — абсцисса (меньшая) первой точки;
y1 — ордината первой точки;
x2 — абсцисса (большая) второй точки;
y2 — ордината второй точки;
R — ордината вершины цепной линии;
M = (x, y) — точка цепной линии;
M0 = (0, R) — вершина цепной линии;
y = Rch(x/R) — уравнение цепной линии;
Lдуг.цеп — длина дуги цепной линии.
Формула[править]
- Длина дуги цепной линии M0M от вершины равна Lx = Rsh(x/R).
Вывод формулы[править]
- Для вывода используется формула «длина дуги плоской кривой» в прямоугольных координатах.
См. также[править]
- Площадь, ограниченная цепной линией и осью абсцисс
Другие формулы[править]
- длина дуги плоской кривой;
- длина дуги окружности;
- длина дуги параболы;
- длина дуги эллипса;
- длина дуги гиперболы;
- длина дуги синусоиды;
- длина дуги косинусоиды;
- длина дуги циклоиды;
- длина дуги кардиоиды;
- длина дуги астроиды;
- длина дуги эпициклоиды;
- длина дуги гипоциклоиды;
- длина дуги эвольвенты окружности;
- длина дуги цепной линии;
- длина дуги трактрисы;
- длина дуги лемнискаты Бернулли.
Литература[править]
- Бронштейн М. Н., Семендяев К. А., Справочник по математике — М., 1956, стр.113.
- Выгодский М. Я. Справочник по высшей математике — М.: Наука, 1964, стр.829.
7
ЛАБОРАТОРНАЯ
РАБОТА №
8—3
ПРИЛОЖЕНИЯ
ОПРЕДЕЛЁННОГО ИНТЕГРАЛА
Определённые
интегралы широко используются в
геометрии, физике и механике. С их помощью
легко вычисляются длины плоских кривых
и площади криволинейных областей,
пройденный точкой путь, произведенная
работа и многие другие механические и
физические величины.
Задача
1. Вычислить
длину дуги цепной линии, заданной
уравнением y=a
ch(x/a),
от точки x=0
до текущей координаты x.
Решение.
Известно, что дифференциал длины дуги
кривой, заданной явным уравнением
y=f(x),
выражается через производную следующим
образом:
Тогда
длина дуги кривой, ограниченной точками
x=x0
и x=x1,
определяется через интеграл в виде:
Вычислим
для цепной функции производную от длины
переменной дуги:
>
f:=x->a*cosh(t/a);
>
`s’`:=simplify(sqrt(1+diff(f(t),t)^2));
В
результате Maple
использовал функцию вычисления знака
csgn()
для выражения cosh(t/a)
(мы помним, что гиперболический синус
в англоязычной математической литературе
обозначается sinh(x),
гиперболический косинус cosh(x)).
Дело в том, что параметром в команде
упрощения simplify()
является выражение, содержащее квадратный
корень:
>
sqrt(1+diff(f(t),t)^2);
Под
корнем стоит выражение, которое упрощается
до квадрата функции cosh(t/a),
а так как результат извлечения квадратного
корня из квадрата действительного числа
зависит от знака числа, то Maple
как раз и использует функцию csgn()
для отражения этого факта. Однако мы
знаем, что функция гиперболического
косинуса всегда положительна, а поэтому
можем немного упростить полученное
выражение, убрав из него функцию
вычисления знака:
>
`s’`:=op(2,`s’`);
Теперь,
имея выражение
для дифференциала дуги цепной линии,
можно вычислить и ее длину:
>
Int(`s’`,t=0..x)=int(`s’`,t=0..x);
Используя
аналогичный подход, можно вычислять
длины дуг параметрически заданных
кривых. Единственное, что надо помнить,
это формулу дифференциала длины дуги
параметрически заданной кривой (x=x(t),
y=y(t)):
Задача
2. Вычислить
длину дуги четверти астроиды x=a
cos3
t,
y=a
sin3
t
(0
t/2).
Решение.
Начертим сначала график астроиды и
выделим дугу, длину которой необходимо
вычислить:
>
x:=a*cos(t)^3; y:=a*sin(t)^3;
>
f:=plot([eval(x,a=1),eval(y,a=1),t=0..2*Pi],color=black,
linestyle=7,thickness=2):
g:=plot([eval(x,a=1),eval(y,a=1),t=0..Pi/2],color=black,
linestyle=1,thickness=2):
with(plots):
display({f,g},scaling=CONSTRAINED);
На
рисунке астроида отображается точечной
линией, а ее четверть сплошной линией.
Теперь
вычислим производную длины дуги астроиды
и определённый интеграл от неё на
заданном интервале изменения параметра
t,
величина которого и будет равна длине
четверти астроиды:
>
`s’`:=simplify(sqrt(diff(x,t)^2+diff(y,t)^2));
>
Int(`s’`,t=0..Pi/2)=int(`s’`,t=0..Pi/2);
Из
определения определённого интеграла
нам известно, что если подынтегральная
функция f(x)
на некотором промежутке [a,b]
изменения независимой переменной x
положительна, то интеграл равен площади
криволинейной трапеции – фигуры,
ограниченной сверху кривой y=f(x),
слева и справа двумя ординатами x=a
и x=b
и снизу отрезком [a,b]
оси x.
Если фигура ограничена снизу не отрезком
оси x,
а также некоторой кривой y=g(x)
(причем эта кривая не обязательно должна
быть положительна), то площадь подобной
фигуры определяется по формуле:
Рисунок
примера 1 иллюстрирует сказанное выше
относительно вычисления площади
криволинейной трапеции.
Пример 1. Вычисление
площади фигуры
>
with(plots):
g2:=-0.1*(x-1)^2+15:
g1:=0.1*(x-4)^2+1:
n:=40:
f0:=plot(g1,x=0..10,0..17,color=black,thickness=2):
f1:=plot(g2,x=0..10,color=black,thickness=2):
f2:=seq(plot([[1+7/(n-1)*(i-1),eval(g2,x=1+7/(n-1)*(i-1))],
[1+7/(n-1)*(i-1),eval(g1,x=1+7/(n-1)*(i-1))]],color=gray),i=2..n-1):
f3:=plot([[1,0],[1,eval(g2,x=1)]],color=black):
f4:=plot([[8,0],[8,eval(g2,x=8)]],color=black):
f5:=textplot([1,0,»a»],align=BELOW):
f6:=textplot([8,0,»b»],align=BELOW):
f7:=textplot([0,17,»y»],align=LEFT):
f8:=textplot([10,0,»x»],align=BELOW):
f9:=textplot([5,14,»y=f(x)»],align=ABOVE):
f10:=textplot([9.5,3.5,»y=g(x)»],align=BELOW):
display({seq(f||i,i=0..10)},xtickmarks=[],ytickmarks=[0]);
Замечание
Обратите
внимание, что задание пустого списка
засечек горизонтальной оси в опции
xtickmarks,
а также одного значения 0
для засечек по вертикальной оси приводит
к вычерчиванию осей координат вообще
без засечек с единственной маркированной
точкой – началом координат.
Задача
3. Найти
площадь фигуры, ограниченной осями
координат и параболой
,
(a
>
0).
Р
Прежде всего, выразим уравнение параболы
в явном виде и начертим ее график. Из
задания параболы ясно, что независимая
переменная x
должна быть неотрицательной:
>
f:=sqrt(x)+sqrt(y)=sqrt(a);
>
f:=rhs(isolate(f,y));
>
with(plots):
a1:=a:
n:=40:
f0:=plot(eval(f,a=5),x=0..11,0..7,color=black,thickness=2):
f1:=seq(plot([[eval(a1,a=5)/(n-1)*(i-1),0],
[eval(a1,a=5)/(n-1)*(i-1),
eval(f,[x=eval(a1,a=5)/(n-1)*(i-1),a=5])]]),i=1..n):
f2:=plot([[eval(a1,a=5),0]],style=POINT,
symbol=DIAMOND, symbolsize=16,
color=black):
f3:=textplot([0.1,5,»a»],align=RIGHT):
f4:=textplot([5,0,»a»],align=BELOW):
f5:=textplot([0,7,»y»],align=LEFT):
f6:=textplot([11,0,»x»],align=BELOW):
display({f0,f1,f2,f3,f4,f5,f6},xtickmarks=[],ytickmarks=[0]);
Точку
пересечения графика параболы с осью
абсцисс найдем из решения уравнения:
>
p:=solve(f,x);
Теперь
можно вычислить искомую площадь как
интеграл:
>
Int(f,x=0..p)=int(f,x=0..p);
Задача
4. Определить
площадь фигуры, заключенной между двумя
параболами y2=2px
и x2=2py.
Решение.
Как и в предыдущей задаче, сначала мы
построим графики парабол, чтобы выяснить
их взаимное расположение:
>
ff:=y^2=2*p*x;
>
f:=sqrt(2*p*x);
>
g:=x^2/2/p;
>
with(plots):
n:=20:
f0:=implicitplot(eval(ff,p=1),x=-3..3,y=-3..3,color=black,thickness=2):
f1:=plot(eval(g,p=1),x=-3..3,color=black,thickness=2):
f2:=seq(plot([[2./(n-1)*(i-1),eval(f,[p=1,x=2/(n-1)*(i-1)])],
[2/(n-1)*(i-1),eval(g,[p=1,x=2/(n-1)*(i-1)])]],color=gray),i=1..n):
f3:=plot([[2,0],[2,2]],color=black,linestyle=7):
f4:=plot([[0,2],[2,2]],color=black,linestyle=7):
f5:=textplot([2,0,»2p»],align=BELOW):
f6:=textplot([0,2,»2p»],align=LEFT):
f7:=textplot([0,5,»y»],align=LEFT):
f8:=textplot([3,0,»x»],align=BELOW):
f9:=textplot([0,1,»y^2=2px»],align=ABOVE):
f10:=textplot([2,0.1,»x^2=2py»],align={ABOVE,LEFT}):
display({seq(f||i,i=0..10)},xtickmarks=[],ytickmarks=[0]);
Из
рисунка видно, что две параболы
пересекаются в двух точках, координаты
которых можно определить из решения
системы уравнений:
>
eq1:=y=f;eq2:=y=g;
>
c:=solve({eq1,eq2},{x,y});
Из
полученного множества решений нас,
естественно, интересуют только
действительные {x=0,
y=0}
и {x=2p,
y=2p},
из которых определяется интервал
интегрирования для определёния площади
фигуры, образованной пересечением
конгруэнтных парабол, – [0, 2p].
Определённый интеграл от разности
функций f
и g
по этому промежутку и будет равен площади
искомой фигуры:
>
S:=int(f-g,x=0..2*p);
>
subs(sqrt(p^2)=p,S);
Если
параметр p
> 0, то можно упростить выражение для
площади, заменив в нем
на p.
Кроме
вычисления длин дуг кривых и площадей
определённый интеграл применяется при
вычислении объемов тел вращения,
образуемых вращением криволинейной
трапеции, ограниченной сверху
неотрицательной функцией y=f(x),
слева и справа прямыми x=a
и x=b
(a
b),
а снизу отрезком [a,
b]
оси x,
вокруг этой оси. В этом случае объем
полученного тела можно вычислить по
формуле
.
Если
фигура ограничена и сверху и снизу
кривыми y=f(x)
и y=g(x),
то, очевидно,
.
Задача
4. Вычислить
объем эллипсоидов вращения, образованных
вращением эллипса
вокруг оси x
и оси y.
Решение.
Нарисуем на плоскости xy
заданный в задаче эллипс:
>
with(plots):
f0:=implicitplot(x^2/2^2+y^2/4^2=1,x=-2..2,y=-4..4,
color=black,thickness=2,scaling=CONSTRAINED):
f1:=textplot([2.1,0,»a»],align={RIGHT,BELOW}):
f2:=textplot([-2.1,0,»-a»],align={LEFT,BELOW}):
f3:=textplot([0,5,»y»],align=LEFT):
f4:=textplot([3,0,»x»],align=BELOW):
f5:=textplot([0.1,4.1,»b»],align={ABOVE,RIGHT}):
f6:=textplot([0,-4,»-b»],align={BELOW,LEFT}):
display({seq(f||i,i=0..6)},xtickmarks=[],ytickmarks=[]);
Для
вычисления объема эллипсоида вращения,
образованного вращением вокруг оси x,
следует найти квадрат координаты y,
а потом вычислить в соответствии с
приведённой выше формулой определённый
интеграл на промежутке [-a,
a]:
>
ellips:=x^2/a^2+y^2/b^2=1;
>
isolate(ellips,y^2);
>
f:=rhs(%);
>
V[x]=Pi*Int(f,x=-a..a);
>
V[x]=Pi*int(f,x=-a..a);
При
вращении эллипса вокруг оси y
нам необходимо вычислить определённый
интеграл от квадрата координаты x
на промежутке [-b,
b]:
>
isolate(ellips,x^2);
>
f:=rhs(%);
>
V[y]=Pi*Int(f,y=-b..b);
>
V[y]=Pi*int(f,y=-b..b);
Задание.
Назначить переменным а
и b
числовые значения, вычислить объёмы
эллипсоидов вращения и сравнить их
между собой.
Задача
5. Найти объём
общей части параболоида вращения
2az=x2+y2
и сферы x2+y2+z2=3a2.
Решение.
Оба тела являются телами вращения
относительно оси z,
а поэтому и общая их часть также будет
телом вращения относительно этой же
оси:
>
g:=plot3d((x^2+y^2)/2/2,x=-4..4,y=-sqrt(16-x^2)..sqrt(16-x^2)):
g1:=implicitplot3d(x^2+y^2+z^2=12,x=-4..4,y=-4..4,z=-4..4):
display({g,g1},scaling=CONSTRAINED,axes=FRAME,
shading=ZHUE,style=WIREFRAME,orientation=[45,70]);
Замечание. Для
иллюстрации пересечения параболоида
вращения и сферы мы задали значение
параметра a
равным 2.
Для
вычисления объема тела, получаемого
пересечением параболоида вращения и
сферы, необходимо определить уравнение
кривой, вращение которой образует их
общую часть. Для этого следует построить
сечения заданных тел плоскостью,
проходящей через ось z,
например, xz:
>
p:=2*a*z=x^2+y^2;
>
s:=x^2+y^2+z^2=3*a^2;
>
p[z]:=subs(y=0,p);
>
s[z]:=subs(y=0,s);
>
f0:=implicitplot({eval(p[z],a=2),eval(s[z],a=2)},x=-4..4,z=0..12,
color=black,thickness=2,scaling=CONSTRAINED):
f1:=plot([[0,2],[sqrt(8),2]],color=black):
f2:=textplot([0,2,»a»],align={LEFT}):
f3:=textplot([0,sqrt(12)+0.2,»sqrt(3)*a»],align={LEFT,ABOVE}):
f4:=textplot([0,5,»z»],align=LEFT):
f5:=textplot([5,0,»x»],align=BELOW):
f6:=plot([[sqrt(8),0],[sqrt(8),2]],color=black):
f7:=textplot([sqrt(8),-0.2,»sqrt(2)*a»],align=BELOW):
display({seq(f||i,i=0..7)},xtickmarks=[],ytickmarks=[]);
Точки
пересечения сечений заданных в задаче
тел вращения можно вычислить следующими
командами:
>
subs(x^2=lhs(p[z]),s[z]);
>
solve(%,z);
>
z[1]:=%[1];
>
x[1]:=simplify(subs(z=z[1],sqrt(lhs(p[z]))),symbolic);
Так
как параболоид вращения задан только
при z
0, то из двух значений z
выбирается первое, которое больше нуля.
Теперь
ясно, что сечение тела вращения,
являющегося пересечением параболоида
и сферы, представляется параболой
2az=x2,
пока z
принадлежит промежутку [0,a],
и дугой окружности x2+z2=3a2,
когда z
изменяется в интервале [a,
].
Поэтому объём тела, полученного вращением
составной кривой вокруг оси z,
представляется суммой двух интегралов:
>
V=Pi*Int(lhs(p[z]),z=0..a)+
Pi*Int(rhs(isolate(s[z],x^2)),z=a..sqrt(3)*a);
>
V=simplify(Pi*int(lhs(p[z]),z=0..a)+
Pi*int(rhs(isolate(s[z],x^2)),z=a..sqrt(3)*a));
Введение
В качестве темы исследовательской работы мной была выбрана
следующая: «Цепная линия». Кривая цепная линия очень интересна для
изучения, однако не так уж просто найти литературу посвященную ей.
Исследованием
этой линии занимались ученые очень давно. Однако даже в наше время она
используется при решении ряда задач не только в математике, но и физике,
архитектуре и многих других дисциплин. По моему мнения, данная тема является
интересной и актуальной.
Изучением
цепной линии занимались такие ученые, как Галилео Галилей, Христиан Гюйгенс,
Готфрид Вильгельм Лейбниц, Иоганн Бернули и др.
Целью
данной исследовательской работы является описание основных свойств цепной
линии.
Для
реализации поставленной цели были сформулированы следующие задачи:
1.
Проанализировать научную и учебную литературу по теме исследования с целью
выделения основных понятий и утверждений;
2.
Систематизировать и обобщить материал по теме исследования с целью выделения
групп свойств цепной линии;
3.
Доказать необходимые утверждения в теме исследования;
4.
Установить связь темы исследования и курса дифференциальной геометрии;
5.
Разработать компьютерную презентацию на тему: «Цепная линия».
Основным
методом исследования стал теоретический
анализ
литературы
в рамках исследования;
Практическая значимость
определяется возможностью использования результатов данного исследования в
учебном процессе в рамках дисциплин «Геометрия» и «Дифференциальная геометрия».
1.Исторические
сведение
В книге Галилея “Беседы и
математические доказательства…”, напечатанной впервые на итальянском языке в
голландском городе Лейдене в 1638г., предлагался, между прочим, такой способ
построения параболы: “Вобьём в стену два гвоздя на одинаковой высоте над
горизонтом и на таком расстоянии друг от друга, чтобы оно равнялось двойной
ширине прямоугольника, на котором желательно построить полупараболу; между
одним и другим гвоздём подвесим тонкую цепочку, которая свешивалась бы вниз и
была такой длины, чтобы самая низкая точка её находилась от уровня гвоздя на
расстоянии, равном высоте прямоугольника. Цепочка эта, свисая, расположится в
виде параболы(рис. 1), так что, отметив её след на стене пунктиром, мы получим
параболу, рассекаемую пополам перпендикуляром, проведённым через середину
линии, соединяющей оба гвоздя”.[2]
Рис.1
Способ этот прост и
нагляден, но не точен. Это понимал и сам Галилей. На самом деле, если параболу
построить по всем правилам, то между нею и цепочкой обнаружатся
зазоры.
Только через полвека после
выхода книги Галилея старший из двух братьев-математиков Бернулли — Якоб нашёл
чисто теоретическим путём точную формулу провисающей цепочки. Не спеша сообщать
своё решение задачи, он бросил вызов другим математикам. Правильное решение
опубликовали уже в следующем 1691г. Христиан Гюйгенс, Готфрид Вильгельм Лейбниц
и младший брат Якоба — Иоганн Бернулли. Все они пользовались для решения
задачи, во-первых, законами механики, а во-вторых, могучими средствами недавно
разработанного тогда математического анализа — производной и
интегралом.
Гюйгенс назвал кривую, по
которой располагается цепочка, подвешенная за два конца, цепной
линией.
Так как цепочки бывают
разной длины, да и концы их могут подвешиваться на разных расстояниях друг от
друга — то ближе, то дальше, то и цепных линий существует не одна, а много. Но
все они подобны между собой, как, например, подобны между собой любые
окружности.
2. Понятие цепной линии и её уравнение
Определение 1.Цепной линией называется плоская кривая, форма которой
соответствует однородной гибкой нерастяжимой тяжелой нити, закрепленной в обоих
концах и провисающей под действием силы тяжести.
Цепная линия по форме
напоминает параболу.
Так считалось долгое время. В начале 17
векаГалилео Галилей высказал
сомнение, что висящая цепь в действительности является параболой. Однако
строгое доказательство и точный вывод были получены лишь полвека спустя − после
того, как Исаак Ньютон Готфрид Вильгельм Лейбниц разработали основы математического анализа.
Решение
задачи о цепной линии было опубликовано в 1691 году Христианам Гюйгенсом, Готфридом Вильгельмом Лейбницем и Иоганном
Бернулли.
Ниже мы
рассмотрим вывод уравнения цепной линии и некоторые его вариации.
Пусть
тяжелая однородная нить подвешена в точкахА, В, которые могут находиться
на разной высоте (рис.1.2).

равновесие произвольного малого элемента нити длиной Δs.
На этот
элемент действуют распределенная сила тяжести, где
− объемная плотность материала нити,
− ускорение свободного падения, A − площадь
поперечного сечения нити, и силы натяжения T(x) и T(x+Δx),
соответственно, вточках x и (x+Δx).
Условия
равновесия выделенного элемента длиной Δs в проекциях на
оси Ox и Oy записываются в виде:
.
Из первого уравнения видно, что
горизонтальная компонента силы натяжения T(x) всегда
постоянна:
.
Переходя во втором уравнении к
дифференциалам, можно записать его в виде:
.
Поскольку , то получаем
или
.
Учтем, что , так что уравнение равновесия записывается в дифференциальном виде как
.
Элемент длины Δs можно
выразить по формуле
.
В результате получаем дифференциальное
уравнение цепной линии:
или
.
Это уравнение допускает понижение
порядка. Обозначив y’ = z, представим его в виде уравнения первого
порядка:
.
Последнее уравнение решается методом
разделения переменных.
.
Здесь мы обозначили через 1/a.
Касательная к цепной линии в нижней
точке параллельна оси Ox. Следовательно,
Отсюда определим константу C1:
Итак, мы имеем следующее уравнение:
Умножим обе части данного уравнения на
сопряженное выражение
. Получаем:
Складывая с предыдущим уравнением, находим
выражение для z = y’ :
Интегрируем еще раз и получаем
окончательное красивое выражение для формы цепной линии:

описывается гиперболическим косинусом. Ее форма однозначно
определяется параметром , зависимость от которого показана на рис.1.3.
Рис.1.3
3. Свойства цепной линии

от ее вершины до некоторой точки равна проекции ординаты этой точки на
касательную, проведенную в этой точке.
Доказательство:
1.Длина s дугицепной линии,
отсчитываемой от вершины А, равна проекции ММ′ ординаты РМ на
касательную МТ.(рис.3)
2. S==MM′=
(
(1)илиs = a
.
3. С ординатой РМ=у
дуга связана соотношение. 4.
Последнее вытекает из уравнения цепной линии и (1) и
легко прочитывается из
треугольника РМ′М, где РМ = у, ММ′ = s и РМ′ = a (по основному свойству трактрисы).
2. Радиус кривизны(приложение
1) в произвольной точке цепной линии равен
длине нормали в этой точке.
Доказательство:
1. Радиус кривизныМК = R цепной линии равен
отрезку MD нормали от точки М до директрисы Х′Х и выражается
формулой
R = MD =
илиR = a .
3. Если цепная линия катится
по прямой, то центр кривизны, соответствующий точке касания, перемещается по
параболе.
Доказательство:
1. Определяя площадь,
ограниченную цепной линией, двумя ее ординатами и осью абсцисс, будем иметь:
.
4. Площадь, ограничиваемая цепной линией, двумя ординатами и осью
абсцисс, пропорциональна длине соответствующей дуги.
Доказательство:
1. Площадь S «криволинейной трапеции»OAMP (OA = a— ордината вершины, РМ
— ордината конца М дуги s =) равна
площади прямоугольника со сторонами a, s так что
S = as = .
5. Сумма кривизн цепной
линии в точках, касательные в которых взаимно перпендикулярны, является для
каждой цепной линии величиной постоянной.
Доказательство:
1. Пусть -точки цепной
линии, касательные в которых взаимно перпендикулярны. Определяя их угловые
коэффициенты, имеем
2.В силу перпендикулярности
касательных (2),
но согласно S==MM′=
(
= a
=
,
где
— длины дуг,
отсчитываемые от вершины цепной линии до точек Подставляя
эти выражения в равенство (2) получаем,
3. Далее, если равенство (2)
привести к виду
или
,
то на основании R = a будем иметь
.
6.Мыльная плёнка, натянутая на два кольца, принимает форму катеноида — поверхности, возникающей в результате вращения цепной
линии.
4. Исследование цепной линии,
заданной параметрически, методом дифференциальной геометрии
Любая линия в
дифференциальной геометрии рассматривается в пространстве, может быть задана
векторным уравнение от одного скалярного аргумента, неявного уравнения вида F(x,y)=0, пересечением двух поверхностей, , полярным
уравнением.
Метод
дифференциальной геометрии позволяет исследовать линию на предмет:
· определение элементов сопровождающих линии трехгранника;
· определение кривизны и кручения;
· написание натурального уравнения линии;
· вычисление длины дуги линии;
Удобнее метод
дифференциальной геометрии применять к параметрическим уравнениям, линии
которых непосредственно следует из векторного уравнения от одного скалярного
аргумента.
Исследуем цепную
линию методом дифференциальной геометрии.
Для этого:
1)
от неявного уравнения перейдем
к параметрическим;
2)
определим параметризацию;
3) найдем базисные векторы,
сопровождающего трехгранника кривой;
4) напишем уравнение
элементов сопровождающего трехгранника кривой:
a) уравнение касательной;
b) уравнение нормали;
c) уравнение бинормали;
d) уравнение соприкасающейся плоскости;
e) уравнение нормальной плоскости;
f) уравнение спрямляющейся плоскости;
5) найдем кривизну и кручение
цепной линии в произвольной точке;
6) напишем уравнение цепной
линии в естественной параметризации.
Итак, уравнение цепной линии
имеет вид

уравнение цепной линии.
Линия лежит в плоскостиXOY,
z=0.
1.Определим, какая
параметризация: естественная или произвольная.
Найдем производные
по t:
.
2.Найдем векторы первой,
второй и третьей производной.
3.Найдем базисные
векторы сопровождающего трехгранника:
единичный вектор
касательной.


бинормали.
единичный вектор главной нормали.
4.Напишем уравнения элементов сопровождающего
трехгранника:
a) Уравнение касательной (приложение
1) к цепной линии в произвольной точке имеет вид:
b) Уравнение главной нормали
(приложение 1) к цепной линии в произвольной точке имеет вид:
c) Уравнение бинормали (приложение
1) к цепной линии в произвольной точке имеет вид:
e)Уравнение соприкасающейся
плоскости:
(
Так как z=0,
плоскость OXY— соприкасающаяся
плоскость.
f) Уравнение нормальной
плоскости (приложение 1)
g) Уравнение спрямляющей
плоскости:
5.Найдем кривизну k(приложение
1) и кручение (приложение 1):
6.Напишем уравнение цепной линии в
естественной параметризации:
Таким образом, результаты
исследования свойств цепной линии методами дифференциальной геометрии позволили
доказать следующие свойства цепной линии как плоской линии:
Теорема 1. Соприкасающаяся
плоскость плоской линии совпадает с плоскостью линии. (см. уравнение
соприкасающейся плоскости цепной линии п.4(e)).
Теорема 2. Главная нормаль
плоской линии лежит в плоскости линии. (см. уравнение главной нормали цепной
линии п.4(b)).
Теорема 3. Кручение плоской
линии во всех точках равна нулю.(см. кручение цепной линии п.5)
Докажем
теорему, обратную теореме 3.
Теорема 4. Если во всех
точках гладкой линии кручение равно нулю, то линия плоская.
Доказательство:
1.
Пусть в каждой точке линии γ, заданной уравнениями
равно нулю.
2.
Из последней формулы Френе следует, что где
не зависит от переменной
s.
Тогда из тождества , отсюда
или в координатах:
, где
,
– координаты
.
3.
Таким образом, все точки γ лежат в плоскости, заданной уравнением . Это означает, что γ –
плоская линия.
Замечание.
Для плоской линии имеем х = 0, поэтому формулы Френе принимают вид:
Результаты исследования свойств
цепной линии можно отобразить в чертеже.
Oxyсоприкасающаяся плоскость
нормальная плоскость
спрямляющая плоскость
5. Применение
Ворота на Запад

модели будущих зданий, подвешивая грузы на нитках. Но этим способом
воспользовались некоторые современные архитекторы. На берегу реки Миссисипив городе Сент-Луисе стоит импозантная арка (GatewayArch) высотой в 630 футов, что соответствует 192 м, символизирующая
поворотный пункт в американской истории и географии. Сент-Луис в свое время
соединил относительно обжитые земли к востоку от Миссисипи с дикими бескрайними
пространствами Запада.
Эта арка была спроектирована одним из самых известных архитекторов
США Эро
Саариненом (Eero Saarinen, 1910–1961) в сотрудничестве с математиком и инженером
Ганнскарлом Банделем (Hannskarl
Bandel, 1925–1993). В каком-то смысле их судьбы схожи: и Сааринен, и Бандель
родились за пределами Америки — первый в Финляндии, второй — в Германии. Потом оба
пересекли океан: первый — отправляясь в 1934 году учиться, а второй — уже после
войны, в поисках работы. Тут каждый из них нашел свою удачу, а оба они — друг
друга.
По подсказке Банделя Сааринен выбрал для своей арки форму цепной
линии, высота которой равнялась ширине у основания. Получилось красиво, хотя
конструкция до какой-то степени противоречила интуиции. Ведь цепочка, будучи
предоставленной сама себе, стремится занять такое положение в пространстве,
чтобы ее потенциальная
энергия была минимальной,
то есть центр тяжести располагался предельно низко. При переворачивании низкий
центр тяжести окажется высоким, а минимум энергии обернется максимумом.
Противоречие тут кажущееся. В задачу архитектора вовсе
не входит достижение энергетического минимума конструкции — нужно,
чтобы она была устойчивой. И хотя, безусловно, минимуму потенциальной
энергии соответствует положение устойчивого равновесия, это положение не
единственное. Еще одно положение равновесия соответствует максимуму потенциальной
энергии, что мы и наблюдаем при перевороте цепной линии, а также
при обобщении метода, использованного Гауди.
Причины равновесия можно оценить, анализируя не энергию, а
распределение сил. Как известно, если удается получить информацию о силах,
то картинка всегда оказывается более подробной и ясной, чем та,
которую можно получить, занимаясь только энергиями. У подвешенной цепочки
на каждое отдельное звено действуют три силы: сила тяжести и сила
упругих деформаций со стороны двух ближайших соседей. Равновесие
достигается в том случае, когда сумма всех трех сил равна нулю.
Подвижность цепочки гарантирует, что упругие силы на концах
каждого звена лишь растягивают его, то есть всегда направлены
по касательной к линии.
Разумеется, ничего не изменится, если вместо цепочки подвесить
твердую арку той же формы: напряжения, вызываемые в ней силой тяжести, будут
распределены так, что силы всегда будут действовать по касательной.
Они будут растягивать арку, но нигде не будут пытаться ее сломать.
Если теперь арку перевернуть, то опять почти ничего не изменится. Всего лишь
растяжение сменится сжатием, однако действовать оно в каждой точке арки будет
только по касательной. Или, что то же самое, нагрузка на поперечном сечении,
проведенном в произвольной точке арки, будет перпендикулярна плоскости сечения.
Особенно странно этот вывод выглядит для самой верхней точки: площадка
поперечного сечения там вертикальна, и сила, действующая на нее,
перпендикулярна силе тяжести.

звено цепи действует по три силы: натяжение со стороны соседей и сила
тяжести. При уменьшении размеров звена,
сила тяжести
стремится к нулю, а силы натяжения к нулю не стремится, они просто становятся
параллельными друг другу.

заметить, что цепь подвесного моста ближе к параболе, чем к цепной линии. Это связано с тем,
что пролёт моста намного тяжелее цепи. [4]
Заключение
Основной целью работы была цель изучить
свойства цепной линии.
Для реализации поставленной цели было
выполнено следующее: проанализирована научная и учебная
литература и выделены основные понятия и утверждения; выделены группы свойств;
доказаны теоремы и утверждения в теме исследования; исследованы свойства цепной
линии методами дифференциальной геометрии.
Подводя итоги работы, можно отметить,
что цель достигнута, а задачи реализованы в соответствующих параграфах работы.
Материал,
изложенный в данной работе, может быть использован как студентами в учебном
процессе в рамках дисциплин «Геометрия» и «Дифференциальная геометрия», а также
школьниками в учебном процессе в рамках элективных курсов по математике.
Список
использованной литературы
1. Выгодский М.Я. Справочник по высшей математики.§517. М.:АСТ: Астель,
2006.
2. Галилей Галилео. Беседы и математические доказательства,
касающиеся двух новых отраслей науки, относящихся к механике и местному
движению синьора Г.Галилея Линчео, философа и первого математика светлейшего
великого Герцога Тосканского. С приложением о центрах тяжести различных тел. –
Л.: Гостехизд., 1934. с. 273-274.
3. Маркушевич А.И. «Замечательные кривые». М.: Наука, 1978.с.91
4. Люстерник П.А. Кратчайшие линии. Вариационные задачи. Серия
«популярные лекции по математике», выпуск 19, §19. М.-Л.: Гостехизд. 1955.
5. Меркин Д.Р. Введение в механику гибкой нити. М.: Наука. 1980. с.
135.
6. Савёлов А.А. Плоские кривые. М.: Госиздфиз-мат литературы. 1960.с.
213-216.
7. Иванов А.О., Тужилин А.А. Лекции по дифференциальной геометрии.
М.:Логос, 2009.
8. Виро О. Я., Иванов О. А., Харламов В. М.,
Нецветаев Н. Ю. Элементарная топология. СПГУ, 2007.
9. Голованов Н.Н., Ильютко Д.П., Носовский Г.В.,
Фоменко А.Т. Компьютерная геометрия. М.: Издательский центр «Академия», 2006.
Приложение 1
Определение 1.Цепной линией называется плоская
кривая, форма которой соответствует однородной гибкой нерастяжимой тяжелой
нити, закрепленной в обоих концах и провисающей под действием силы тяжести.
Определение 2. Касательной называется прямая, проходящая через точку кривой и совпадающая с
ней в этой точке с точностью до первого порядка.
Определение
3.Радиусом
кривизны называется величина, обратная кривизне. Радиус кривизны характеризует величину
соответствия кривой от прямой. Чем больше радиус кривизны, тем больше кривая
похожа на прямую. Радиус кривизны обозначается R.
Определение4.Нормальюназывается прямая, ортогональная (перпендикулярная) касательному пространству (касательной
прямой к кривой, касательной плоскости к поверхности и т. д.).
Определение 5.Директрисой называется
прямая, лежащая в плоскости конического
сечения (эллипса, гиперболы или параболы) и обладающая тем свойством, что отношение расстояния от любой
точки кривой до фокуса кривой к расстоянию от той же точки до этой прямой есть
величина постоянная, равная эксцентриситету.
Определение 6.Длина дуги в метрическом пространстве — числовая характеристика протяжённости
этой кривой. Исторически вычисление длины кривой называлось спрямлением кривой.
Если длина кривой существует и конечна, то говорят, что кривая спрямляемая,
в противном случае — неспрямляемая. Длина дуги обозначается S.
Определение
7.Кривизна — величина, характеризующая отклонение кривой (поверхности) в окрестности данной
ее точки от касательной прямой (касательной плоскости). понятие кривизны обращается на объекты более общей
природы. Кривизна обозначается .
Определение
8.Кручение, вторая кривизна, мера отклонения пространственной
кривой от соприкасающейся плоскости. Кручение обозначается
Определение 9. Бинормалью называется нормаль кривой в пространстве, перпендикулярная касательной к главной нормали.
Определение
10.Плоскость, проходящая через
касательную и главную нормаль в данной точке кривой, называется соприкасающейся плоскостью в этой
точке.
Определение 11.Нормальная плоскость к кривой линии в данной ее точке — плоскость, перпендикулярная к
касательной прямой, проведенной через ту же точку.
Определение 12. Спрямляющая плоскость, плоскость проходящая через касательную и бинормаль в данной
точке М пространственной кривой.
Длина дуги цепной линии — это число, характеризующее протяжённость дуги цепной линии в единицах измерения длины.
Цепная линия (висящая цепь) — это линия, образуемая гибкой тяжёлой нерастяжимой нитью (цепью), подвешенной в двух точках. График цепной линии имеет вид графика гиперболического косинуса.
Рассмотрим дуги цепной линии, с вершиной в точке (0,R).
Обозначения
Введём обозначения:
x1 — абсцисса (меньшая) первой точки;
y1 — ордината первой точки;
x2 — абсцисса (большая) второй точки;
y2 — ордината второй точки;
R — ордината вершины цепной линии;
M=(x,y) — точка цепной линии;
M0=(0,R) — вершина цепной линии;
y=Rch(x/R) — уравнение цепной линии;
Lдуг.цеп — длина дуги цепной линии.
Формула
- Длина дуги цепной линии M0M от вершины равна Lx=Rsh(x/R).
Вывод формулы
- Для вывода используется формула «длина дуги плоской кривой» в прямоугольных координатах.
Другие кривые:
Ссылки
- Бронштейн М. Н., Семендяев К. А., Справочник по математике. М., 1956, стр.113.
- Выгодский М. Я. Справочник по высшей математике. М.: Наука, 1964, стр.829.
- Участник:Logic-samara











































