Start · Sprachen · PHP · Referenz · sinh

sinh

Funktion

Berechnet den Sinus hyperbolikus (<code>sinh</code>) einer Zahl.

seit PHP 4.0.0 Kategorie: math

Signatur

sinh(float $num): float

Beschreibung

sinh() berechnet den hyperbolischen Sinus des übergebenen Wertes num (im Bogenmaß). Der hyperbolische Sinus ist definiert als (e^x - e^(-x)) / 2, wobei e die Eulersche Zahl ist.

Die Funktion wird vor allem in Mathematik, Physik und Ingenieurwissenschaften eingesetzt, beispielsweise bei der Modellierung von Kurven (Kettenlinie), elektrischen Feldern oder hyperbolischer Geometrie.

Im Gegensatz zum gewöhnlichen Sinus (sin()), der auf dem Einheitskreis basiert, basiert sinh() auf der Einheitshyperbel. Der Rückgabewert ist eine Gleitkommazahl und kann beliebig groß werden, da sinh() keine periodische Funktion ist.

Parameter

Name Typ Default Beschreibung
$num Pflicht float Der Eingabewert im Bogenmaß (Radiant), für den der hyperbolische Sinus berechnet werden soll.

Rückgabewert

Typ
float
Beschreibung
Gibt den hyperbolischen Sinus von num als Gleitkommazahl zurück. Das Ergebnis liegt im Bereich von -INF bis +INF.

Beispiele

Grundlegende Verwendung von sinh()

<?php
// Sinus hyperbolikus für einige typische Werte
echo sinh(0);    // 0
echo "\n";
echo sinh(1);    // 1.1752011936438
echo "\n";
echo sinh(-1);   // -1.1752011936438
echo "\n";
echo sinh(2);    // 3.6268604078470
echo "\n";
echo sinh(M_PI); // 11.548739357258
0 1.1752011936438 -1.1752011936438 3.6268604078470 11.548739357258

Kettenlinie berechnen (Catenary)

<?php
// Die Form eines hängenden Seils (Kettenlinie) wird durch
// y = a * cosh(x / a) beschrieben, aber sinh() kommt bei der
// Bogenlängenberechnung zum Einsatz: L = a * sinh(x / a)

$a = 1.0; // Skalierungsparameter
$x = 2.0; // Horizontale Position

$bogenlaenge = $a * sinh($x / $a);
echo "Bogenlänge der Kettenlinie bei x={$x}: " . round($bogenlaenge, 6);
Bogenlänge der Kettenlinie bei x=2: 3.626860

// Wichtig · Fallstricke

Für sehr große Eingabewerte kann das Ergebnis zu INF werden, da der hyperbolische Sinus exponentiell wächst. Prüfen Sie bei kritischen Anwendungen das Ergebnis mit is_finite().

Die Umkehrfunktion von sinh() ist der Areasinus hyperbolicus, der in PHP über asinh() verfügbar ist. Verwandte Funktionen sind cosh() (Kosinus hyperbolikus) und tanh() (Tangens hyperbolikus).

Siehe auch