asinh()
Aprenda a usar a função asinh() no PHP para obter o seno hiperbólico inverso de um número, com exemplos práticos e casos especiais.
A função asinh() retorna o seno hiperbólico inverso (também chamado de seno hiperbólico de área) de um número. É o inverso de sinh(): se sinh($x) é igual a $y, então asinh($y) retorna $x. Esta página aborda sua sintaxe, valor de retorno, casos especiais e exemplos executáveis.
Sintaxe
asinh(float $num): float$num— o valor cujo seno hiperbólico inverso você deseja. Qualquer número real é válido, incluindo0e negativos.- Valor de retorno — o seno hiperbólico inverso de
$num, expresso em radianos.
Matematicamente, asinh($num) é definido como log($num + sqrt($num * $num + 1)), portanto a função nunca gera erros para entradas reais — seu domínio abrange todos os números reais.
Um exemplo básico
A chamada retorna o valor cujo seno hiperbólico é 1.5. Você pode confirmar que é um verdadeiro inverso passando o resultado de volta para sinh() — você obtém 1.5 novamente.
Relação inversa com sinh()
Como asinh() desfaz sinh(), encadear os dois retorna o valor original (dentro do arredondamento de ponto flutuante):
<?php
$x = 2.0;
echo sinh($x), "\n"; // 3.626860407847
echo asinh(sinh($x)), "\n"; // 2 (the original value)
?>Tratando negativos, zero e entrada não numérica
Ao contrário de acosh(), que só aceita valores >= 1, asinh() aceita o intervalo completo de números reais. A função é ímpar, portanto asinh(-$x) é igual a -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
?>Quando você usaria isso?
O seno hiperbólico inverso aparece em processamento de sinais, estatística e física. Um uso prático comum é a transformação asinh, um dimensionamento semelhante ao logaritmo que, ao contrário de log(), lida com zero e valores negativos de forma elegante — útil ao plotar dados que abrangem várias ordens de magnitude em ambas as direções.
Funções relacionadas
sinh()— seno hiperbólico, o inverso deasinh().asin()— seno inverso (arco).acosh()— cosseno hiperbólico inverso.atanh()— tangente hiperbólica inversa.