Zum Inhalt springen

Fortran: Fortran 95: Standardfunktionen: Mathematische Funktionen

Aus Wikibooks

Rundung

[Bearbeiten]
Funktion Beschreibung
r = aint ( r [, kind] ) Der komplette Nachkommateil der Zahl z wird abgeschnitten.

Beispiele:

  • -5.1125 ⇒ -5.0
  • 7.99 ⇒ 7.0

Der Rückgabewert und das erste Argument sind vom Datentyp real. Optional kann auch ein kind-Wert vom Datentyp integer angegeben werden.

r = anint ( r [, kind] ) Rundet zur nächstliegende Ganzzahl.

Beispiele:

  • -5.8659 ⇒ -6.0
  • -5.5000 ⇒ -6.0
  • -5.1125 ⇒ -5.0
  • 7.12 ⇒ 7.0
  • 7.50 ⇒ 8.0
  • 7.99 ⇒ 8.0

Der Rückgabewert und das erste Argument sind vom Datentyp real. Optional kann auch ein kind-Wert vom Datentyp integer angegeben werden.

i = nint ( r ) Rundet zur nächstliegende Ganzzahl.

Beispiele:

  • -5.8659 ⇒ -6
  • -5.5000 ⇒ -6
  • -5.1125 ⇒ -5
  • 7.12 ⇒ 7
  • 7.50 ⇒ 8
  • 7.99 ⇒ 8

Das Argument r ist vom Datentyp real. Der Rückgabewert ist vom Datentyp integer.

i = ceiling ( r, [, kind] ) Gibt die nächstliegende Ganzzahl >= r zurück.

Beispiele:

  • -5.8659 ⇒ -5
  • -5.1125 ⇒ -5
  • 7.12 ⇒ 8
  • 7.99 ⇒ 8
i = floor ( r, [, kind] ) Gibt die nächstliegende Ganzzahl <= r zurück.

Beispiele:

  • -5.8659 ⇒ -6
  • -5.1125 ⇒ -6
  • 7.12 ⇒ 7
  • 7.99 ⇒ 7

Absolutwert

[Bearbeiten]
Funktion Beschreibung
z = abs ( z ) Gibt den Absolutwert |z| des übergebenen Wertes zurück.

Wird ein Ausdruck komplexen Datentyps übergeben, so entspricht dieser Absolutwert dem Betrag der komplexen Zahl .

Beispiele:

  • -9.65 ⇒ 9.65
  • 4 ⇒ 4
  • (5.5, -7.6) ⇒ 9.381365

Der Datentyp des Rückgabewertes entspricht dem Datentyp des Arguments, mit Ausnahme der Übergabe eines Wertes komplexen Datentyps. Dann ist der Rückgabewert vom Typ real.

Modulo

[Bearbeiten]

Definition Modulo:  Division mit Rest

"Mathematische Variante" → modulo
"Symmetrische Variante" → mod
Funktion Beschreibung
ir = mod ( ir1, ir2 ) Diese Funktion wird im Fortran 95-Working Draft als Remainder-Funktion (remainder ... Restbetrag) bezeichnet. Zurückgegeben wird der Wert ir1 - int(ir1/ir2)*ir2.

Beispiele:

  • mod( 3.0, 2.0 ) ⇒ 1.0
  • mod( -1.0, 3.0 ) ⇒ -1.0

ir 1 kann vom Datentyp integer oder real sein. ir2 soll vom gleichen Datentyp und kind-Wert wie ir1 sein.

ir = modulo ( ir1, ir2 ) Diese Funktion wird im Fortran 95-Working Draft als Modulo-Funktion bezeichnet. Zurückgegeben wird der Wert ir1 - floor(ir1/ir2)*ir2.

Beispiele:

  • modulo( 3.0, 2.0 ) ⇒ 1.0
  • modulo( -1.0, 3.0 ) ⇒ 2.0

ir 1 kann vom Datentyp integer oder real sein. ir2 soll vom gleichen Datentyp und kind-Wert wie ir1 sein.

Vorzeichentransfer

[Bearbeiten]
Funktion Beschreibung
ir = sign ( ir1, ir2 ) Das Vorzeichen von ir2 bestimmt das Vorzeichen des Rückgabewertes:
  • Wenn ir2 >= 0 ist, dann wird |ir1| zurückgegeben.
  • Wenn ir2 < 0 ist, dann wird -|ir1| zurückgegeben.

Beispiele:

  • sign( 5, 3 ) ⇒ 5
  • sign( -5, 3 ) ⇒ 5
  • sign( 5, -3 ) ⇒ -5
  • sign( -5, -3 ) ⇒ -5

Der Datentyp von ir2 soll jenem von ir1 entsprechen. Der Rückgabewert ist vom gleichen Datentyp wie ir1 und ir2.

Positive Differenz

[Bearbeiten]
Funktion Beschreibung
ir = dim ( ir1, ir2 )
  • Wenn ir1 - ir2 > 0, dann entspricht der Rückgabewert der Differenz ir1 - ir2.
  • Wenn ir1 - ir2 <= 0, dann ist der Rückgabewert gleich 0 (oder 0.0).

ir1 kann vom Datentyp integer oder real sein. ir2 soll vom gleichen Datentyp wie ir1 sein.

Maximum

[Bearbeiten]
Funktion Beschreibung
ir = max ( ir1, ir2 [, ir3, ...] ) Gibt den größten Argumentwert zurück.

Beispiel:

  • max( -6.3, 0.4, -5.5 ) ⇒ 0.4

Die Argumente sollen/müssen gleichen Datentyp (real- oder integer-Datentyp) aufweisen. Der Rückgabewert ist vom gleichen Datentyp wie die Argumente.

Minimum

[Bearbeiten]
Funktion Beschreibung
ir = min ( ir1, ir2 [, ir3, ...] ) Gibt den kleinsten Argumentwert zurück.

Beispiel:

  • min( -6.3, 0.4, -5.5 ) ⇒ -6.3

Die Argumente sollen/müssen den selben Datentyp (real- oder integer-Datentyp) aufweisen. Der Rückgabewert ist vom gleichen Datentyp wie die Argumente.

Komplexe Zahlen

[Bearbeiten]
Funktion Beschreibung
r = aimag ( x ) Gibt den Zahlenwert des Imaginärteils einer komplexen Zahl x zurück.

Beispiel:

  • aimag( (-5.5, -10.0) ) ⇒ -10.0

Der Datentyp des Rückgabewertes ist real (mit dem kind-Wert von x).

x = conjg ( x ) Gibt die konjugiert komplexe Zahl zurück.

Beispiel:

  • conjg( (-5.5, -10.0) ) ⇒ (-5.5, 10.0)

Quadratwurzel

[Bearbeiten]
Funktion Beschreibung
rx = sqrt ( rx ) Gibt zurück. Ist das Argument vom Datentyp real, so muss die übergebene Zahl ≥ 0.0 sein. Im Falle eines Argumentes komplexen Datentyps (zahl=(x, y)) ist der Rückgabewert eine Wurzel der Formel

Beispiele:

  • sqrt( 2.0 ) ⇒ 1.414214
  • sqrt( (-5.5, -10.0) ) ⇒ ( 1.719406, -2.907982 )

Der Rückgabewert ist vom gleichen Datentyp wie das Argument.

Exponentialfunktion

[Bearbeiten]
Funktion Beschreibung
rx = exp ( rx ) Exponentialfunktion (e-Funktion). Das Argument kann vom Datentyp real oder complex sein:
  • real :: zahl ⇒
  • complex :: zahl ⇒ die e-Funktion für die Zahl zahl=(x,y) ergibt sich aus der Formel

Beispiele:

  • exp( 1.0 ) ⇒ 2.718282
  • exp( (1.0, -1.0) ) ⇒ ( 1.468694, -2.287355 )

Der Rückgabewert ist vom gleichen Datentyp wie das Argument.

Logarithmen

[Bearbeiten]
Funktion Beschreibung
rx = log ( rx ) Logarithmus naturalis. Das Argument kann vom Datentyp real oder complex sein:
  • real :: zahl ⇒ Der Logarithmus naturalis einer reellen Zahl ergibt sich aus der Formel für .
  • complex :: zahl ⇒ Der Logarithmus naturalis einer komplexen Zahl zahl=(x, y) ergibt sich aus der Formel
mit

Beispiel:

  • log( (1.0, -1.0) ) ⇒ ( 0.3465736, -0.7853982 )

Der Rückgabewert ist vom gleichen Datentyp wie das Argument.

r = log10 ( r ) Dekadischer Logarithmus. Gibt für zurück. Das Argument, sowie der Rückgabewert sind vom Datentyp real.

Winkelfunktionen

[Bearbeiten]
Funktion Beschreibung
rx = sin ( rx ) Sinus. Das Argument kann vom Datentyp real oder complex sein. Ist das Argument vom Datentyp complex, so ergibt sich der Rückgabewert für die Zahl (x, y) aus der Formel

Beispiel:

  • sin( (1.0, -1.0) ) ⇒ (1.298458, -0.6349639)

Der Rückgabewert ist vom selben Datentyp wie das Argument.

rx = cos ( rx ) Kosinus. Das Argument kann vom Datentyp real oder complex sein. Ist das Argument vom Datentyp complex, so ergibt sich der Rückgabewert für die Zahl (x, y) aus der Formel

Beispiel:

  • cos( (1.0, -1.0) ) ⇒ (0.8337300, 0.9888977)

Der Rückgabewert ist vom selben Datentyp wie das Argument.

r = tan ( r ) Tangens.

Arkusfunktionen

[Bearbeiten]
Funktion Beschreibung
r = asin ( r ) Arkussinus.
r = acos ( r ) Arkuskosinus.
r = atan ( r ) Arkustangens.
r = atan2 ( r1, r2 ) Hauptwert des Argumentes des Arkustangens der komplexen Zahl (r2, r1). Funktionsargumente r1, r2 und Rückgabewert sind vom Datentyp real. r2 soll den gleichen kind-Wert wie r1 aufweisen. Wenn r1 gleich Null ist, dann darf r2 nicht Null sein und umgekehrt.

Hyperbelfunktionen

[Bearbeiten]
Funktion Beschreibung
r = sinh ( r ) Sinus hyperbolicus.
r = cosh ( r ) Cosinus hyperbolicus.
r = tanh ( r ) Tangens hyperbolicus.