asinh()
Функция asinh() в PHP возвращает обратный гиперболический синус числа. Узнайте синтаксис, возвращаемое значение и примеры.
Функция asinh() возвращает обратный гиперболический синус (также называемый ареасинусом гиперболическим) числа. Она является обратной к sinh(): если sinh($x) равно $y, то asinh($y) возвращает $x. На этой странице описаны синтаксис, возвращаемое значение, граничные случаи и примеры с возможностью запуска.
Синтаксис
asinh(float $num): float$num— значение, обратный гиперболический синус которого нужно найти. Допустимо любое вещественное число, включая0и отрицательные значения.- Возвращаемое значение — обратный гиперболический синус
$num, выраженный в радианах.
Математически asinh($num) определяется как log($num + sqrt($num * $num + 1)), поэтому функция никогда не возвращает ошибку для вещественных входных данных — её область определения охватывает все вещественные числа.
Базовый пример
Вызов возвращает значение, гиперболический синус которого равен 1.5. Можно убедиться, что это настоящая обратная функция, подставив результат обратно в sinh() — вы снова получите 1.5.
Обратная связь с sinh()
Поскольку asinh() является обратной к sinh(), их последовательное применение возвращает исходное входное значение (с учётом погрешности вычислений с плавающей точкой):
<?php
$x = 2.0;
echo sinh($x), "\n"; // 3.626860407847
echo asinh(sinh($x)), "\n"; // 2 (the original value)
?>Обработка отрицательных чисел, нуля и нечисловых значений
В отличие от acosh(), которая принимает только значения >= 1, функция asinh() работает со всем диапазоном вещественных чисел. Функция является нечётной, поэтому asinh(-$x) равно -asinh($x):
<?php
echo asinh(0), "\n"; // 0
echo asinh(-1.5), "\n"; // -1.1947632172871
echo asinh(10), "\n"; // 2.998222950298
// A non-numeric string cannot be converted and yields NAN
echo asinh("abc"); // NAN
?>Когда стоит использовать эту функцию?
Обратный гиперболический синус применяется в обработке сигналов, статистике и физике. Распространённый практический вариант — преобразование asinh, логарифмоподобное масштабирование, которое, в отличие от log(), корректно обрабатывает нулевые и отрицательные значения. Это полезно при отображении данных, охватывающих несколько порядков величин в обоих направлениях.
Связанные функции
sinh()— гиперболический синус, обратная функция кasinh().asin()— обратный (арк) синус.acosh()— обратный гиперболический косинус.atanh()— обратный гиперболический тангенс.