atan()
Функция atan() в PHP возвращает арктангенс числа — угол, тангенс которого равен заданному значению, в радианах.
Функция atan() в PHP возвращает арктангенс числа — угол, тангенс которого равен этому числу. Результат всегда выражается в радианах. На этой странице рассматриваются синтаксис, параметры, возвращаемое значение, диапазон результатов, а также связь atan() с родственными функциями tan() и atan2().
Что такое функция atan()?
Арктангенс (часто записывается как arctan или tan⁻¹) является обратной функцией тангенса. Если tan(θ) = x, то atan(x) = θ. Таким образом, atan() отвечает на вопрос: «Какой угол имеет данный тангенс?»
Функция принимает один числовой аргумент и возвращает угол в радианах. Поскольку тангенс является периодической функцией и бесконечно повторяется, atan() всегда возвращает угол в главном диапазоне −π/2 до π/2 (приблизительно от −1.5708 до 1.5708 радиан, или от −90° до 90°).
Синтаксис
atan(float $num): float| Часть | Описание |
|---|---|
$num | Значение, для которого вычисляется арктангенс. Допустимо любое вещественное число. |
| Возвращаемое значение | Арктангенс $num в радианах, в диапазоне от −M_PI/2 до M_PI/2. |
Как использовать функцию atan()
Передайте число и получите угол, тангенс которого равен этому числу:
Результат будет 0.46364760900081. Значение выражается в радианах, а не в градусах.
Преобразование результата в градусы
Поскольку atan() возвращает радианы, для получения удобочитаемого вывода обычно выполняется преобразование в градусы с помощью rad2deg():
<?php
$radians = atan(1); // tangent of the angle is 1
echo $radians, "\n"; // 0.78539816339745 (π/4)
echo rad2deg($radians); // 45
?>atan(1) равен π/4, поскольку tan(45°) = tan(π/4) = 1.
Справочные значения
Эти результаты иллюстрируют главный диапазон и симметрию функции:
<?php
echo atan(0), "\n"; // 0
echo atan(1), "\n"; // 0.78539816339745 (45°)
echo atan(-1), "\n"; // -0.78539816339745 (-45°)
echo atan(100), "\n"; // 1.5607966601082 (approaches π/2)
echo atan(-100); // -1.5607966601082 (approaches -π/2)
?>При стремлении аргумента к положительной бесконечности результат приближается к π/2, но никогда не достигает его; при стремлении к отрицательной бесконечности — приближается к −π/2. Функция является нечётной: atan(-x) === -atan(x).
atan() и atan2()
atan() принимает один аргумент и не может определить, в каком квадранте находится исходный угол, поэтому её результат ограничен диапазоном −π/2…π/2. Если известны как компонента y, так и компонента x точки или вектора, следует использовать atan2() — эта функция учитывает знаки обоих аргументов и возвращает полный угол в диапазоне от −π до π:
<?php
echo atan(1 / 1), "\n"; // 0.78539816339745 (45°)
echo atan2(1, 1), "\n"; // 0.78539816339745 (45°, same here)
echo atan2(-1, -1); // -2.3561944901923 (-135°, correct quadrant)
?>atan(-1 / -1) сведётся к atan(1) и потеряет информацию о квадранте, поэтому atan2() предпочтительнее для вычисления направлений и углов векторов.
Типичные сценарии использования
- Нахождение угла наклона или прямой по её градиенту.
- Вычисление направления двумерного вектора (предпочтительнее
atan2(), если известны обе компоненты). - Обратно-тригонометрические вычисления в физике, графике и геометрии.
Связанные функции
tan()— тангенс угла (обратная операция).atan2()— арктангенс двух переменных с учётом правильного квадранта.atanh()— обратный гиперболический тангенс.asin()иacos()— арксинус и арккосинус.rad2deg()иdeg2rad()— преобразование между радианами и градусами.
Заключение
Функция atan() возвращает арктангенс числа в виде угла в радианах, всегда в пределах от −π/2 до π/2. Помните, что результат выражается в радианах (для перевода в градусы используйте rad2deg()), а при необходимости определить правильный квадрант из отдельных компонент y и x обращайтесь к atan2().