Как найти длину отрезка эллипса

Эллипс, его фокусы и главные оси

Эллипс как коническое сечение, его фокусы и директрисы, получаемые геометрически с помощью шаров Данделена.

Э́ллипс (др.-греч. ἔλλειψις «опущение; нехватка, недостаток (эксцентриситета до 1)») — замкнутая кривая на плоскости, которая может быть получена как пересечение плоскости и кругового цилиндра или как ортогональная проекция окружности на плоскость.

Окружность является частным случаем эллипса с эксцентриситетом e=0. Наряду с гиперболой и параболой, эллипс является коническим сечением и квадрикой.

Определение[править | править код]

Эллипс — геометрическое место точек M евклидовой плоскости, для которых сумма расстояний до двух данных точек F_{1} и F_{2} (называемых фокусами) постоянна и больше расстояния между фокусами, то есть

{displaystyle |F_{1}M|+|F_{2}M|=2cdot a}, причём {displaystyle |F_{1}F_{2}|<2cdot a.}

Другие определения[править | править код]

Эллипс также можно определить как:

  • фигуру, которую можно получить из окружности, применяя аффинное преобразование
  • ортогональную проекцию окружности на плоскость
  • пересечение плоскости и кругового цилиндра.

Связанные определения[править | править код]

  • Проходящий через фокусы эллипса отрезок AB, концы которого лежат на эллипсе, называется большой осью данного эллипса. Длина большой оси равна 2a в вышеприведённом уравнении.
  • Отрезок CD, перпендикулярный большой оси эллипса, проходящий через центральную точку большой оси, концы которого лежат на эллипсе, называется малой осью эллипса.
  • Точка пересечения большой и малой осей эллипса называется его центром.
  • Отрезки, проведённые из центра эллипса к вершинам на большой и малой осях называются, соответственно, большой полуосью и малой полуосью эллипса, и обозначаются a и b.
  • Расстояния r_{1} и r_{2} от каждого из фокусов до данной точки на эллипсе называются фокальными радиусами в этой точке.
  • Расстояние c={frac {|F_{1}F_{2}|}{2}} называется фокальным расстоянием.
  • Величина e={frac {c}{a}}={sqrt {1-{frac {b^{2}}{a^{2}}}}} называется эксцентриситетом.
  • Диаметром эллипса называют произвольную хорду, проходящую через его центр. Сопряжёнными диаметрами эллипса называют пару его диаметров, обладающих следующим свойством: середины хорд, параллельных первому диаметру, лежат на втором диаметре. В этом случае и середины хорд, параллельных второму диаметру, лежат на первом диаметре.
  • Радиус эллипса в данной точке это отрезок, соединяющий центр эллипса с точкой, а также его длина, которая вычисляется по формуле r={frac {ab}{sqrt {b^{2}cos ^{2}varphi +a^{2}sin ^{2}varphi }}}={frac {b}{sqrt {1-e^{2}cos ^{2}varphi }}}, где varphi  — угол между радиусом и большой полуосью.
  • Фокальным параметром p={frac {b^{2}}{a}} называется половина длины хорды, проходящей через фокус и перпендикулярной большой оси эллипса.
  • Отношение длин малой и большой полуосей называется коэффициентом сжатия эллипса или эллиптичностью: {displaystyle k={frac {b}{a}}}. Величина, равная (1-k)={frac {a-b}{a}}, называется сжатием эллипса. Для окружности коэффициент сжатия равен единице, сжатие — нулю. Коэффициент сжатия и эксцентриситет эллипса связаны соотношением {displaystyle k^{2}=1-e^{2}.}
  • Для каждого из фокусов существует прямая, называемая директрисой, такая, что отношение расстояния от произвольной точки эллипса до его фокуса к расстоянию от этой точки до данной прямой равно эксцентриситету эллипса. Весь эллипс лежит по ту же сторону от такой прямой, что и фокус. Уравнения директрис эллипса в каноническом виде записываются как {displaystyle x=pm {frac {p}{eleft(1-e^{2}right)}}} для фокусов {displaystyle left(pm {frac {pe}{1-e^{2}}},,0right)} соответственно. Расстояние между фокусом и директрисой равно {displaystyle {frac {p}{e}}}.

Соотношения между элементами эллипса[править | править код]

Части эллипса (описание см. в разделе «Связанные определения»)

  • {displaystyle {boldsymbol {a}}} — большая полуось;
  • {displaystyle {boldsymbol {b}}} — малая полуось;
  • {displaystyle {boldsymbol {c}}} — фокальное расстояние (полурасстояние между фокусами);
  • {displaystyle {boldsymbol {p}}} — фокальный параметр;
  • {displaystyle {boldsymbol {r}}_{p}} — перифокусное расстояние (минимальное расстояние от фокуса до точки на эллипсе);
  • {displaystyle {boldsymbol {r}}_{a}} — апофокусное расстояние (максимальное расстояние от фокуса до точки на эллипсе);

{displaystyle a^{2}=b^{2}+c^{2};}

{displaystyle e={frac {c}{a}}={sqrt {1-{frac {b^{2}}{a^{2}}}}};;;(0leqslant e<1);}

{displaystyle p={frac {b^{2}}{a}}.}

{displaystyle {boldsymbol {a}}} {displaystyle {boldsymbol {b}}} {displaystyle {boldsymbol {c}}} {displaystyle {boldsymbol {p}}} {displaystyle {boldsymbol {r_{p}}}} {displaystyle {boldsymbol {r_{a}}}}
{displaystyle {boldsymbol {a}}} — большая полуось {displaystyle {boldsymbol {a}}} {displaystyle a={frac {b}{sqrt {1-e^{2}}}}} {displaystyle a={frac {c}{e}}} {displaystyle a={frac {p}{1-e^{2}}}} {displaystyle a={frac {r_{p}}{1-e}}} {displaystyle a={frac {r_{a}}{1+e}}}
{displaystyle {boldsymbol {b}}} — малая полуось {displaystyle b=a{sqrt {1-e^{2}}}} {displaystyle {boldsymbol {b}}} {displaystyle b={frac {c~{sqrt {1-e^{2}}}}{e}}} {displaystyle b={frac {p}{sqrt {1-e^{2}}}}} {displaystyle b=r_{p}{sqrt {frac {1+e}{1-e}}}} {displaystyle b=r_{a}{sqrt {frac {1-e}{1+e}}}}
{displaystyle {boldsymbol {c}}} — фокальное расстояние {displaystyle c=ae} {displaystyle c={frac {be}{sqrt {1-e^{2}}}}} {displaystyle {boldsymbol {c}}} {displaystyle c={frac {pe}{1-e^{2}}}} {displaystyle c={frac {r_{p}e}{1-e}}} {displaystyle c={frac {r_{a}e}{1+e}}}
{displaystyle {boldsymbol {p}}} — фокальный параметр {displaystyle p=a(1-e^{2})} {displaystyle p=b~{sqrt {1-e^{2}}}} {displaystyle p=c~{frac {1-e^{2}}{e}}} {displaystyle {boldsymbol {p}}} {displaystyle p=r_{p}(1+e)} {displaystyle p=r_{a}(1-e)}
{displaystyle {boldsymbol {r}}_{p}} — перифокусное расстояние {displaystyle r_{p}=a(1-e)} {displaystyle r_{p}=b~{sqrt {frac {1-e}{1+e}}}} {displaystyle r_{p}=c~{frac {1-e}{e}}} {displaystyle r_{p}={frac {p}{1+e}}} {displaystyle {boldsymbol {r}}_{p}} {displaystyle r_{p}=r_{a}{frac {1-e}{1+e}}}
{displaystyle {boldsymbol {r}}_{a}} — апофокусное расстояние {displaystyle r_{a}=a(1+e)} {displaystyle r_{a}=b~{sqrt {frac {1+e}{1-e}}}} {displaystyle r_{a}=c~{frac {1+e}{e}}} {displaystyle r_{a}={frac {p}{1-e}}} {displaystyle r_{a}=r_{p}~{frac {1+e}{1-e}}} {displaystyle {boldsymbol {r}}_{a}}

Координатное представление[править | править код]

Эллипс как кривая второго порядка[править | править код]

Эллипс является центральной невырожденной кривой второго порядка и удовлетворяет общему уравнению вида

{displaystyle a_{11}x^{2}+a_{22}y^{2}+2a_{12}xy+2a_{13}x+2a_{23}y+a_{33}=0}

при инвариантах D>0 и {displaystyle Delta I<0}, где:

Delta ={begin{vmatrix}a_{11}&a_{12}&a_{13}\a_{12}&a_{22}&a_{23}\a_{13}&a_{23}&a_{33}end{vmatrix}},
D={begin{vmatrix}a_{11}&a_{12}\a_{12}&a_{22}end{vmatrix}}=a_{11}a_{22}-a_{12}^{2},
{displaystyle I=operatorname {tr} {begin{pmatrix}a_{11}&a_{12}\a_{12}&a_{22}end{pmatrix}}=a_{11}+a_{22}.}

Соотношения между инвариантами кривой второго порядка и полуосями эллипса (верно только при условии, что центр эллипса совпадает с началом координат и a_{{33}}=-1):

{displaystyle Delta =-{frac {1}{a^{2}}}{frac {1}{b^{2}}},}
{displaystyle D={frac {1}{a^{2}}}{frac {1}{b^{2}}},}
{displaystyle I={frac {1}{a^{2}}}+{frac {1}{b^{2}}}.}

Соотношения

Если переписать общее уравнение в виде

AX^{2}+BXY+CY^{2}+DX+EY+F=0,

то координаты центра эллипса:

h={frac {BE-2CD}{4AC-B^{2}}},k={frac {BD-2AE}{4AC-B^{2}}},

угол вращения определяется из выражения

tg(2Theta )={frac {B}{A-C}}.

Направления векторов осей:

{displaystyle {begin{pmatrix}B&(C-A+{sqrt {(C-A)^{2}+B^{2}}})end{pmatrix}},{begin{pmatrix}B&(C-A-{sqrt {(C-A)^{2}+B^{2}}})end{pmatrix}},}

отсюда

{displaystyle operatorname {tg} Theta ={frac {C-Apm {sqrt {(C-A)^{2}+B^{2}}}}{B}}.}

Длины полуосей определяются выражениями

{displaystyle a={sqrt {frac {2F'({sqrt {(A-C)^{2}+B^{2}}}+A+C)}{4AC-B^{2}}}},}
{displaystyle b={sqrt {{frac {2F'}{{sqrt {(A-C)^{2}+B^{2}}}+A+C}}.}}}

Обратное соотношение — коэффициенты общего уравнения из параметров эллипса — можно получить, подставив в каноническое уравнение (см. раздел ниже) выражение для поворота системы координат на угол Θ и переноса в точку {displaystyle (x_{c},,y_{c})}:

{displaystyle {frac {x'^{2}}{a^{2}}}+{frac {y'^{2}}{b^{2}}}=1,}
{displaystyle x'=(x-x_{c})cos Theta +(y-y_{c})sin Theta ,}
{displaystyle y'=-(x-x_{c})sin Theta +(y-y_{c})cos Theta .}

Выполнив подстановку и раскрыв скобки, получим следующие выражения для коэффициентов общего уравнения:

{displaystyle A=a^{2}sin ^{2}Theta +b^{2}cos ^{2}Theta ,}
{displaystyle B=2(b^{2}-a^{2})sin Theta cos Theta ,}
{displaystyle C=a^{2}cos ^{2}Theta +b^{2}sin ^{2}Theta ,}
{displaystyle D=-2Ax_{c}-By_{c},}
{displaystyle E=-Bx_{c}-2Cy_{c},}
{displaystyle F=Ax_{c}^{2}+Cy_{c}^{2}+Bx_{c}y_{c}-a^{2}b^{2}.}

Если ввести только угол, а центр эллипса оставить в начале координат, то

{displaystyle D=0,}
{displaystyle E=0,}
{displaystyle F=-a^{2}b^{2}.}

Следует заметить, что в уравнении общего вида эллипса, заданного в декартовой системе координат, коэффициенты A,B,C,D,E,F (или, что то же самое, {displaystyle a_{11},2a_{12},a_{22},2a_{13},2a_{23},a_{33}}) являются определёнными с точностью до произвольного постоянного множителя, то есть приведённая выше запись и

{displaystyle AkX^{2}+BkXY+CkY^{2}+DkX+EkY+Fk=0,}

где {displaystyle kneq 0,} являются эквивалентными. Нельзя ожидать, что выражение

1/a^{2}+1/b^{2}=Ak+Ck

будет выполняться при любом k.

Соотношение между инвариантой I и полуосями в общем виде выглядит следующим образом:

{displaystyle {frac {1}{a^{2}}}+{frac {1}{b^{2}}}={frac {A+C}{Fcdot (Acdot h^{2}+Bcdot hcdot k+Ccdot k^{2}-1)}}={frac {I}{F'}},}

где F'=Fcdot (Acdot h^{2}+Bcdot hcdot k+Ccdot k^{2}-1) — коэффициент F при переносе начала координат в центр эллипса, когда уравнение приводится к виду

{displaystyle AX^{2}+BXY+CY^{2}+F'=0.}

Другие инварианты находятся в следующих соотношениях:

{displaystyle -{frac {Delta }{F'^{3}}}={frac {D}{F'^{2}}}={frac {1}{a^{2}}}{frac {1}{b^{2}}}.}

Каноническое уравнение[править | править код]

Для любого эллипса можно найти декартову систему координат такую, что эллипс будет описываться уравнением:

{frac {x^{2}}{a^{2}}}+{frac {y^{2}}{b^{2}}}=1.

Это уравнение называется каноническим уравнением эллипса. Оно описывает эллипс с центром в начале координат, оси которого совпадают с осями координат[Комм. 1].

Соотношения[править | править код]

Для определённости положим, что 0<bleqslant a.
В этом случае величины a и b — соответственно, большая и малая полуоси эллипса.

Зная полуоси эллипса, можно вычислить:

  • его фокальное расстояние и эксцентриситет {displaystyle left|F_{1}F_{2}right|=2{sqrt {a^{2}-b^{2}}},;;;e={frac {sqrt {a^{2}-b^{2}}}{a}}<1,}
  • координаты фокусов эллипса {displaystyle left(ae,,0right),left(-ae,,0right).}

Эллипс имеет две директрисы, уравнения которых можно записать как

x={frac {a}{e}},;;;x=-{frac {a}{e}}.

Фокальный параметр (то есть половина длины хорды, проходящей через фокус и перпендикулярной оси эллипса) равен

p={frac {b^{2}}{a}}.

Фокальные радиусы, то есть расстояния от фокусов до произвольной точки кривой left(x,,yright):

r_{1}=a+ex,;;;r_{2}=a-ex.

Уравнение диаметра, сопряжённого хордам с угловым коэффициентом k:

y=-{frac {b^{2}}{a^{2}k}}x.

Уравнение касательной к эллипсу в точке (x_{0},y_{0}) имеет вид:

{frac {xx_{0}}{a^{2}}}+{frac {yy_{0}}{b^{2}}}=1.

Условие касания прямой y=mx+k и эллипса {frac {x^{2}}{a^{2}}}+{frac {y^{2}}{b^{2}}}=1 записывается в виде соотношения {displaystyle k^{2}=m^{2}a^{2}+b^{2}.}

Уравнение касательных, проходящих через точку left(x_1, y_1right):

{displaystyle {frac {y-y_{1}}{x-x_{1}}}={frac {-x_{1}y_{1}pm {sqrt {b^{2}x_{1}^{2}+a^{2}y_{1}^{2}-a^{2}b^{2}}}}{a^{2}-x_{1}^{2}}}.}

Уравнение касательных, имеющих данный угловой коэффициент k:

{displaystyle y=kxpm {sqrt {k^{2}a^{2}+b^{2}}},}

точки касания такой прямой эллипса (или что то же самое, точки эллипса, где касательная имеет угол с тангенсом, равным k):

x=mp {frac {ka^{2}}{sqrt {k^{2}a^{2}+b^{2}}}},y=pm {frac {b^{2}}{sqrt {k^{2}a^{2}+b^{2}}}}.

Уравнение нормали в точке left(x_{1},y_{1}right):

{frac {y-y_{1}}{x-x_{1}}}={frac {a^{2}y_{1}}{b^{2}x_{1}}}.

Уравнения в параметрической форме[править | править код]

Геометрическая иллюстрация параметризации эллипса (анимация)

Каноническое уравнение эллипса может быть параметризовано:

{begin{cases}x=a,cos t\y=b,sin tend{cases}};;;0leqslant tleqslant 2pi ,

где t — параметр.

Только в случае окружности (то есть при a=b) параметр t является углом между положительным направлением оси абсцисс и радиус-вектором данной точки.

В полярных координатах[править | править код]

Если принять фокус эллипса за полюс, а большую ось — за полярную ось, то его уравнение в полярных координатах left(rho ,varphi right) будет иметь вид

rho ={frac {p}{1pm ecos varphi }},

где e — эксцентриситет, а p — фокальный параметр.
Знак минус соответствует помещению полюса полярных координат в левый фокус, а знак плюс — в правый.

Вывод уравнения[править | править код]

Пусть r1 и r2 — расстояния до данной точки эллипса от первого и второго фокусов.
Пусть также полюс системы координат находится в первом фокусе, а угол varphi отсчитывается от направления на второй фокус.
Тогда из определения эллипса следует, что

{displaystyle r_{1}+r_{2}=2a}.

Отсюда {displaystyle r_{2}^{2}=left(2a-r_{1}right)^{2}=4a^{2}-4ar_{1}+r_{1}^{2}}.
С другой стороны, из теоремы косинусов

r_{2}^{2}=r_{1}^{2}+4c^{2}-4r_{1}ccos varphi .

Исключая r_{2} из последних двух уравнений, получаем

{displaystyle r_{1}={frac {a^{2}-c^{2}}{a-ccos varphi }}={frac {a(1-c^{2}/a^{2})}{1-c/acos varphi }}.}

Учитывая, что {displaystyle p=a(1-e^{2})} и e=frac{c}{a}, получаем искомое уравнение.

Если принять центр эллипса за полюс, а большую ось — за полярную ось, то его уравнение в полярных координатах left(rho ,varphi right) будет иметь вид

rho ={frac {b}{sqrt {1-e^{2}cos ^{2}varphi }}}={frac {ab}{sqrt {a^{2}sin ^{2}varphi +b^{2}cos ^{2}varphi }}}.

Длина дуги эллипса (

s) в зависимости от его параметра (

θ)

Длина дуги эллипса[править | править код]

Длина дуги плоской линии определяется по формуле:

l=int limits _{t_{1}}^{t_{2}}{sqrt {left({frac {dx}{dt}}right)^{2}+left({frac {dy}{dt}}right)^{2}}},dt.

Воспользовавшись параметрическим представлением эллипса, получаем следующее выражение:

l=int limits _{t_{1}}^{t_{2}}{sqrt {a^{2}sin ^{2}t+b^{2}cos ^{2}t}},dt.

После замены b^{2}=a^{2}left(1-e^{2}right) выражение для длины дуги принимает окончательный вид:

l=aint limits _{t_{1}}^{t_{2}}{sqrt {1-e^{2}cos ^{2}t}},dt,;;;e<1.

Получившийся интеграл принадлежит семейству эллиптических интегралов, которые в элементарных функциях не выражаются, и сводится к эллиптическому интегралу второго рода Eleft(t,eright). В частности, периметр эллипса равен:

{displaystyle L=4aint limits _{0}^{pi /2}{sqrt {1-e^{2}cos ^{2}t}},dt=4aE(e),}

где Eleft(eright) — полный эллиптический интеграл второго рода.

Приближённые формулы для периметра[править | править код]

Lapprox 4{frac {pi ab+(a-b)^{2}}{a+b}}.

Максимальная погрешность этой формулы {displaystyle approx 0{,}63 %} при эксцентриситете эллипса {displaystyle approx 0{,}988} (соотношение осей {displaystyle approx 1/6{,}5}).
Погрешность всегда положительна.

Приблизительно в два раза меньшие погрешности в широком диапазоне эксцентриситетов дает формула:
Lapprox 4cdot left(a^{x}+b^{x}right)^{left(1/xright)}, где x={frac {ln 2}{ln {frac {pi }{2}}}}.
Максимальная погрешность этой формулы {displaystyle approx 0{,}36 %} при эксцентриситете эллипса {displaystyle approx 0{,}980} (соотношение осей {displaystyle approx 1/5})
Погрешность также всегда положительна.

Существенно лучшую точность при {displaystyle 0{,}05<a/b<20} обеспечивает формула Рамануджана:
{displaystyle Lapprox pi left[3(a+b)-{sqrt {(3a+b)(a+3b)}}right].}

При эксцентриситете эллипса {displaystyle approx 0{,}980} (соотношение осей {displaystyle approx 1/5}) погрешность составляет {displaystyle approx 0{,}02 %}.
Погрешность всегда отрицательна.

Ещё точней оказалась вторая формула Рамануджана:
{displaystyle Lapprox pi (a+b)left[1+{frac {3left({frac {a-b}{a+b}}right)^{2}}{10+{sqrt {4-3left({frac {a-b}{a+b}}right)^{2}}}}}right].}

Точные формулы для периметра[править | править код]

Джеймс Айвори[1] и Фридрих Бессель[2] независимо друг от друга получили формулу для периметра эллипса:

{displaystyle L=pi (a+b)left[1+sum limits _{n=1}^{infty }left[{frac {(2n-1)!!}{(2n-1)cdot 2^{n}cdot n!}}left({frac {a-b}{a+b}}right)^{n}right]^{2}right].}

Альтернативная формула

{displaystyle L={frac {2pi aN(1-e^{2})}{M({sqrt {1-e^{2}}})}},}

где M(x) — арифметико-геометрическое среднее 1 и x,
а N(x) — модифицированное арифметико-геометрическое среднее 1 и x, которое было введено С. Ф. Адлаем в статье 2012 года[3].

Площадь эллипса и его сегмента[править | править код]

Площадь эллипса вычисляется по формуле

{displaystyle S=pi ab.}

Площадь сегмента между дугой[en], выпуклой влево, и вертикальной хордой, проходящей через точки left(x,,yright) и {displaystyle left(x,,-yright),} можно определить по формуле[4]:

S={frac {pi ab}{2}}-{frac {b}{a}}left(x,{sqrt {a^{2}-x^{2}}}+a^{2}arcsin {frac {x}{a}}right).

Если эллипс задан уравнением
Ax^{2}+Bxy+Cy^{2}=1, то площадь можно определить по формуле

{displaystyle S={frac {2pi }{sqrt {4AC-B^{2}}}}.}

Другие свойства[править | править код]

  • Оптические
    • Свет от источника, находящегося в одном из фокусов, отражается эллипсом так, что отраженные лучи пересекутся во втором фокусе.
    • Свет от источника, находящегося вне любого из фокусов, отражается эллипсом так, что отраженные лучи ни в каком фокусе не пересекутся.
  • Если F_{1} и F_{2} — фокусы эллипса, то для любой точки X, принадлежащей эллипсу, угол между касательной в этой точке и прямой (F_{1}X) равен углу между этой касательной и прямой (F_{2}X).
  • Прямая, проведённая через середины отрезков, отсечённых двумя параллельными прямыми, пересекающими эллипс, всегда будет проходить через центр эллипса. Это позволяет построением с помощью циркуля и линейки легко получить центр эллипса, а в дальнейшем оси, вершины и фокусы.
    • Эквивалентная формулировка: через середины двух любых параллельных хорд эллипса проходит какой-либо диаметр эллипса. В свою очередь, любой диаметр эллипса всегда проходит через центр эллипса.
  • Эволютой эллипса является астроида, вытянутая вдоль вертикальной оси.
  • Точки пересечения эллипса с осями являются его вершинами.
  • Эксцентриситет эллипса, то есть отношение e={frac {c}{a}}={sqrt {1-{frac {b^{2}}{a^{2}}}}};;;(0leqslant e<1), характеризует вытянутость эллипса. Чем эксцентриситет ближе к нулю, тем эллипс больше напоминает окружность и наоборот, чем эксцентриситет ближе к единице, тем он более вытянут.
    • Если эксцентриситет эллипса равен нулю (что то же самое, что фокальное расстояние равно нулю: F_{1}F_{2}=0), то эллипс вырождается в окружность.
  • Экстремальные свойства[5]
где {displaystyle S(F)} обозначает площадь фигуры F.

  • Более того, равенство достигается в том и только в том случае, если F ограничено эллипсом.
  • Среди всех выпуклых замкнутых кривых, ограничивающих данную площадь, эллипсы и только они имеет максимальную аффинную длину.
  • Если произвольный эллипс вписан в треугольник ABC и имеет фокусы P и Q, тогда для него справедливо соотношение[6]
{frac {{overline {PA}}cdot {overline {QA}}}{{overline {CA}}cdot {overline {AB}}}}+{frac {{overline {PB}}cdot {overline {QB}}}{{overline {AB}}cdot {overline {BC}}}}+{frac {{overline {PC}}cdot {overline {QC}}}{{overline {BC}}cdot {overline {CA}}}}=1.
  • Если лестницу (бесконечно тонкий отрезок прямой) прислонить к вертикальной стенке с горизонтальным полом, и один конец лестницы будет скользить по стенке (всё время касаясь её) а второй конец лестницы будет скользить по полу (всё время касаясь его), тогда любая фиксированная точка лестницы (не на её концах), будет двигаться по дуге некоторого эллипса. Это свойство остаётся верным, если мы возьмём точку не внутри лестницы-отрезка, а на её мыслимом продолжении. Последнее свойство используется в описанном выше[⇦] эллипсографе.
  • Касательная, проходящая через точку (x_{0},y_{0}), принадлежащую эллипсу, имеет следующее уравнение:
{displaystyle {frac {xx_{0}}{a^{2}}}+{frac {yy_{0}}{b^{2}}}=1.}

Построение эллипса[править | править код]

Построение эллипса с помощью иголок, нитки и карандаша

Инструментами для рисования эллипса являются:

  • эллипсограф
  • две иголки, воткнутые в фокусы эллипса и соединённые ниткой длиной 2a, которую оттягивают карандашом. Способ был придуман Джеймсом Максвеллом в возрасте 14 лет и при запросе его отца в Эдинбургское королевское общество оказался ранее неизвестным[7].

При помощи циркуля или циркуля и линейки можно построить любое количество точек, принадлежащих эллипсу, но не весь эллипс целиком.

Эллипсы, связанные с треугольником[править | править код]

  • Эллипс Брокара — эллипс с фокусами в точках Брокара
  • Эллипс Мандарта
  • Эллипс Штейнера

См. также[править | править код]

  • Кривая второго порядка
  • Парабола
  • Каустика
  • Эллипсоид
  • Эллипсограф
  • Гипербола
  • Окружность Аполлония
  • Овал Кассини

Комментарии[править | править код]

  1. Если же в правой части стоит единица со знаком минус, то получившееся уравнение
    {displaystyle {frac {x^{2}}{a^{2}}}+{frac {y^{2}}{b^{2}}}=-1}

    описывает мнимый эллипс, он не имеет точек на вещественной плоскости.

Примечания[править | править код]

  1. Ivory J. A new series for the rectification of the ellipsis (англ.) // Transactions of the Royal Society of Edinburgh. — 1798. — Vol. 4. — P. 177—190. — doi:10.1017/s0080456800030817.
  2. Bessel F. W. Über die Berechnung der geographischen Längen und Breiten aus geodätischen Vermesssungen (нем.) // Astron. Nachr.. — 1825. — Bd. 4. — S. 241—254. — doi:10.1002/asna.18260041601. — Bibcode: 1825AN……4..241B. В англ. переводе: Bessel F. W. The calculation of longitude and latitude from geodesic measurements (1825) (англ.) // Astron. Nachr.. — 2010. — Vol. 331. — P. 852—861. — doi:10.1002/asna.201011352. — arXiv:0908.1824.
  3. Adlaj S. An eloquent formula for the perimeter of an ellipse (англ.) // Notices of the AMS. — 2012. — Vol. 76, iss. 8. — P. 1094—1099. — doi:10.1090/noti879.
  4. Корн, 1978, с. 68.
  5. Фейеш Тот Л. Глава II, §§ 4, 6 // Расположения на плоскости, на сфере и в пространстве. — М.: Физматгиз, 1958. — 364 с.
  6. Allaire P. R., Zhou J., Yao H. Proving a nineteenth century ellipse identity (англ.) // Mathematical Gazette. — 2012. — Vol. 96, no. 535. — P. 161—165.
  7. Карцев В. П. Максвелл. — М.: Молодая гвардия, 1974. (Серия «Жизнь замечательных людей»). С. 26—28.

Литература[править | править код]

  • Корн Г., Корн Т. Свойства окружностей, эллипсов, гипербол и парабол // Справочник по математике. — 4-е издание. — М.: Наука, 1978. — С. 70—73.
  • Селиванов Д. Ф. Эллипс // Энциклопедический словарь Брокгауза и Ефрона : в 86 т. (82 т. и 4 доп.). — СПб., 1890—1907.
  • А. В. Акопян, А. А. Заславский. Геометрические свойства кривых второго порядка, — М.: МЦНМО, 2007. — 136 с.
  • И. Бронштейн. Эллипс // Квант, № 9, 1970.
  • А. И. Маркушевич. Замечательные кривые // «Популярные лекции по математике», выпуск 4.

Ссылки[править | править код]

  • S.Sykora, Approximations of Ellipse Perimeters and of the Complete Elliptic Integral E(x). Review of known formulae (англ.)
  • Grard P. Michon. Perimeter of an Ellipse (Final Answers) (англ.), 2000—2005. — 20 c.
  • Видео: Как нарисовать эллипс
Построить такой график можно здесь: https://www.desmos.com/
Построить такой график можно здесь: https://www.desmos.com/

Что мы знаем со школы про эллипс? К сожалению, исходя из своей практики работы с учениками, многие вплоть до 11 класса не сталкиваются с такой замечательной плоской фигурой, впрочем как и с её частным случаем – окружностью. Некоторые знают только примерный вид уравнения…

Кстати, какое оно? Каноническим уравнением эллипса считается следующее уравнение:

Каноническое уравнение эллипса
Каноническое уравнение эллипса

Почему оно именно такое? Что ж, это можно вывести из определения. Поэтому давайте его напишем.

Эллипсом называется множество всех точек плоскости, сумма расстояний от каждой из которых до двух данных точек этой плоскости, называемых фокусами, есть величина постоянная, большая чем расстояние между фокусами.

Давайте сделаем рисунок и попробуем вывести каноническое уравнение из определения эллипса.

Математика эллипса: всё, что нужно знать

Обозначим фокусы через F₁ и F₂, расстояние между ними через 2c, а сумму расстояний от произвольной точки эллипса M(x; y) до фокусов – через 2a. По определению 2а > 2c, т.е. а > c.

Для вывода уравнения эллипса выберем систему координат OXY так, чтобы фокусы F₁ и F₂ лежали а оси OX, а начало координат совпадало с серединой отрезка F₁F₂. Тогда фокусы будут иметь следующие координаты: F₁(-c; 0) и F₂(+c; 0).

Тогда, согласно определению эллипса, MF₁ + MF₂ = 2a, то есть:

Математика эллипса: всё, что нужно знать

Мы вывели каноническое уравнение эллипса и доказали, что оно эквивалентно начальному уравнению из определения.

Эллипс – кривая второго порядка.

Исследование формы эллипса по его уравнению

Установим форму эллипса, используя его каноническое уравнение.

1. Каноническое уравнение содержит x и y только в четных степенях, поэтому если точка (x; y) принадлежит эллипсу, то ему также принадлежат точки (x; -y), (-x; y), (-x; -y). Отсюда следует, что эллипс симметричен относительно осей координат Ox и Oy, а также точки O(0; 0), которая является центром эллипса.

Математика эллипса: всё, что нужно знать

2. Точки пересечения эллипса с осями координат. Положив y = 0, находим две точки A₁(a; 0) и A₂(-a;0), в которых ось Ox пересекает эллипс. Положив в уравнении x = 0, находим точки пересечения эллипса с осью Oy: B₁(0; b) и B₂(0; -b). Все эти 4 точки называются вершинами эллипса.

Отрезки A₁A₂ и B₁B₂, а также их длины 2a и 2b называются соответственно большой и малой осями эллипса. Числа a и b называются соответственно большой и малой полуосями эллипса.

3. Также из канонического уравнения следует, что каждое слагаемое в левой части не превосходит единицы, т.е. имеют место неравенства

Математика эллипса: всё, что нужно знать

Следовательно, все точки эллипса лежат внутри прямоугольника, образованного прямыми x = ±a и y = ±b.

4. В каноническом уравнении сумма неотрицательных слагаемых (x/a)² и (y/b)² равна единице. Следовательно, при возрастании одного слагаемого другое будет уменьшаться, т.е. если |x| возрастает, то |y| уменьшается и наоборот.

Дополнительные сведения об эллипсе

Форма эллипса зависит от отношения b/a. При a = b = R эллипс превращается в окружность, уравнение эллипса принимает вид x² + y² = R². Однако, в качестве характеристики формы эллипса чаще используется отношение c/a.

Отношение c/a половины расстояния между фокусами к большей полуоси эллипса называется эксцентриситетом эллипса и обозначается буквой «эпсилон» ε:

Математика эллипса: всё, что нужно знать

Из последней строки видно, что чем меньше эксцентриситет эллипса, тем эллипс будет менее сплющенным, то есть больше походить на окружность, быть ближе к ней по форме. Если положить ε = 0, то эллипс превращается в окружность.

Пусть M(x; y) – произвольная точка эллипса с фокусами F₁ и F₂. Длины отрезков F₁M = r₁ и F₂M = r₂ называются фокальными радиусами точки M.
Очевидно, что r₁ + r₂ = 2a.

Тогда имеют место быть формулы: r₁ = a + εx и r₂ = a + εx

Выведем эти формулы

Математика эллипса: всё, что нужно знать
Математика эллипса: всё, что нужно знать

Прямые x = ±a/ε называются директрисами эллипса. Значение директрисы эллипса выявляется следующим утверждением.

Теорема

Если r – расстояние от произвольной точки эллипса до какого-нибудь фокуса, d – расстояние от этой же точки до соответствующей этому фокусу директрисы, то отношение r/d есть величина постоянная, равная эксцентриситету эллипса: r/d = ε.

Из равенства a² – c² = b² следует, что a > b. Если же a < b, то каноническое уравнение (x/a)² + (y/b)² = 1 определяет эллипс, большая ось которого 2b лежит на оси OY, а малая ось 2a – лежит на оси Ox. Фокусы такого эллипса находятся в точках F₁(0; +c) и F₂(0; -c), где c = √(b² – a²).

Площадь фигуры, ограниченной эллипсом

Допустим, что перед нами стоит следующая задача:
Вычислить площадь фигуры, ограниченной эллипсом.

Решение:

Зададим эллипс параметрическими уравнениями:
x = a
cos(t) и y = b sin(t). Кстати, выразив косинус и синус из каждого, а потом возведя в квадрат оба уравнения, сложив их, можно прийти к каноническому уравнению эллипса.

В силу симметричности эллипса относительно начала координат, нам достаточно найти площадь 1/4 части эллипса, а затем умножить результат на 4. Сделаем подходящий рисунок.

Математика эллипса: всё, что нужно знать

Здесь x изменяется от 0 до a, следовательно параметр t изменяется от π/2 до 0. Площадь четверти эллипса будем искать с помощью интегрирования функции, задающей эллипс в первой четверти координат.

Вывод формулы для площади эллипса
Вывод формулы для площади эллипса

Длина дуги эллипса (периметр эллипса)

Вывод длины дуги эллипса через эллиптический интеграл
Вывод длины дуги эллипса через эллиптический интеграл

Ознакомиться с эллиптическими интегралами

Стоит заметить, что для окружности всё получается гораздо проще, и мы легко выводим формулу, знакомую нам со школы C = 2πR.

Вывод длины дуги окружности
Вывод длины дуги окружности

Приближённые формулы для периметра

Математика эллипса: всё, что нужно знать

Точные формулы для периметра

Джеймс Айвори и Фридрих Бессель независимо друг от друга получили формулу для периметра эллипса:

Математика эллипса: всё, что нужно знать

Площадь сегмента эллипса

Площадь сегмента между дугой, выпуклой влево, и вертикальной хордой , проходящей через точки (x; y) и (x; -y) можно определить по формуле:

Математика эллипса: всё, что нужно знать

Если эллипс задан уравнением Ax² + Bxy + Cy² = 1, то площадь можно определить по формуле

Математика эллипса: всё, что нужно знать

Физический смысл фокусов

1. Свет от источника, находящегося в одном из фокусов, отражается эллипсом так, что отраженные лучи пересекутся во втором фокусе.

2. Свет от источника, находящегося вне любого из фокусов, отражается эллипсом так, что отраженные лучи ни в каком фокусе не пересекутся.

3. Если F₁ и F₂ — фокусы эллипса, то для любой точки M, принадлежащей эллипсу, угол между касательной в этой точке и прямой F₁M равен углу между касательно и прямой F₂M.

4. Прямая, проведённая через середины отрезков, отсечённых двумя параллельными прямыми, пересекающими эллипс, всегда будет проходить через центр эллипса. Это позволяет построением с помощью циркуля и линейки легко получить центр эллипса, а в дальнейшем оси, вершины и фокусы.

5. Эволютой эллипса является астроида , вытянутая вдоль вертикальной оси. Эволюта плоской кривой — геометрическое место точек , являющихся центрами кривизны кривой. По отношению к своей эволюте любая кривая является эвольвентой .

6. Среди всех выпуклых замкнутых кривых, ограничивающих данную площадь, эллипсы и только они имеет максимальную аффинную длину .
Аффинная длина — параметр плоской кривой , который сохраняется при эквиаффинных преобразованиях (то есть аффинных преобразованиях , сохраняющих площадь ).

7. Если лестницу (бесконечно тонкий отрезок прямой) прислонить к вертикальной стенке с горизонтальным полом, и один конец лестницы будет скользить по стенке (всё время касаясь её) а второй конец лестницы будет скользить по полу (всё время касаясь его), тогда любая фиксированная точка лестницы (не на её концах), будет двигаться по дуге некоторого эллипса. Это свойство остаётся верным, если мы возьмём точку не внутри лестницы-отрезка, а на её мыслимом продолжении. Последнее свойство используется в описанном выше эллипсографе.

Построение эллипса с помощью иголок, нитки и карандаша.

Построение эллипса с помощью иголок, нитки и карандаша.
Построение эллипса с помощью иголок, нитки и карандаша.

Эллипсы в астрономии. Все планеты и другие небесные тела Солнечной системы движутся вокруг Солнца по эллиптическим орбитам, в одном из фокусов – Солнце. Этот закон был открыт ещё Кеплером. Ближайшую точку к Солнцу Земля проходит 4 января, таким образом, для северного полушария зима чуть теплее, чем для южного. К тому же, из-за такой формы орбиты, зима для северного полушария чуть короче, то есть период между осенним и весенним равноденствием не ровно 1/2 года, а меньше. Действительно, на южном полюсе температуры бывают ниже, чем на северном полюсе.

Физическое свойство фокусировки. Лучи, испущенные из одного фокуса, после отражения соберутся во втором фокусе. Название «фокус» как раз и связано со словом «фокусировка» лучей. Если на орбите Земли расположить зеркала, так чтобы они были повёрнуты ровно по касательной к орбите, то все лучи соберутся во 2 фокусе, то есть из той точки будет видно, что вся орбита светится.

Последнее свойство используется в физике для построение оптических резонаторов в лазерной технике. Лампа накачки размещается вдоль одной из фокальных осей зеркально отражающего эллиптического цилиндра, а лазерный стержень располагается вдоль другой фокальной оси. На второй фокальной оси помещают активную среду. А свойства эллиптической поверхности помогают быть уверенными в том, что вся энергия лампы накачки соберется в области активной среды.

Математика эллипса: всё, что нужно знать

Почитать подробнее здесь

Поместим в одном из фокусов зеркального эллипса лампочку
и проследим за выпущенными из неё лучами света. Отразившись от эллипса, они соберутся в другом фокусе. Причём окажутся там одновременно:

Математика эллипса: всё, что нужно знать

Зрительно напомним геометрическое определение эллипса: эллипс есть множество точек M плоскости, сумма расстояний от которых до данных точек A и B постоянна:

Математика эллипса: всё, что нужно знать

Решим вспомогательную задачу. Даны две точки по одну сторону от прямой. Мы хотим пройти из A в B, набрав по пути воды из реки l.

Математика эллипса: всё, что нужно знать

Мы хотим пройти из A в B, набрав по пути воды из реки l. В какой точке M надо набирать воду, чтобы общий путь имел минимальную длину?

Математика эллипса: всё, что нужно знать

Рассмотрим точку B’, симметричную точке B. Тогда XB = XB’. Длина AX+XB = AX+XB’ минимальна, когда ломаная AXB’ превращается в прямую.

Мы хотим пройти из A в B, набрав по пути воды из реки l. В какой точке набирать воду? Ответ: в точке пересечения l с AB’ (где B’ симметрична B относительно l). Заодно мы доказали равенство углов. Мы хотим пройти из A в B, набрав по пути воды из реки l. Где набирать воду?
Ответ 1: в точке пересечения
l с AB’.
Ответ 2: там, где «угол падения равен углу отражения».

Принцип Ферма: свет выбирает кратчайший путь между двумя точками.

Математика эллипса: всё, что нужно знать

Вернемся к доказательству оптического свойства эллипса. На эллипсе сумма AM+MB постоянна. А для точек вне эллипса эта сумма больше, AX+XB > AM+MB.

Математика эллипса: всё, что нужно знать

В частности, если провести в точке M касательную к эллипсу, то для любой другой точки X на этой касательной AX+XB > AM+MB. Значит, по предыдущей задаче «угол падения равен углу отражения».

Математика эллипса: всё, что нужно знать

…по предыдущей задаче «угол падения равен углу отражения». Оптическое свойство эллипса доказано.

Многофокусные эллипсы

N-эллипс — обобщение эллипса , имеющее более двух фокусов. N-эллипсы называют также мультифокальными эллипсами , полиэллипсами, k -эллипсами, эллипсами Чирнхауса . Впервые такие фигуры исследовал Джеймс Максвелл в 1846 году.

Пусть на плоскости задано n точек (ui , vi ) (фокусы ), тогда n -эллипс является геометрическим местом точек плоскости, для которых сумма расстояний до n фокусов является постоянной величиной d . В виде формулы данное утверждение записывается как

Математика эллипса: всё, что нужно знать

1-эллипс представляет собой окружность , 2-эллипс — обычный эллипс. Обе данные кривые являются алгебраическими кривыми степени 2.

Для любого числа n фокусов n -эллипс представляет собой замкнутую выпуклую кривую. Кривая является гладкой вне окрестностей фокуса.

Эллипс с 4-мя фокусами и фокусным расстоянием d = 7
Эллипс с 4-мя фокусами и фокусным расстоянием d = 7

Библиотека с книгами для физиков, математиков и программистов
Репетитор IT mentor в VK
Репетитор IT mentor в Instagram
Репетитор IT mentor в telegram

Как ни странно, но для нахождения длины дуги эллипса нет какой-то определенной функции, как в случае длины дуги окружности, или нахождения координат точки на эллипсе. Это интегральное уравнение.

Калькулятор

Давайте вначале посчитаем, оценим.

0

Если есть вопросы, предложения по калькулятору или заметили ошибку, буду очень рад обратной связиx

Потом разберем разные подходы к решению. Оранжевый маркер задает стартовый угол дуги, красный — отклонение. Справа сверху в качестве оценочного параметра представлен периметр, посчитанный по второй формуле Рамануджана.

Эллипс:

a:
b:

Параметры дуги:

Get a better browser, bro…

Интегральное уравнение будем решать как обычно делается в подобных случаях: суммировать очень маленькие значения, которые получаются в результате работы некоей функции, на заданном диапазоне данных, которые наращиваются на чрезвычайно малую постоянную величину. Эта малая величина задается вызывающей стороной. В конце статьи есть рабочий пример с исходниками, в котором можно поиграться с этой «малостью».

Длина дуги, как сумма хорд

Самое простое, что может прийти в голову, это двигаться от начала дуги к ее концу с небольшим наращиванием угла отклонения, считать хорду и прибавлять ее к накапливаемой сумме.

Рис.1. Сумма хорд

Формула такова:

(1) Сумма хорд

Проще говоря, находим координаты двух точек на эллипсе, отстоящих друг от друга на некий малый угол, по ним находим хорду, как гипотенузу получившегося прямоугольного треугольника.

В коде выглядит так:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

//*****************************************************************

//  Нахождение длины дуги эллипса, заданного прямоугольником ARect

//  По аналогии с GDI+, углы в градусах, по часовой. Хордами

//  ∑ √ (Δx² + Δy²)

//*****************************************************************

function CalcArcEllipseLen1(ARect : TxRect;        // эллипс

  startAngle : Extended; // старт.угол

  sweepAngle : Extended; // угол дуги

  deltaAngle : Extended=0.01 // дискрета  

  ): Extended;

var tmp : Extended; // наращиваемый угол

    pnt : TxPoint;  // новые координаты по tmp

    val : TxPoint;  // координаты в предыдущей итерации

    dw : Extended;  // убывающий параметр цикла

    l : extended;   // длина текущей хорды

begin

  // переводим градусы в радианы

  startAngle := startAngle * pi/180;

  sweepAngle := sweepAngle * pi/180;

  deltaAngle := deltaAngle * pi/180;

  // инициализируем

  tmp := startAngle;

  dw := sweepAngle;

  result := 0;      

  // стартовая координата

  val := CalcEllipsePointCoord(ARect,tmp);

  repeat

    // уменьшаем параметр цикла

    dw := dw deltaAngle;

    // определяем значение угла

    if dw < 0 then tmp := tmp + (deltaAngle+dw)

    else tmp := tmp + deltaAngle;        

    // считаем новую точку на эллипсе

    pnt := CalcEllipsePointCoord(ARect,tmp);

    // длина хорды

    l := sqrt(sqr(val.Xpnt.x)+sqr(val.Ypnt.y));

    // сумма, интеграл

    result := result+l;

    val := pnt;    

  until dw < 0;

end;

Проверим с планетарным размахом. По последним данным Международной Службы Вращения Земли (IERS — 1996) большая экваториальная полуось Земли равна 6 378 136,49 м, а полярная малая — 6 356 751,75 м.

Посчитаем периметр меридиана каким-нибудь онлайн-калькулятором, получаем 40 007 859.543 (некоторые могут дать другое число, т.к. используют приближенные формулы для вычисления периметра).

Представленная выше функция за 109 милисекунд выдала результат 40 007 996.265 при дельте 0.001. Это нельзя назвать точным результатом.

Длина дуги, как интеграл

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

(2) Предел суммы хорд при максимальной длине хорды, стремящейся к нулю
(3) Длина t-го звена (хорды) вписанной ломаной

Таким образом, длина дуги эллипса может быть описана интегральным уравнением:

(4) Интегрально-дифференциальное уравнение дуги эллипса

Используя параметрическое уравнение эллипса, приходим к уравнению:

Где t1 и t2 – параметры для начала и конца дуги параметрического уравнения эллипса. Параметром является некий угол к оси абсцисс. Что такое и как найти параметр для угла эллипса подробно изложено тут.

Зная, что (cos t)’ = — sin t, (sin t)’ = cos t (подробный вывод приведен тут и тут), получаем следующую формулу:

(5) Длина дуги эллипса

Выводов достаточно, чтобы написать вторую функцию нахождения длины дуги эллипса.

// Получить разницу между углами A2-A1

function CalcSweepAngle (A1,A2 : Extended;

  ANormalize : boolean = true) : Extended;

begin

   result := A2A1;

   if (result < 0) and (ANormalize) then

     result := 2*pi + result;

end;

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

//*****************************************************************

//  Нахождение длины дуги эллипса, заданного через a и b  

//  Сумма от корня суммы квадратов производных, через sin/cos по ∂t

//  ∑ [√(∂x²/∂t² + ∂y²/∂t²)] ∂t

//*****************************************************************

function CalcArcEllipseLen2(

  a,b : extended;        // полуоси

  startAngle : Extended; // старт.угол

  sweepAngle : Extended; // угол откл.

  deltaAngle : Extended=0.01 // дискрета

  ): Extended;

var sn,cs: Extended;// синус, косинус

    tmp : Extended; // наращиваемый угол

    bet : Extended; // старый параметр

    dw : Extended;  // убывающий параметр цикла

    t : Extended;   // новый параметр

    l : extended;   // значение функции в t

begin

  // переводим градусы в радианы

  startAngle := startAngle * pi/180;

  sweepAngle := sweepAngle * pi/180;

  deltaAngle := deltaAngle * pi/180;

  // инициализируем

  tmp := startAngle;

  dw := sweepAngle;

  result := 0;

  // параметр для начального угла

  SinCos(tmp,sn,cs);

  bet := ArcTan2(a*sn, b*cs);

  repeat

    // уменьшаем параметр цикла

    dw := dw deltaAngle;

    // определяем значение угла

    if dw < 0 then

      tmp := tmp + (deltaAngle+dw)

    else tmp := tmp + deltaAngle;        

    // находим параметр для угла

    SinCos(tmp,sn,cs);

    t := ArcTan2(a*sn, b*cs);

    // разница между параметрами dt=t-bet

    bet := CalcSweepAngle(bet,t);

    // эллиптический интеграл II рода

    SinCos(t,sn,cs);

    l := sqrt ( sqr(a)*sqr(sn) + sqr(b)*sqr(cs))*bet;

    // запоминаем параметр

    bet := t;

    // сумма, интеграл

    result := result+l;

  until dw <= 0;

end;

Результат при dt = 0.001 равен 40 007 859,543 за 109 милисекунд. Отлично!

Длина дуги через эксцентриситет

Это еще не окончательный вид уравнения. В ряде интересных параметров для эллипса есть такая числовая характеристика, показывающая степень отклонения эллипса от окружности, как эксцентриситет. Формула для эллипса:

(6) Эксцентриситет эллипса через полуоси

Чем эксцентриситет ближе к нулю, т.е. разница между a и b меньше, тем больше эллипс похож на окружность и наоборот, чем эксцентриситет ближе к единице, тем он более вытянут.

Выразим b2 = a2 (1 — e2), подставим в формулу (5), помним, что sin2t + cos2t = 1 (справочник [1]), убираем a2 за знак корня, и, как постоянную величину, за знак интеграла тоже, получаем:

(7) Окончательный вид уравнения для длины дуги эллипса

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

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

//*****************************************************************

//  Нахождение длины дуги эллипса, заданного через a и b  

//  По аналогии с GDI+, углы в градусах, по часовой. Считаем E(t,e)

//  a ∑ [√(1-e²cos²t)] ∂t

//*****************************************************************

function CalcArcEllipseLen3(

  a,b : extended;        // полуоси

  startAngle : Extended; // старт.угол

  sweepAngle : Extended; // угол откл.

  deltaAngle : Extended=0.01 // дискрета

  ): Extended;

var sn,cs: Extended;// синус, косинус

    tmp : Extended; // наращиваемый угол

    bet : Extended; // старый параметр

    dw : Extended;  // убывающий параметр цикла

    ex : Extended;  // эксцентриситет

    t : Extended;   // новый параметр

    l : extended;   // значение функции в t

begin

  // переводим градусы в радианы

  startAngle := startAngle * pi/180;

  sweepAngle := sweepAngle * pi/180;

  deltaAngle := deltaAngle * pi/180;

  // считаем эксцентриситет

  ex := 1 sqr(b)/sqr(a);

  // инициализируем

  tmp := startAngle;

  dw := sweepAngle;

  result := 0;

  // параметр для начального угла

  SinCos(tmp,sn,cs);

  bet := ArcTan2(a*sn, b*cs);

  repeat

    // уменьшаем параметр цикла

    dw := dw deltaAngle;

    // определяем значение угла

    if dw < 0 then

      tmp := tmp + (deltaAngle+dw)

    else tmp := tmp + deltaAngle;        

    // находим параметр для угла

    SinCos(tmp,sn,cs);

    t := ArcTan2(a*sn, b*cs);

    // разница между параметрами dt=t-bet

    bet := CalcSweepAngle(bet,t);

    // эллиптический интеграл II рода

    l := sqrt (1ex*sqr(cos(t)))*bet;

    // запоминаем параметр

    bet := t;

    // сумма, интеграл

    result := result+l;

  until dw <= 0;

  result := a*result;

end;

Результат 40 007 859.543, за чуть меньшее время, 94 милисекунды.

Длина дуги через эксцентриситет с подготовкой

Возьмем за основу последнюю функцию. Алгоритм построен так, что в цикле идем от стартового угла, к конечному, на каждой итерации подсчитывая параметр. А если сразу посчитать начальный и конечный параметры и определить условие выхода из цикла? Этим мы однозначно снизим вычислительную нагрузку внутри цикла.

Рис.2. Параметры дуги эллипса.

То есть, вместо того, чтобы идти из точки A в точку B, мы заранее считаем параметры t1 и t2. И в цикле больше нахождением параметров не занимаемся, а только считаем очередное приращение.

Берем код последней реализации и улучшаем:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

//*****************************************************************

//  Нахождение длины дуги эллипса, заданного через a и b  

//  По аналогии с GDI+, углы в градусах, по часовой. Считаем E(t,e)

//  a ∑ [√(1-e²cos²t)] ∂t

//  Но параметры и угол отклонения параметра считаем заранее

//*****************************************************************

function CalcArcEllipseLen4(

  a,b : extended;        // полуоси

  startAngle : Extended; // старт.угол

  sweepAngle : Extended; // угол откл.

  deltaAngle : Extended=0.01 // дискрета

  ): Extended;

var sn,cs: Extended;// синус, косинус

    tmp : Extended; // наращиваемый угол

    bet : Extended; // старый параметр

    dw : Extended;  // убывающий параметр цикла

    ex : Extended;  // эксцентриситет

    l : extended;   // значение функции в t

begin

  // переводим градусы в радианы

  startAngle := startAngle * pi/180;

  sweepAngle := sweepAngle * pi/180;

  deltaAngle := deltaAngle * pi/180;

  // считаем эксцентриситет

  ex := 1 sqr(b)/sqr(a);

  // инициализируем

  tmp := startAngle;

  result := 0;

  // параметр для начального угла

  SinCos(tmp,sn,cs);

  bet := ArcTan2(a*sn, b*cs);

  // считаем параметр для цикла

  SinCos(tmp+sweepAngle,sn,cs);  

  dw := ArcTan2(a*sn, b*cs);

  dw := CalcSweepAngle(bet, dw);

  // для корректной работы цикла, запоминаем в бет старт.параметр  

  tmp := bet;

  // если sweepAngle = 360, результат будет равен 0

  // если sweepAngle > 360, результат будет от оставшейся разницы

  if sweepAngle >= 2*pi then

    dw := 2*pi + dw;

  repeat

    // уменьшаем параметр цикла

    dw := dw deltaAngle;

    bet := tmp;

    // определяем значение угла

    if dw < 0 then tmp := tmp + (deltaAngle+dw)

    else tmp := tmp + deltaAngle;        

    // разница между параметрами dt=tmp-bet

    bet := CalcSweepAngle(bet,tmp);

    // эллиптический интеграл II рода

    l := sqrt (1ex*sqr(cos(tmp)))*bet;

    // сумма, интеграл

    result := result+l;

  until dw <= 0;

  result := a*result;

end;

Результат — 40 007 859,543 за 30 милисекунд! Мысль явно здравая.

Длина дуги и хорошо забытые хорды

Но вернемся к сумме хорд. Что там-то не так? Казалось бы, все просто, понятно и должно работать, но результат, мягко говоря, не точен.

Работая с вещественными типами, результат зависит от «мелкости» приращения, от разрядности используемых типов. Накапливаемые погрешности, неточное представление дробного числа и прочие прелести чисел с плавающей запятой.

Тип Extended – самый точный из существующих в Delphi (и, как следствие, самый медленный). Перепишем нахождение длины дуги хордами, используя этот тип, и без вызовов внешних функций нахождения координат на эллипсе.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

//*****************************************************************

//  Нахождение длины дуги эллипса, заданного через a и b  

//  По аналогии с GDI+, углы в градусах, по часовой. Считаем хордами

//  Абсолютно то же самое, что (1), но типы и точность изменены

//  ∑ √ (Δx² + Δy²)

//*****************************************************************

function CalcArcEllipseLen5(

  a,b : extended;        // полуоси

  startAngle : Extended; // старт.угол

  sweepAngle : Extended; // угол откл.

  deltaAngle : Extended=0.01 // дискрета

  ): Extended;

var sn,cs: Extended;// синус, косинус

    tmp : Extended; // наращиваемый угол

    dw : Extended;  // убывающий параметр цикла

    l : extended;   // длина текущей дуги

    vx,vy : extended;

    px,py : Extended;

begin

  // переводим градусы в радианы

  startAngle := startAngle * pi/180;

  sweepAngle := sweepAngle * pi/180;

  deltaAngle := deltaAngle * pi/180;

  // инициализируем

  tmp := startAngle;

  dw := sweepAngle;

  result := 0;      

  // находим параметр (некий угол) для уравнения

  SinCos(tmp,sn,cs);

  SinCos (ArcTan2(a*sn, b*cs), sn, cs);

  vX := a * cs;

  vY := b * sn;

  repeat

    // уменьшаем параметр цикла

    dw := dw deltaAngle;

    // определяем значение угла

    if dw < 0 then tmp := tmp + (deltaAngle+dw)

    else tmp := tmp + deltaAngle;        

    // считаем новую точку на эллипсе

    SinCos(tmp,sn,cs);

    SinCos (ArcTan2(a*sn,b*cs),sn,cs);

    pX := a * cs;

    pY := b * sn;

    // длина хорды

    l := sqrt(sqr(pXvx)+sqr(pYvy));

    // сумма, интеграл

    result := result+l;

    vx := px;    

    vy := py;        

  until dw < 0;

end;

Результат 40 007 859.542 за 94 милисекунды. Разница в одну тысячную, и такое же время. Весьма неплохо!

Практика

Скачать исходник + исполняемый файл

Качаем, запускаем. Видим такое окно:

Рис.3. Пример: Вид при запуске

При запуске в полях полуосей находятся «земные» значения. Эллипс сильно смахивает на окружность. Можно сразу нажать «Расчет», увидеть значения полярного меридиана, и начинать уже эксперименты.

Для начала проверим корректность получаемых результатов. Я попытался найти какие-нибудь онлайн калькуляторы для подсчета длины дуги эллипса, в которых можно было бы указать стартовый угол и произвольное отклонение, либо просто пару углов, определяющих дугу. Но все калькуляторы считают периметр эллипса. А с произвольной дугой как-то… не встретились.

Картинка из вики:

Длина дуги эллипса (s) в зависимости от его параметра (θ) Автор: Illustr — собственная работа, CC BY-SA 4.0, Ссылка

Заскриним несколько моментов и посчитаем корректность:

Рис.4. Скрины расчетов

Введем a=2, b=0.5, стартовый угол равен 0, отклонение θ=5.642.

Рис.5. Подсчет длины дуги для a=2, b=0.5, стартовый угол=0, отклонение θ=5.642

Видим результат у всех один 8.055. Т.е правы все.

Аналогично поступаем с остальными тремя скринами:

  • отклонение θ=1.154. У нас получился результат 1.333. На скрине видим результат s=1.334. Как так? Давайте увеличим «Дельту» в 10 раз, т.е. вместо 0.001, сделаем 0,01. У всех интегральных 2) 3) 4) результат станет 1.334. В то время, как у 1) и 5), т.е. примитивно-неинтегрально-хордовых останется 1.333.

Какой результат более истинный? Смотрите сами. Уменьшение дельты, т.е. угла для подсчетов, ведет к более точному результату. На 0.001 интегральные функции выдали результат как хордовые. При более грубой дельте, интегральные чуть изменились, а хордовые верны своему результату.

Сделаем дельту очень мелкой, равной 0.00001. Результат у всех, кроме первой, тот же, 1.333.

Лично я начинаю верить 5-ой формуле.

  • отклонение θ= 206. У нас получился результат 4.322. На скрине результат s= 4.322. Дельта 0.001. Все отлично.
  • отклонение θ= 4,488. У нас получился результат 5,989. На скрине результат s= 5,989. Дельта 0.001. Все отлично.

Вывод : Формулы 2-5 работают как надо. Фаворит 5. За меньшее время, т.е. при более «грубой» дельте, находит правильный результат.

Проверим на ужасных эллипсах. Т.е. где эксцентриситет очень близок к единице.

Рис.6. Проверка на очень «сплющенном» эллипсе

Можем заметить следующее: при 0.00001 функции 2 и 3 дали результат, близкий к результату функции 4, полученный при дельте 0.001. При дельте 0.00001 функция 4 дала результат, близкий к результату функции 5. Сама же функция 5 слабо колеблется в показаниях, что при дельте в 0.001, что при 0.00001.

Аналогичную ситуацию можно пронаблюдать при сильно вытянутом эллипсе:

Рис.7. Проверка на очень «вытянутом» эллипсе

Таким образом, имеет смысл использовать функции 4 и 5. Одну, как представительницу интегрального сословия, самую быструю и более точную из них. Другую, как представительницу очевидного и простого метода, работающую, между тем, лучше своих интегральных коллег при минимальных ресурсных затратах.

Небольшая инструкция

Правая кнопка мыши задает стартовый угол. Удерживая правую кнопку мыши можно «прогуляться» по эллипсу. Конечная точка дуги будет следовать за стартовой точкой, отстоя на заданный ранее угол. Если поставить галку на «сохранять параметрическое отклонение», параметрический угол между t1 и t2 станет неизменен. Очень полезно пронаблюдать, как будет меняться сектор.

Левая кнопка мыши задает конечную точку дуги, т.е. угол отклонения.

Скачать

Скачать исходник + исполняемый файл


Друзья, спасибо за внимание!

Подписывайтесь на телегу.

Надеюсь, материал был полезен.


Перейти к содержанию

Длина эллипса (овала)

На чтение 1 мин

Эллипс – это множество точек плоскости, для которых сумма расстояний до фокусов эллипса постоянна и больше расстояния между фокусами.

длина эллипсаa, b – полуоси эллипса

О – центр эллипса

Длина эллипса (L) равна произведению суммы его полуосей (a, b) на число π:

формула длины эллипса

Вам также может понравиться

Дуга – это часть окружности, отсекаемая хордой.

0136

Окружность – геометрическое место точек, равноудаленных

0118

Окружность – геометрическое место точек, равноудаленных

0120

Многоугольник – это геометрическая фигура, которая

0134

Шестиугольник – это многоугольник, который имеет шесть углов.

0415

Пятиугольник – это многоугольник, который имеет пять углов.

0303

Трапеция – это четырехугольник, у которого параллельна

087

Квадрат – это параллелограмм, у которого все углы и

088

Калькулятор периметра эллипса

Введите длину большой и малой полуосей эллипса, укажите точность расчета и нажмите “Посчитать”. Калькулятор выполнит расчет периметра эллипса (расчет приблизительный).

Калькулятор

Эллипсом называется множество всех точек плоскости, для каждой из которых сумма расстояний до двух данных точек F1 и F2 этой плоскости есть величина постоянная, больше расстояния между F1 и F2.

Точки F1 и F2 называют фокусами эллипса, а расстояние между ними – фокусным расстоянием.

Проходящий через фокусы эллипса отрезок, концы которого лежат на эллипсе, называется большой осью данного эллипса. Длина большой оси равна 2a.

Отрезок, перпендикулярный большой оси эллипса, проходящий через центральную точку большой оси, концы которого лежат на эллипсе, называется малой осью эллипса.

Точка пересечения большой и малой осей эллипса называется его центром.

Отрезки, проведённые из центра эллипса к вершинам на большой и малой осях называются, соответственно, большой полуосью и малой полуосью эллипса, и обозначаются a и b.

Формулу периметра эллипса нельзя выразить при помощи простейших функций.

Периметр эллипса

Эллипс — замкнутая кривая на плоскости, которая может быть получена как пересечение плоскости и кругового цилиндра или как ортогональная проекция окружности на плоскость. Окружность является частным случаем эллипса.

Приближённая формула для нахождения периметра эллипса:

, где a — большая полуось, где b — малая полуось эллипса.

Максимальная погрешность этой формулы

0,63% при эксцентриситете эллипса

0,988 (соотношение осей

1/6,5). Погрешность всегда положительная.

Используя этот онлайн калькулятор, вы сможете найти периметр эллипса, зная длину двух полуосей.

Онлайн калькуляторы

Calculatorium.ru – это бесплатные онлайн калькуляторы для самых разнообразных целей: математические калькуляторы, калькуляторы даты и времени, здоровья, финансов. Инструменты для работы с текстом. Конвертеры. Удобное решение различных задач – в учебе, работе, быту.

Актуальная информация

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

Что такое эллипс: формула длины окружности эллипса

В астрономии, когда рассматривают движение космических тел по орбитам, часто применяют понятие “эллипс”, поскольку их траектории характеризуются именно этой кривой. Рассмотрим в статье вопрос, что представляет собой отмеченная фигура, а также приведем формулу длины эллипса.

Что такое эллипс?

Согласно математическому определению, эллипс – это замкнутая кривая, для которой сумма расстояний от любой ее точки до двух других определенных точек, лежащих на главной оси, и носящих название фокусов, является постоянной величиной. Ниже приведен рисунок, который поясняет это определение.

Вам будет интересно: Возраст зрелости у ребенка. Признаки, психология, акселерация

На рисунке сумма расстояний PF’ и PF равна 2 * a, то есть PF’ + PF = 2 * a, где F’ и F – фокусы эллипса, “a” – длина его большой полуоси. Отрезок BB’ называется малой полуосью, а расстояние CB = CB’ = b – длина малой полуоси. Здесь точка C определяет центр фигуры.

На рисунке выше также показан простой метод с веревкой и двумя гвоздиками, который широко используется для изображения эллиптических кривых. Другой способ получить эту фигуру заключается в выполнении сечения конуса под любым углом к его оси, который не равен 90o.

Если эллипс вращать вдоль одной из его двух осей, то он образует объемную фигуру, которая зазывается сфероидом.

Формула длины окружности эллипса

Хотя рассматриваемая фигура является достаточно простой, длину ее окружности точно можно определить, если вычислить так называемые эллиптические интегралы второго рода. Однако, индусский математик-самоучка Рамануджан еще в начале XX века предложил достаточно простую формулу длины эллипса, которая приближается к результату отмеченных интегралов снизу. То есть рассчитанное по ней значение рассматриваемой величины будет немного меньше, чем реальная длина. Эта формула имеет вид: P ≈ pi * [3 * (a+b) – √((3 * a + b) * (a + 3 * b))], где pi = 3,14 – число пи.

Например, пусть длины двух полуосей эллипса будут равны a = 10 см и b = 8 см, тогда его длина P = 56,7 см.

Каждый может проверить, что если a = b = R, то есть рассматривается обычная окружность, тогда формула Рамануджана сводится к виду P = 2 * pi * R.

Отметим, что в школьных учебниках часто приводится другая формула: P = pi * (a + b). Она является более простой, но и менее точной. Так, если ее применить для рассмотренного случая, то получим значение P = 56,5 см.

[spoiler title=”источники:”]

http://calculatorium.ru/math/ellipse-perimeter

http://1ku.ru/obrazovanie/10686-chto-takoe-ellips-formula-dliny-okruzhnosti-ellipsa/

[/spoiler]

Добавить комментарий