/*
============================================================================
Hyperbolic Sine Function For (x).
ERRORS:
Returns FALSE if (xArg) is non-numeric.
DEPENDENCY: BC_Ln()
============================================================================
*/
function BC_Sinh ($xArg, $Decimals=16)
{
$Q = 100;
$x = trim($xArg); if (!Is_Numeric($x)) {return FALSE;}
$S = (bcComp($x, '0', $Q) < 0)? '-':'';
$x = Str_Replace('+', '', Str_Replace('-', '', $x));
$q = trim($Decimals); if ($q < 1){$q = 1;} if ($q > 100){$q = 100;}
$sinh = BC_Ln(bcAdd($x,bcsqrt(bcAdd(bcMul($x,$x,$Q),'1',$Q),$Q),$Q),$Q);
return $S.bcAdd($sinh, '0.'.Str_Repeat('0',$q).'5',$q);
} // End of BC_Sinh()