Benutzer-Werkzeuge

Webseiten-Werkzeuge


mathematische_grundlagen

Mathematische Grundlagen

Dieser Abschnitt erklärt die in CGRAPH zum Einsatz kommenden mathematischen Routinen und die ihnen zugrunde liegenden Gesetzmäßigkeiten. Er enthält auch eine kurze Einführung in die Theorie der komplexen Zahlen und erläutert die komplexen Funktionen, die in CGRAPH die Grundlage aller Berechnungen sind.

Die Kenntnis dieser Grundlagen ist zur Benutzung von CGRAPH nicht erforderlich, sie beantwortet jedoch weitergehende Fragen.

Funktionen

Unter einer Funktion wird im allgemeinen eine Abbildung verstanden, die jedem Vektor des Urbildraumes genau einen Funktionswert zuweist. Innerhalb der reellwertigen Graphiken kommen reellwertige Funktionen einer oder zweier Veränderlicher zum Einsatz. Diese können geschrieben werden als

(x,y)^T doubleright ~ f(x,y)

und stellen damit zunächst Abbildungen vom ℝ2 in den ℝ1 dar. Wenn die Funktion nur von einer Veränderlichen abhängig ist, wird nur eine Abbildung vom ℝ2 in den ℝ1 vorgenommen.

Gewöhnlich werden solche Funktionen dargestellt, indem der Veränderlichen eine Achse, dem Funktionswert die zweite Achse des ℝ2 zugeordnet wird. Bei Funktionen mit zwei Veränderlichen wird den Variablen eine Ebene, dem Funktionswert die dritte Koordinate zugeordnet, so daß geschrieben werden kann

y = f(x)

oder

z = f(x,y)

Auf diese Weise verfährt auch CGRAPH bei der Darstellung von Funktionen. Über das Menü 2D-Grafiken / Funktionen stehen dabei die Darstellung von f(x), der ersten und der zweiten Ableitung sowie des Integrals zur Verfügung.

Darstellung der Funktion

CGRAPH berechnet hier die Funktionswerte, indem zwischen Anfangs- und Endwert der Variablen x Stützwerte berechnet werden, deren Anzahl über die Einstellungen im Register 2D-Grafik vorgegeben werden kann.

Ableitungen

In CGRAPH werden die Ableitungen auf grafischem Wege berechnet. Da hier die Anzahl der berechneten Stützstellen in das Ergebnis eingeht, ist eine ausreichend hohe Anzahl Stützwerte eine Grundbedingung für eine gute Übereinstimmung mit der tatsächlichen Ableitung.

CGRAPH verwendet für die Berechnung der ersten Ableitung die folgende Näherungsformel:

f prime(x) ~ approx ~ {f(x_i) ~ - ~ f(x_{i-1})}/{x_i ~ - ~ x_{i-1}}

wobei die Werte i und i-1 die jeweils verwendeten Stützwerte indizieren.

Für die zweite Ableitung wird die folgende Näherungsformel verwendet:

f prime prime(x) ~ approx ~ {{{f(x_i) ~ - ~ f(x_{i-1})}/{x_i ~ - ~ x_{i-1}}} ~  -  ~ {{f(x_{i-1}) ~ - ~ f(x_{i-2})}}/{x_{i-1} ~ - ~ x_{i-2}}}/{x_i ~ - ~ x_{i-1}}

Neben dem Stützwert f(xi-1) wird hier auch noch der Stützwert f(xi-2) benötigt. Die erste Ableitung der Anfangs- und Endwerte kann ebenso wie deren zweite Ableitung nicht bestimmt werden, da die entsprechenden Verläufe außerhalb des Wertebereichs nicht betrachtet werden. Hier wird auch deutlich, welch großen Einfluß die Anzahl der Stützwerte auf die exakte Darstellung der Ableitungen hat. Der Stützstellenabstand xi - xi-1 geht direkt in die Berechnung ein.

Integral

CGRAPH verwendet zur (grafischen) Darstellung des Integrals eine modifizierte Balkenregel. Berechnet wird das bestimmte Integral über die Intervallgrenzen mit:

I ~ = ~ int{x_1}{x_2}{f(x) ~ dx}

wobei das Integral näherungsweise aus

I ~  approx  ~  sum{i=1}{N}{{ ~ f(x_i) + f(x_{i-1})}/{2} (x_1 - x_{i-1})}

berechnet wird. Auch hier ist die Anzahl der Stützstellen von entscheidender Wichtigkeit.

Allgemeine Kurven und Flächen

Der Unterschied zwischen Funktionen und allgemeinen Kurven besteht in der Bedingung, daß bei ersteren jedem Vektor des Urbildraumes nur ein Funktionswert zugeordnet werden darf, bei zweiten jedoch nicht. Im zweidimensionalen Fall wird daher bei allgemeinen Kurven eine Abbildung vom ℝ1 in den ℝ2 durchgeführt. Im dreidimensionalen Fall findet eine Abbildung vom ℝ1 in den ℝ3 statt. Die zugehörigen Abbildungsfunktionen lauten

x ~ = ~ f_1(t)

y ~ = ~ f_2(t)

und im dreidimensionalen Fall zusätzlich

z ~ = ~ f_3(t)

Innerhalb von CGRAPH sind diese Abbildungen unter den Menüpunkten 2D-Grafiken/Ebene Kurven und 3D-Grafiken/Raumkurven zu finden. Damit können Kurven dargestellt werden, deren Parameterdarstellung bekannt ist. Implizite Definitionen einer Kurve müssen in explizite Parameterdarstellungen umgeformt werden.

Dabei wird nicht die Abhängigkeit der drei Koordinaten vom Parameter dargestellt, sondern die Abhängigkeit der drei Parameter­funktionen voneinander.

Wenn statt Kurven im ℝ3 Flächen dargestellt werden sollen, genügt die Verwendung eines Parameter nicht. Die benötigte Abbildung führt dann vom ℝ2 in den ℝ3, wobei in CGRAPH auch wieder die Abhängigkeit der drei Abbildungsfunktionen

x ~ = ~ f_1(t, s)

y ~ = ~ f_2(t, s)

z ~ = ~ f_3(t, s)

dargestellt wird. s bezeichne dabei den zweiten Parameter. Die Vorgehensweise der Abbildung ist dabei ähnlich wie bei den Raumkurven. Hier werden Stützwerte mit

x(s) ~ = ~ f_1(t_i, s)

y(s) ~ = ~ f_2(t_i, s)

z(s) ~ = ~ f_3(t_i, s)

berechnet, wobei hier ti den festgehaltenen und s den laufenden Parameter darstellen. Gezeichnet wird also nicht die komplette Fläche, sondern nur Raumkurven auf der Fläche, die deren Lage im Raum verdeutlichen. Die Zusammenfassung von je vier solcher Stützwerte zu einem Polygonzug erlaubt in CGRAPH die Erstellung eines Flächenmodells, bei dem nur die sichtbaren Kanten der Fläche dargestellt werden.

Auch bei Flächen im Raum gilt, dass die Parameterdarstellung der Fläche bekannt sein muß, wenn sie in CGRAPH über das Menü 3D-Grafiken/Flächen im Raum dargestellt werden soll.

Oberflächen sind Flächen auf abgeschlossenen Körpern, z.B. Kugeln. Da diese mathematisch nicht von ausgedehnten Flächen unterscheidbar sind, können sie ebenfalls auf diese Weise dargestellt werden. Wenn die Oberfläche eines Körpers in Parameterform eingegeben wird, stellt CGRAPH daher die Struktur des Körpers dar.

Interpolation

Über das Menü Weitere Grafiken/Interpolation können in CGRAPH Interpolationen von Kurven aufgrund von Wertepaarlisten durchgeführt werden.

Lineare Interpolation

Für jede zwei Paare (x0,y0) und (xi, yi) können bei der linearen Interpolation die zugehörigen Werte für den Achsenabschnitt und die Steigung der Funktion y = mx + b berechnet werden.

m_i ~  =  ~  {y_i ~ - ~ y_0}/{x_i ~ - ~ x_0}

b_i ~  =  ~  {y_0 ⋅ x_i ~ - ~ y_i ⋅ x_0}/{x_i ~ - ~ x_0}

Die angegebenen Werte für m und b sind als arithmetische Mittel der so berechneten Einzelwerte definiert:

m ~ := ~ {1}/{N-1} sum{i=1}{N-1}{m_i}

b ~ := ~ {1}/{N-1} sum{i=1}{N-1}{b_i}

Es wird über N-1 Werte summiert, weil immer zwei Wertepaare benötigt werden.

Quadratische Interpolation

Um die Parameter der quadratischen Gleichung

y ~ = ~ a x^2 + bx + c

angeben zu können, sind je zwei Referenzwertepaare (x0,y0) und (x1,y1) erforderlich. Diese beiden Wertepaare werden als auf der Kurve liegend angenommen. Mit den übrigen Wertepaaren bilden sie für die jeweiligen Parameter a, b und c das lineare Gleichungssystem

y_0 ~ = ~ a {x_0}^{2} + bx_0 + c

y_1 ~ = ~ a {x_1}^{2} + bx_1 + c

y_i ~ = ~ a {x_i}^{2} + bx_i + c

das in CGRAPH für alle Punkte untereinander durch Determinantenrechnung gelöst wird. Die angegebenen Werte werden wie bei der linearen Interpolation durch Bildung des arithmetischen Mittelwertes der Parameter gebildet mit

p ~ := ~ {1}/{N-2} sum{i=1}{N-2}{p_i}

wobei p stellvertretend für die Parameter a, b und c steht. Da zwei Referenzwerte benötigt werden, kann die Lösung nur N-2 Wertepaare umfassen; es sind daher auch mindestens drei Eingabewerte erforderlich. Die Referenzwertepaare können in CGRAPH aus allen eingegebenen Wertepaaren ausgewählt werden; beim ersten Aufruf der Funktion werden das erste und das letzte Paar der eingegebenen Liste verwendet.

Exponentielle Interpolation

Hier wird die Funktion

y ~ = ~ c ⋅ e^{a ⋅ x}

als Grundlage der Wertepaare angenommen. Die exakte Berechnung der Parameter a und c führt zu einer transzendenten Gleichung, die nur über numerische Näherungsverfahren lösbar ist. Das hier angewandte Verfahren liefert bei erheblicher Rechenvereinfachung vergleichbare graphische Werte.

Dazu berücksichtigt CGRAPH, dass die erste Ableitung der Exponentialfunktion wiederum die Exponentialfunktion ist:

y prime  ~ = ~ a ⋅ c ⋅ e^{a ⋅ x}

Berechnet man also aus den gegebenen Wertepaaren deren Steigung, kommt man auf folgende einfache Gleichung:

y - y prime  ~ = ~ c ⋅ (1 - a)

Aus je zwei solcher Wertepaare yi und yi' lassen sich dann Werte für a und c gewinnen, deren resultierender Wert wieder durch Bildung des arithmetischen Mittelwertes berechnet wird.

Exponentielle Interpolation mit Grenzwert

Hier wird die Funktion

y ~ = ~ c ⋅ (1 - e^{a ⋅ x})

als Grundlage der Wertepaare angenommen. Die exakte Berechnung der Parameter a und c führt auch hier zu einer transzendenten Gleichung, die nur über numerische Näherungsverfahren lösbar ist. Das hier angewandte Verfahren liefert bei erheblicher Rechenvereinfachung vergleichbare graphische Werte.

Dazu berücksichtigt CGRAPH, dass die erste Ableitung der Exponentialfunktion wiederum die Exponentialfunktion ist:

y prime  ~ = ~ -a ⋅ c ⋅ e^{a ⋅ x}

Berechnet man also aus den gegebenen Wertepaaren deren Steigung, kommt man auf folgende einfache Gleichung:

y - y prime  ~ = ~ c ⋅ (1 + a)

Aus je zwei solcher Wertepaare yi und yi' lassen sich dann Werte für a und c gewinnen, deren resultierender Wert wieder durch Bildung des arithmetischen Mittelwertes berechnet wird.

Kettenlinie (Cosinushyperbolicus)

Hier wird die Funktion

y ~ = ~ c ⋅ cosh(a ⋅ x)

als Grundlage der Wertepaare angenommen. Die exakte Berechnung der Parameter a und c führt auch hier zu einer transzendenten Gleichung, die nur über numerische Näherungsverfahren lösbar ist. Das hier angewandte Verfahren liefert bei erheblicher Rechenvereinfachung vergleichbare graphische Werte.

Dazu berücksichtigt CGRAPH, dass die zweite Ableitung des Cosinushyperbolicus wiederum ein Cosinushyperbolicus ist:

y prime prime  ~ = ~ c ⋅ a^2 ⋅ cosh(a ⋅ x)

Berechnet man also aus gegebenen Wertetripeln deren zweite Ableitung, kommt man auf folgende einfache Gleichung:

y - y prime prime  ~ = ~ c ⋅ (1 - a^2)

Aus je zwei solcher Wertepaare yi und yi'' lassen sich dann Werte für a und c gewinnen, deren resultierender Wert wieder durch Bildung des arithmetischen Mittelwertes berechnet wird.

Fourier-Reihe

Diese Interpolationsart eignet sich für periodische Vorgänge. Die einzelnen Koeffizienten einer Fourierreihe werden ermittelt:

y ~ = ~ sum{}{}{c_k ⋅ sin(a_k ⋅ x)}

Akima-Interpolation

Wenn bei Interpolationen nicht die zugrunde liegende mathematische Funktion bestimmt, sondern ein möglichst glatter Verlauf der Kurve dargestellt werden soll, muss der zur Interpolation führende Algorithmus bestimmte Voraussetzungen erfüllen.

  1. Es dürfen keine Überkrümmungen an Sprungstellen auftreten.
  1. Wertepaare dürfen nur Einfluss auf ein begrenztes Intervall um den Wert herum haben.

Hierfür eignen sich zwei Verfahren der numerischen Mathematik, die Spline- und die Akima-Interpolation, die nach ihrem Entwickler Hiroshi Akima benannt wurde. Bei beiden werden kubische Polynome der Form

P_i(x) ~ = ~ a_i ~ + ~ b_i ⋅ (x-x_i) ~ + ~ c_i ⋅ (x-x_i)^2 ~ + ~ d_i ⋅ (x-x_i)^3

verwendet. Die Akima-Interpolation geht dabei von der Stetigkeit der ersten Ableitung aus, die Spline-Interpolation verlangt zusätzlich Stetigkeit bei der zweiten Ableitung. Dies führt aber zu leichten Überschwingern, weshalb in CGRAPH die Akima-Interpolation eingesetzt wurde. Bei der Akima-Interpolation werden zunächst links und rechts vom eigentlichen Betrachtungsintervall zwei zusätzliche Punkte extrapoliert, die für die interne Berechnung benötigt werden. In der Zeichnung werden sie nicht dargestellt.

Die Abszissenwerte dieser extrapolierten Paare ergeben sich zu

x_{-1} ~ = ~ x_0 ~ + ~ x_1 ~ - ~ x_2

x_{-2} ~ = ~ x_{-1} ~ + ~ x_0 ~ - ~ x_1

x_{N+1} ~ = ~ x_N ~ + ~ x_{N-1} ~ - ~ x_{N-2}

x_{N+2} ~ = ~ x_{N+1} ~ + ~ x_N ~ - ~ x_{N-1}

Zur Interpolation wird zusätzlich die Steigung zwischen zwei Wertepaaren benötigt. Diese berechnet sich aus

m_i ~  =  ~  {y_i ~ - ~ y_{i-1}}/{x_i ~ - ~ x_{i-1}}

Die Steigungsberechnung kann nur vom zweiten bis zum vorletzten Wertepaar durchgeführt werden, da die Ordinatenwerte der extrapolierten Paare außerhalb des Intervalls noch nicht vorliegen. Sie werden aus den zu diesem Zeitpunkt bekannten Wertepaaren und den berechneten Steigungen berechnet zu

y_{-1} ~ = ~ (x_0 ~ - ~ x_{-1}) (m_1 ~ - ~ 2m_0) ~ + ~ y_0

m_{-1} ~  =  ~  {y_{0} ~ - ~ y_{-1}}/{x_{0} ~ - ~ x_{-1}}

y_{-2} ~ = ~ (x_{-1} ~ - ~ x_{-2}) (m_{0} ~ - ~ 2m_{-1}) ~ + ~ y_{-1}

m_{-2} ~  =  ~  {y_{-1} ~ - ~ y_{-2}}/{x_{-1} ~ - ~ x_{-2}}

y_{N+1} ~ = ~ (x_{N+1} ~ - ~ x_{N}) (2m_{N-1} ~ - ~ 2m_{N-2}) ~ + ~ y_{N}

m_{N} ~  =  ~  {y_{N+1} ~ - ~ y_{N}}/{x_{N+1} ~ - ~ x_{N}}

y_{N+2} ~ = ~ (x_{N+2} ~ - ~ x_{N+1}) (2m_{N} ~ - ~ 2m_{N-1}) ~ + ~ y_{N+1}

m_{N+1} ~  =  ~  {y_{N+2} ~ - ~ y_{N+1}}/{x_{N+2} ~ - ~ x_{N+1}}

Nach der Extrapolation dieser zusätzlichen Werte können die einzelnen Koeffizienten des kubischen Polynoms berechnet werden. Dazu wird noch die bei der Akima-Interpolation verwendete Steigungsformel benötigt. Diese lautet

t_{i} ~  =  ~  {delim{|}{m_{i+1} ~ - ~ m_{i}}{|} ⋅ m_{i-1} ~ + ~  delim{|}{m_{i-1} ~ - ~ m_{i-2}}{|} ⋅ m_{i}}/{delim{|}{m_{i+1} ~ - ~ m_{i}}{|} ~ + ~ delim{|}{m_{i-1} ~ - ~ m_{i-2}}{|}}

wobei m die jeweilige Steigung beschreibt, die zuvor berechnet wurde. Damit ergeben sich die Koeffizienten zu

a_{i} ~ = ~ y_{i}

b_{i} ~ = ~ t_{i}

c_{i} ~ = ~ {3 ⋅ m_{i} ~ - ~ 2 ⋅ t_{i} ~ - ~ t_{i+1}}/{x_{i+1} ~ - ~ x_{i}}

d_{i} ~ = ~ {t_{i} ~ + ~  t_{i+1} ~ - ~ 2 ⋅ m_{i}}/{(x_{i+1} ~ - ~ x_{i})^2}

Mit diesen Koeffizienten können nun die kubischen Polynome berechnet werden, die zur Interpolation herangezogen werden.

Komplexe Zahlen

CGRAPH ermöglicht die Erstellung von Abbildungen komplexer Funktionen in der komplexen Ebene. Diese wird beschrieben als

bbC ~ := ~ bbR ~ * ~ bbR

stellt also einen zweidimensionalen Vektorraum dar. In diesem Vektorraum gelten die mathematischen Grundaxiome gelten. Neben der reellen Achse, die als Sonderfall in der komplexen Ebene enthalten ist, wird die imaginäre Einheit i (bzw. j) eingeführt, die folgende Definition besitzt:

i ~ := ~ sqrt{-1}

Zahlen werden aus Real- und Imaginärteil zusammengesetzt, wobei der Imaginärteil durch Hinzufügen der imaginären Einheit gekennzeichnet wird.

z ~ := ~ x ~ + ~ iy

Außerdem ist eine Darstellung in Polarkoordinaten möglich.

z ~ := ~ delim{|}{z}{|} ~ e^{i  varphi}

mit

delim{|}{z}{|} ~ = sqrt{x^2 ~ + ~ y^2}

varphi ~ =  ~arg(z)

wobei der Winkel arg(z) gemäß der geometrischen Anschauung als

arg(z) ~ = ~ arctan(y/x) ~ + ~ pi ⋅ sgn(y) {1 ~ - ~ sgn(x)}/{2}

definiert ist. Die Mehrdeutigkeit des Arcustangens bezüglich der betrachteten Quadranten der komplexen Ebene wird durch den zweiten Teil der Funktion beschrieben. CGRAPH verwendet bei Ausgaben das kartesische Zahlenformat mit Real- und Imaginärteil.

Im Gegensatz zum reellen Vektorraum ℝ2 sind im komplexen Raum alle Grundrechenarten erklärt. Mit z=x+iy ergibt sich folgende Tabelle:

Rechenart Rechenvorschrtift
Additionz_1 ~ + ~ z_2 ~ = ~ x_1 ~ + ~x_2 ~ + ~ i(y_1 ~ + ~ y_2)
Subtraktionz_1 ~ - ~ z_2 ~ = ~ x_1 ~ - ~x_2 ~ + ~ i(y_1 ~ - ~ y_2)
Multiplikationz_1 ~ ⋅ ~ z_2 ~ = ~ x_1x_2 ~ - ~y_1y_2 ~ + ~ i(x_1y_2 ~ + ~ x_2y_1)
Division{z_1}/{z_2} ~ = ~ {x_1x_2 ~ + ~y_1y_2 ~ + ~ i(x_2y_1 ~ - ~ x_1y_2)}/{{x_2}^2~ + ~{y_2}^2}

Abbildungen in der komplexen Ebene

Ebenso wie im reellen Raum kann für die komplexe Ebene eine Abbildung definiert werden. Dabei kann auf die bei reellen Abbildungen des ℝ2 gewonnenen Erkenntnisse zurückgegriffen werden.

Eine Abbildung wird erklärt durch

Z ~ right ~ W

eine Zahl in der komplexen Z-Ebene wird auf eine andere in der komplexen W-Ebene abgebildet. Als Abbildungsvorschrift dient die komplexe Funktion

z ~ right ~ f(z)

mit

w ~ := ~ f(z)

wobei z und w Zahlen innerhalb der komplexen Z- bzw. W-Ebene sind.

Die so definierte Funktion kann aus dem reellen Raum bekannte Eigenschaften besitzen, so z.B. die Mehrdeutigkeit der Abbildung und die Umkehrbarkeit.

In CGRAPH definierte Funktionen

In CGRAPH sind die wichtigsten elementaren Funktionen bereits vordefiniert. Da in einigen Fällen Mehrdeutigkeiten auftreten können, werden hier die im Programm verwendeten Definitionen angegeben.

Wenn mehrdeutige Ergebnisse möglich sind, verwendet CGRAPH den Hauptwert der verwendeten Funktion. Die Definition der entsprechenden reellen Funktionen wird hier vorausgesetzt. Das Programm greift zur Berechnung der entsprechenden komplexen Werte auf die folgenden Funktionen zurück:

Funktion Beschreibung
exp(x)reelle Exponentialfunktion zur Basis e
ln(x)reeller Logarithmus zu Basis e
sin(x)reelle Sinusfunktion
cos(x)reelle Cosinusfunktion
arctan(x)reelle Arcustangensfunktion
x^2reelle Quadratfunktion
sqrt{x}reelle Quadratwurzelfunktion
delim{|}{x}{|}reelle Betragsfunktion

Intern werden aus diesen noch die beiden reellen Hyperbelfunktionen sinh(x) und cosh(x) berechnet mit

sinh(x) ~ = ~ {e^x ~ - ~ e^{-x}}/{2}

und

cosh(x) ~ = ~ {e^x ~ + ~ e^{-x}}/{2}

Daraus folgen die angegebenen komplexen Funktionen mit

exp(z) ~ = ~ e^x ⋅ (cos(y) ~ + ~ i ⋅ sin(y))

log(z) ~ = ~ 1/2 ln(x^2 + y^2) ~ + ~  i ⋅ arctan(x/y) ~ + ~  2k pi

Die Mehrdeutigkeit der Logarithmusfunktion wird durch die Konstante k beschrieben. Sie wird innerhalb von CGRAPH zu Null angenommen, der Summand k muß daher bei Bedarf hinzugefügt werden.

Winkel- und Hyperbelfunktionen

sin(z) ~ = ~ sin(x) cosh(y) ~ + ~ i ⋅ cos(x) sinh(y)

cos(z) ~ = ~ cos(x) cosh(y) ~ - ~ i ⋅ sin(x) sinh(y)

sinh(z) ~ = ~ sinh(x) cos(y) ~ + ~ i ⋅ cosh(x) sin(y)

cosh(z) ~ = ~ cosh(x) cos(y) ~ + ~ i ⋅ sinh(x) sin(y)

tan(z) ~ = ~ {sin(2x) ~ + ~ i ⋅ sinh(2y)}/{cos(2x) ~ + ~ cosh(2y)}

tanh(z) ~ = ~ {sinh(2x) ~ + ~ i ⋅ sin(2y)}/{cosh(2x) ~ + ~ cos(2y)}

Umkehrfunktionen

Die Umkehrfunktionen können über den komplexen Logarithmus log(z) berechnet werden.

arcsin(z) ~ = ~ - i ⋅ ln(i ⋅ z ~ + ~ sqrt{1-z^2})

arccos(z) ~ = ~ - i ⋅ ln( z ~ + ~ i ⋅ sqrt{1-z^2})

arctan(z) ~ = ~ - i/2 ⋅ ln({1 ~ + ~ i ⋅ z}/{1 ~ - ~ i ⋅ z})

arcsinh(z) ~ = ~ ln(z ~ + ~ sqrt{z^2+1})

arccosh(z) ~ = ~ ln( z ~ + ~ sqrt{z^2-1})

arctanh(z) ~ = ~ 1/2 ⋅ ln({1 ~ + ~ z}/{1 ~ - ~  z})

Funktionen zur Bearbeitung komplexer Zahlen und Sonderfunktionen

CGRAPH definiert einige Funktionen, mit denen komplexe Zahlen aufgeteilt werden können oder die der Bearbeitung und Umwandlung komplexer und reeller Zahlen dienen.

abs(z) ~ = ~ sqrt{x^2 ~ + ~ y^2}

arg(z) ~ = ~ arctan(y/x) ~ + ~ pi ⋅ sgn(y) {1 ~ - ~ sgn(x)}/{2}

Re(z) ~ = ~ x ~ = ~ ℜ(z)

Im(z) ~ = ~ y ~ = ~ ℑ(z)

kart(z) ~ = ~ x ⋅ cos(y) ~ + ~ i ⋅ x ⋅ sin(y)

pol(z) ~ = ~ x^2 ~ + ~ y^2 ~ + ~ i ⋅ arg(z)

inv(z) ~ = ~ 1/z ~ = ~ {x ~ - ~ i ⋅ y}/{ x^2 ~ + ~ y^2}

konj(z) ~ = ~ x ~ - ~ i ⋅ y

Die Funktionen sigma(x), delta(x), int(x) und frac(x) werten nur den Realteil des Arguments aus. Sie liefern als Ergebnis eine Zahl, deren Imaginärteil immer Null ist.

sigm a(z) ~ = ~ delim{lbrace}{matrix{2}{3}{0 für {x<0} 1 für {x>=0}}}{~}

delt a(z) ~ = ~ delim{lbrace}{matrix{2}{3}{0 für {x<>0} 1 für {x=0}}}{~}

i nt(z) ~ = ~ delim{lbrace}{matrix{2}{3}{{delim{[}{x+1}{]}} für {x<0} {delim{[}{x}{]}} für {x>=0}}}{~}

frac(z) ~ = ~ delim{lbrace}{matrix{2}{3}{{x - delim{[}{x+1}{]}} für {x<0} {x - delim{[}{x}{]}} für {x>=0}}}{~}

Potenzfunktionen

Das Quadrat einer komplexen Zahl wird auf die Multiplikation zurückgeführt.

sqr(z) ~ = ~ x^2 ~ - ~ y^2 ~ + ~ 2ixy

Die komplexe allgemeine Potenzfunktion, die in CGRAPH durch das Symbol '^' erklärt ist, wird über die Exponentialfunktion berechnet.

a^z ~ = ~ e^{ln (a^z)} ~ = ~ e^{z ⋅ ln(a)}

Sie ist im Definitionsbereich [-𝜋,𝜋] in der komplexen Ebene stetig.

Die Quadratwurzel ist auf die Moivre-Formel zurückgeführt, da sie häufig im Definitionsbereich [𝜋,2𝜋] benötigt wird. Es gilt

sqr t(z) ~ = ~ sqrt{z} ~ = ~ sqrt{r} ~ ⋅ ~ e^{0.5}

Wenn die Wurzelfunktion im Definitionsbereich [-𝜋,𝜋] benötigt wird, so kann die allgemeine Exponentialfunktion mit

z wedge {0.5} ~ = ~  e^{0.5 ⋅ ln(z)}

verwendet werden.

Rechen­genauigkeit und Ausnahmen­behandlung

CGRAPH verwendet für Berechnungen intern ein Fließkommaformat, das eine Darstellung reeller Zahlen bis zu einem Exponenten von 101000 ermöglicht. Die Rechengenauigkeit liegt bei etwa 19 Dezimalstellen. Dieses Format kann bei Ausgaben über das die Einstellungen im Register Mathematik auf maximal 15 Nachkommastellen begrenzt werden. Eingaben können aber mit höherer Genauigkeit durchgeführt werden.

Die Berechnungen bei Zeichnungen werden in voller Genauigkeit ausgeführt. Die Graphiken werden in einer Genauigkeit dargestellt, die unterhalb der maximalen Vergrößerung liegt

Einige Funktionen wie der Sinus Hyperbolicus im Reellen oder der Sinus im Imaginären beinhalten implizit oder explizit exponentielle Berechnungen. Der maximale Definitionsbereich dieser Funktionen ist daher auf den entsprechenden Achsen auf den maximalen bzw. minimalen Exponenten 2839 beschränkt.

Fourier­transformationen

In CGRAPH können im Menü Weitere Grafiken / Eindimensionale FFT Fouriertransformationen durchgeführt werden. Die zugehörige Gleichungen für die Hintransformation vom Zeit- in den Bildbereich lautet

y_{mu} ~ = ~ T sum{nu =0}{N-1}{x_{nu} ~ ⋅ ~ e^{{-j 2 pi mu nu}/{N}}} ~ ~ mit ~ mu ~ = ~  0, 1, cdots, N-1

Die Rücktransformation wird über die Gleichung

x_{nu} ~ = ~ {1}/{NT} sum{mu =0}{N-1}{y_{mu} ~ ⋅ ~ e^{{j 2 pi mu nu}/{N}}} ~ ~ mit ~ nu ~ = ~  0, 1, cdots, N-1

berechnet, wobei die Konstante T in CGRAPH zu 1 gesetzt ist. Zur Berechnung der FFT verwendet CGRAPH einen Radix-2-Algorithmus nach Cooley-Tukey.

Die benötigten Abtastwerte werden in CGRAPH aus Funktionen gewonnen. In einem vorgegebenen Intervall der Funktion werden Stützwerte berechnet. Nun wird der erste Abtastwert wird auf 0, der letzte auf 2𝜋 verschoben. Die abgetasteten Stützwerte stellen immer eine bei Null beginnende Funktion dar.

Die berechnete FFT kann gemäß dem Abtasttheorem von Shannon nur bis zur halben Intervallbreite berechnet werden. In CGRAPH wird jedoch immer das vollständige Intervall [-𝜋,𝜋] dargestellt, das im Bereich zwischen -𝜋 und 0 die gespiegelten Anteile der FFT zwischen 0 und 𝜋 zeigt. Diese Darstellung erleichtert die Betrachtung der berechneten Fouriertransformation.

Konvergenz­untersuchungen

Die Konvergenz einer Funktion für einen vorgegebenen Startwert wird durch mehrfache Iteration untersucht. Der berechnete Funktionswert wird dabei als neuer Startwert aufgefasst und die Iteration so lange weiter ausgeführt, bis sich eine Divergenz oder Konvergenz feststellen läßt.

z_{n+1} ~ = ~ f(z_n)

CGRAPH berechnet dabei den Abstand der berechneten Zahl zn+1 zur Ausgangszahl zn und zu deren Vorgängerin zn-1. Vergrößert sich dieser Abstand, so liegt eine Divergenz vor. Andernfalls konvergiert oder alterniert die Funktion.

System­funktionen

Bei vielen mechanischen oder elektrischen Systemen sind die Größen des Systems unabhängig von dem, was an Ein- und Ausgang des Systems geschieht. Die Systemfunktion ist als Quotient von Eingangs- und Ausgangssignal definiert:

H(z) ~ := ~ {Y(z)}/{X(z)}

Wenn das Frequenzverhalten des Systems bestimmt werden soll, kann statt der komplexen Variablen z der komplexe Anteil j𝜔 gesetzt werden. Für den Amplitudengang a, die Dämpfung d und den Phasengang 𝜑 werden die folgenden Umrechnungen benutzt:

a ~ = ~ delim{|}{H(j omega)}{|}

d delim{[}{dB}{]} ~ := ~ - 20 ⋅ log_{10} delim{|}{H(j omega)}{|}

varphi ~ = ~ arg(H(j omega))

Fraktale

CGRAPH verwendet zwei unterschiedliche Abbildungs­vorschriften für Fraktale. In beiden Fällen wird eine Funktion benötigt, die einen Parameter enthält.

z_{n+1} ~ = ~ f(z_n, ~ p)

Nach jeder Iteration wird überprüft, ob das Ergebnis außerhalb der vorgegebenen Entscheidungsgrenze liegt. Wenn dies der Fall ist, wird das Ergebnis an der Stelle des Ausgangswertes z0 abgetragen. Andernfalls wird die Berechnung bis zum ebenfalls vorgegebenen Maximalwert n durchgeführt.

Bei der Berechnung von Julia-Mengen wird der Parameter p während der Interation konstant gehalten. Er muß daher vor der Erzeugung des Fraktals eingegeben werden.

Bei Mandelbrot-Mengen wird der Parameter p über alle darstellbaren Punkte des Fensters variiert, während der Anfangspunkt z0 konstant gehalten wird.

Zurück zur Übersicht

mathematische_grundlagen.txt · Zuletzt geändert: von frankbrennecke

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki