Beruflich Dokumente
Kultur Dokumente
Skriptum Mathcad
Skriptum Mathcad
Inhaltsverzeichnis:
Einleitung Dokumentfenster ..................................................................................... 1 Werkzeugfenster ..................................................................................... 2 Bereiche eines Mathcad-Dokumentes .................................................... 3 1) Definitionsgleichung ............................................................................... 4 2) Numerische Berechnungsgleichung ..................................................... 4 3) Symbolisches Rechnen 3.1) Symbolische Berechnungsgleichung ............................................... 7 3.2) Bentzung des Symbolic-Mens ................................................... 12 4) Vektoren und Matrizen .......................................................................... 14 4.1) Operatoren ..................................................................................... 17 4.2) Funktionen 4.2.1) Gre .................................................................................... 18 4.2.2) Spezielle Matrizen ................................................................. 19 4.2.3) Funktionen zum Bilden von Matrizen .................................... 20 4.2.4) Charakteristische Matrixgren ............................................ 22 4.2.5) Eigenwerte und Eigenvektoren ............................................. 23 4.2.6) Zerlegung von Matrizen ........................................................ 24 4.2.7) Sortierfunktionen ................................................................... 27 5) Schrittweise Berechnung 5.1) Eine Variable .................................................................................. 28 5.2) Mehrere Variable ........................................................................... 29 5.3) Vektor ............................................................................................ 30 6) Funktionen 6.1) Mathcad-Funktionen 6.1.1) Transzendente Funktionen ................................................... 6.1.2) Funktionen mit komplexen Zahlen ........................................ 6.1.3) Stckweise kontinuierliche Funktionen ................................. 6.1.4) Rundungsfunktionen ............................................................. 6.1.5) Funktionen der Zahlentheorie und Kombinatorik .................. 6.1.6) Diskrete Transformationsfunktionen ..................................... 6.1.7) Interpolations- und Vorhersage-Funktionen ......................... 6.1.8) Regression ............................................................................ 6.1.9) Zugriff auf Textdateien .......................................................... 6.1.10) Weitere Funktionen ............................................................. 32 33 33 34 34 35 36 37 38 39
7) Programmierung .................................................................................... 41 7.1) Bedingungsanweisungen ............................................................... 42 7.2) Schleifenanweisungen 7.2.1) While-Schleife ....................................................................... 44 7.2.2) For-Schleife ........................................................................... 47 7.3) Rekursive Programmierung ............................................................ 49 7.4) Programmablauf-Kontrolle 7.4.1) Vorzeitige Beendigung eines Schleifendurchlaufes .............. 50 7.4.2) Vorzeitige Beendigung einer Schleife ................................... 51 7.4.3) Vorzeitige Beendigung eines Programms ............................. 52 7.4.4) Fehlerbehandlung ................................................................. 53 8) Gleichungslsung 8.1) Lineare Gleichungen 8.1.1) Mittels invertierter Koeffizientenmatrix .................................. 56 8.1.2) Mittels der Funktion lsolve .................................................... 56 8.2) Nichtlineare Gleichungen 8.2.1) root-Funktion ........................................................................ 57 8.2.2) polyroots-Funktion ............................................................... 60 8.2.3) SOLVE-Block ........................................................................ 61 9) Differentialgleichungen 9.1) Gewhnliche Differentialgleichungen 9.1.1) Lsung einer DGL mittels SOLVE-Block .............................. 64 9.1.2) Differentialgleichungs-Lsungsfunktionen 9.1.2.1) Anfangswertprobleme 9.1.2.1.1) Runge-Kutta-Methode 4. Ordnung ......................... 66 9.1.2.1.2) Spezialisierte Differentialgleichungslser ............... 71 9.1.2.2) Randwertprobleme 9.1.2.2.1) Vorgegebene Randwerte an den Bereichsenden ... 73 9.1.2.2.2) Vorgegebene Werte an den Bereichsenden und in einem Zwischenpunkt ................................. 75 9.2) Partielle Differentialgleichungen 9.2.1) Alle Randwerte = 0.................................. .............................. 78 9.2.2) Randwerte nicht gleich gro ................................................. 80 10) Zweidimensionale Diagramme 10.1) x-y-Diagramm ............................................................................... 82 Zoomen eines Diagrammbereiches .............................................. 86 Auslesen von Plot-Koordinaten ..................................................... 87 10.2) Polar-Diagramm ........................................................................... 88 11) Dreidimensionale Diagramme Erstellen mit dem 3D-Plot-Helfer ........................................................... 91 11.1) Oberflchen-Diagramm ................................................................ 96 11.2) Kontur-Diagramm ......................................................................... 98 11.3) 3D-Balken-Diagramm ................................................................... 99 11.4) 3D-Punkthaufen-Diagramm ........................................................ 100 11.5) Vektorfeld-Diagramm .................................................................. 101
-1-
Definition eines neuen Dokumentes Laden einer bestehenden Datei Sichern eines Mathcad-Dokumentes Schlieen eines Dokumentes Dateityp eines Mathcad-Dokumentes
-2-
-3-
Mathcad-Dokument
Berechnungsbereiche Definitionsgleichung := Numerische Berechnungsgleichung = Symbolische Berechnungsgleichung Bedingungsgleichung in Lsungs-blcken = > < Lokale Definitionsgleichung in ProgrammBereichen
3D-Balkendiagramme
-4-
1) Definitionsgleichung Globale
Gilt fr das gesamte Dokument
Definition
Lokale
Gilt ab der Definition bis zur nchsten Definition der gleichen Gre
Globale Definition
def ausdr
Arithmetischer Ausdruck von Konstanten und anderen globalen Gren
Lokale Definition
def := ausdr
von definierten Gren und Funktionen von definierten Gren oder von Parametern einer Funktion oder
Bereichsausdruck Standardeinstellung ORIGIN 0 Standardeinstellung ORIGIN 0 ai,k:= ausdr var := awert,nwert;ewert fun(par1,par2,...) := ausdr
-5-
-6-
-7-
3) Symbolisches Rechnen
Mathcad enthlt einen Teil des Software-Pakets MAPLE, der fr das symbolische Rechnen verwendet wird. Der symbolische Prozessor wird beim Start von Mathcad 2001 Professional automatisch geladen.
3.1) Symbolische Berechnungsgleichung ausdr Ergebnis ausdr Schlsselwort Ergebnis <Strg>. <Strg>< >.
-8-
Anpassung der symbolischen Berechnung durch Schlsselwrter: Schlsselwort complex float,m simplify Funktion
Symbolische Berechnung in der komplexen Zahlenebene, Ergebnis ist in der Form a+ib Ergebnis ist Fliekommawert mit m Ziffern 1m250 Arithmetische Vereinfachung durch Krzen gemeinsamer Faktoren und Verwendung von Identitten der trigoniometrischen und inversen Funktionen, zustzlich werden alle Unbekannten als reellwertig angenommen, oder zustzlich werden alle Unbekannten als reellwertig im Bereich zwischen den reellen Zahlen a und b angenommen, oder zustzlich erfolgt die Vereinfachung nur unter der Verwendung der Identitten
sin( x) 2 + cos( x) 2 = 1
expand[,ausdr] factor[,ausdr]
und
cosh( x) 2 sinh( x) 2 = 1
Entwickeln aller Produkte und Potenzen von Summen in einen Ausdruck auer fr den Subausdruck ausdr Faktorisierung in ein Produkt, wenn mglich, unter Bercksichtigung von ausdr als eine einzelne Gre oder mehrere Gren, getrennt durch Kommas Lsung einer Gleichung fr die Variable var, oder eines Gleichungssystems fr die Variablen im Vektor var Zusammenfassung gleicher Ausdrcke im Hinblick auf die Variablen oder Unterausdrcke var1 bis varn Ermittlung der Koeffizienten eines Ausdrucks, wenn dieser als Polynom in der Variablen oder im Unterausdruck var dargestellt wird Ersetzen der Variablen var1 durch die Variable oder den Ausdruck var2 (<Strg>+ fr fettgedrucktes =) den Punkt z mit der Ordnung m Standardeinstellung: z = 0 und m = 6
substitute, var1=var2
-9-
Funktion
Partialbruchzerlegung nach der im Nenner des Ausdrucks stehenden Variablen var Fourier-Transformation eines Ausdruckes bezglich der Variablen var in eine Funktion der Variablen
+
f (t ) e
i t
dt
invfourier,var
Inverse Fourier-Transformation eines Ausdruckes bezglich der Variablen var in eine Funktion der Variablen t
1 2
laplace,var
F ( ) e
i t
Laplace-Transformation eines Ausdruckes bezglich der Variablen var in eine Funktion der Variablen s
+ 0
f (t ) e
s t
dt
invlaplace,var
Inverse Laplace-Transformation eines Ausdruckes bezglich der Variablen var in eine Funktion der Variablen t + i
1 F ( s ) e s t ds 2 i
+
ztrans,var
Z-Transformation eines Ausdruckes bezglich der Variablen var in eine Funktion der Variablen z
n =0
f ( n) z n
invztrans,var
Inverse Z-Transformation eines Ausdruckes bezglich der Variablen var in eine Funktion der Variablen n in Form eines Konturintegrals um den Nullpunkt
2 i C
n 1 F ( z ) z dz
- 10 -
Schlsselwort assume,beding
Funktion
Auswertung eines Ausdruckes unter Festlegen einer Nebenbedingung beding fr eine oder mehrere Variablen Unbekannten seien reellwertig
assume,var=real Auswertung eines Ausdruckes unter der Annahme alle assume,var= RealRange(a,b)
Auswertung eines Ausdruckes unter der Annahme alle Unbekannten seien reellwertig im Bereich der reellen Zahlen a und b
- 11 -
- 12 -
Evaluate Simplify Expand Factor Collect Polynomial Coefficients Variable Matrix Transform Evaluation Style...
- 13 -
- 14 -
oder
b) Verwendung von Bereichsvariablen c) Einzelwertzuweisung an die indizierte Vektor- oder MatrizenVariable d) Einlesen einer Werte-Datei, die Datei wird bei jeder Neuberechnung des Arbeitsblattes neu eingelesen: Men Insert Component File Read or Write Read from a file ...
Auf den Platzhalter erfolgt die Eingabe des Namens der Vektor/Matrix-Variablen. Werte-Trennzeichen in einer Zeile der Datei: <Tab>
- 15 -
e) Eingabe in eine Tabelle: Men Insert Component Input Table Finish Auf den Platzhalter Eingabe der Vektor/Matrix-Variablen, in die Tabelle Eingabe der Werte f) Importieren in eine Tabelle aus einer Datei, die Datei wird nur bei Wahl der Option Import eingelesen: Wie e) aber statt Werteeingabe Tabelle auswhlen durch Anklicken rechte Maustaste Import ...
- 16 -
- 17 -
4.1) Operatoren
Operation Multiplikation mit Skalar Skalarprodukt zweier Vektoren Matrix-Multiplikation Vektor/Matrix-Multiplikation Division durch Skalar Addition eines Skalars Vektor- und Matrix-Addition Subtraktion eines Skalars Vektor- und Matrix-Subtraktion Negation von Vektor und Matrix Potenz einer quadrat. Matrix, Inverse (n=-1) Betrag eines Vektors Determinante einer quadratischen Matrix Transponierte Matrix Kreuzprodukt zweier Dreielement-Vektoren Konjugiert komplexe Matrix (elementweise) Summe aller Vektorelemente Element per Element-Operation (Vectorize) n-ter Spaltenvektor der Matrix n-tes Vektorelement (m,n)-tes Matrixelement Bild Taste * * * * / + + ^ | | <Strg>1 <Strg>8 " <Strg>4 <Strg><Strg>6 [ [
Mn
|v| |M|
AT uxv A
v
r A A<n> vn Am,n
- 18 -
- 19 -
identity(n) Einheitsmatrix I Re(A) Im(A) diag(v) Feld der Realteile des Feldes A Feld der Imaginrteile des Feldes A Diagonalmatrix mit den Vektorelementen v
- 20 -
stack(A,B,C,...)
submatrix(A,iz,jz,is,js) Submatrix bestehend aus den Elementen der Zeilen iz bis jz und der Spalten von is bis js der Matrix A iz > jz ... umgekehrte Zeilenanordnung is > js ... umgekehrte Spaltenanordnung matrix(m,n,f) Matrix, bei der das i,j-te Element den Funktionswert f(i,j) enthlt i = 0,1, ... m-1 j = 0,1, ... n-1 f mu bereits davor definiert sein Vektor dreier eingebetteter Matrizen, die die x-, y- und z-Koordinaten einer parametrischen Oberflche definiert durch F darstellen. F ist eine dreielementige Vektorfunktion zweier Variablen. Vektor dreier eingebetteter Vektoren, die die x-, y- und z-Koordinaten einer Raumkurve definiert durch F darstellen. F ist eine dreielementige Vektorfunktion einer Variablen.
CreateSpace(F,[[t0], [t1],[tgrid],[fmap]])
- 21 -
- 22 -
norm1(M) L1-Norm der quadratischen Matrix M norm2(M) L2-Norm der quadratischen Matrix M norme(M) Euklidische Norm der quadratischen Matrix M normi(M) Zeilensummen-Norm der quadratischen Matrix M
cond1(M) Kondition basierend auf der L1-Norm cond2(M) Kondition basierend auf der L2-Norm conde(M) Kondition basierend auf der euklidischen Norm condi(M) Kondition basierend auf der Zeilensummennorm
- 23 -
eigenvec(M,z) normalisierter Eigenvektor fr Eigenwert z von M eigenvecs(M) Matrix der normalisierten Eigenvektoren von M, n-ter Spaltenvektor ist Eigenvektor des n-ten Eigenwertes nach eigenvals(M) Vektor v der Eigenwerte des generalisierten Eigenwertproblems Mx = viNx M,N ... quadrat., gleichgroe, reellw. Matrizen x ......... zum Eigenwert vi gehrender Eigenvektor
genvals(M,N)
- 24 -
qr(A)
lu(M)
svd(A)
svds(A)
- 25 -
- 26 -
- 27 -
4.2.7) Sortier-Funktionen
sort(v) csort(A,n) Sortiert die Elemente des Vektors v in aufsteigender Reihenfolge Sortiert die Zeilen der Matrix A entsprechend der Elemente der Spalte n in aufsteigender Reihenfolge Sortiert die Spalten der Matrix A entsprechend der Elemente der Zeile n in aufsteigender Reihenfolge Kehrt die Elementanordnung des Vektors v um Kehrt die Zeilenanordnung der Matrix A um
rsort(A,n)
reverse(v) reverse(A)
- 28 -
5) Schrittweise Berechnung (seeded iteration) 5.1) Eine Variable Beispiel: Nherungsweise Lsung einer nichtlinearen Gleichung, wobei ein verbesserter Nherungswert aus dem vorhergehenden berechnet wird
- 29 -
5.2) Mehrere Variable Beispiel: Bilanzierung einer Bodenkolonne &f &g . . N N X= & Y= & N f,0 Ng,0 N f ,0 N g ,0
Yi+1 X i+1 . Ni+1
x= X 1+ X
y= Y 1+ Y
yi + 1 = H xi
& & N = (X i X i + 1 ) N i+1 f,0
Yi
Xi
- 30 -
- 31 -
5.3 Vektor Beispiel: Mehrfache Transformation eines Vektors, A ist die Transformationsmatrix
- 32 -
Yi
Xi
Yi + 1 = H Xi
linearisiert
& N i + 1 = -H X + Y i i & N
g,0
- 32 -
- 33 -
6.1.2) Funktionen mit komplexen Zahlen x,y ... rellwertige Ausdrcke z ...... komplexwertiger Ausdruck Re(z) Im(z) arg(z) csgn(z) Realteil von z Imaginrteil von z Argument von z, - arg(z) 0 ....... fr z = 0 1 ....... fr Re(z)>0 oder (Re(z)=0 und Im(z)>0) -1 ...... ansonsten 1 ....... fr z = 0 z/|z| ... ansonsten
signum(z)
6.1.3) Stckweise kontinuierliche Funktionen if(bed,tw,fw) tw .... wenn bed 0 (true) fw .... wenn bed = 0 (false) bed: w = z x>y wz x<y Kroneckersche Deltafunktion 1 ...... fr m = n 0 ...... ansonsten Antisymetrischer Tensor vom Rang 3 0 .... fr zwei gleiche Werte i, j, k 1 .... fr gerade Permutationen -1 ... fr ungerade Permutationen i, j, k ... zwischen ORIGIN und ORIGIN+2 Heaviside Sprungfunktion 0 .... fr x < 0 1 .... fr x 0 0 .... fr x = 0 1 .... fr x > 0 -1 ... fr x < 0
xy xy
(m,n)
(i,j,k)
(x)
sign(x)
- 34 -
6.1.4) Rundungsfunktionen ceil(x) floor(x) round(x[,n]) Kleinste Integerzahl x Grte Integerzahl x Rundung von x auf n Dezimalstellen, n < 0 .... Rundung links vom Dezimalpunkt, n fehlt ... Rundung auf nchste Integerzahl Abschneiden der Nachkommastellen von x
trunc(x)
6.1.5) Funktionen der Zahlentheorie und Kombinatorik combin(n,k) permut(n,k) lcm(A,B,C,...) gcd(A,B,C,...) mod(x,y) Anzahl der Kombinationen von n Objekten in k Elementen; k,n ganze Zahlen 0 k n Anzahl der Permutationen von n Objekten in k Elementen; k,n ganze Zahlen 0 k n Kleinstes gemeinsames Vielfaches Grter gemeinsamer Nenner von A, B, C,.. Divisionsrest nach x/y
- 35 -
6.1.6) Diskrete Transformationsfunktionen cfft(A) Fast-Fourier-Transformation, A ... komplexwertiger Vektor oder Matrix Ergebnis ist ein Feld gleicher Gre wie A Inverse Fast-Fourier-Transformation, A ... komplexwertiger Vektor oder Matrix Ergebnis ist ein Feld gleicher Gre wie A Fast-Fourier-Transformation, v ... rellwertiger Vektor mit 2m Elementen, m>2 Inverse Fast-Fourier-Transformation, v ... Vektor mit 1+2n-1 Elementen Ergebnis ist ein Vektor mit 2nElementen, n>2 Fast-Fourier-Transformation identisch mit cfft, jedoch mit unterschiedlicher Normierung und unterschiedlicher Vorzeichen-Vereinbarung Inverse Fast-Fourier-Transformation zu CFFT, A ... komplexwertiger Vektor oder Matrix Ergebnis ist ein Feld gleicher Gre wie A Fast-Fourier-Transformation identisch mit fft, jedoch mit unterschiedlicher Normierung und unterschiedlicher Vorzeichen-Vereinbarung Inverse Fast-Fourier-Transformation zu FFT, v ... Vektor mit 1+2n-1 Elementen Ergebnis ist ein Vektor mit 2nElementen, n>2 Wavelet-Transformation, v ... rellwertiger Vektor mit 2m Elementen Ergebnis ist ein Vektor gleicher Gre Inverse Wavelet-Transformation, v ... rellwertiger Vektor mit 2m Elementen Ergebnis ist ein Vektor gleicher Gre
icfft(A)
fft(v) ifft(v)
CFFT(A)
ICFFT(A)
FFT(v)
IFFT(v)
wave(v)
iwave(v)
- 36 -
- 37 -
6.1.8) Regression
vx .......... Vektor der Abszissenwerte der Sttzpunkte vy .......... Vektor der Ordinatenwerte der Sttzpunkte span ...... maximaler Ordinatenabstand der Fitkurve von den Datenpunkten vs .......... Vektor der Polynomkoeffizienten x ............ Abszisse des zu interpolierenden Punktes Mxy ....... nx2-Matrix der Abszissen- und Ordinatenwerte der Sttzpunkte vz .......... n-Element-Vektor der z-Werte der Sttzpunkte v ............ Vektor des zu interpolierenden Punktes in der xy-Ebene a,b,c ....... Fitparameter der spezialisierten Regression F ............ Vektor von Fitfunktionen vg .......... Vektor von Startwerten fr die Fitparameter a,b,c der spezialisierten Regression, bzw. die Fitparameter in F Lineare Regression Ordinatenabschnitt der Fitgeraden Neigung der Fitgeraden Ordinatenabschnitt und Neigung Standard-Fehlerabweichung Ordinatenabschnitt und Neigung fr Median-Median-Regression Polynom-Regression einer Kurve vs fr Polynom n-ter Ordnung vs fr Satz von Polynomen 2. Ordnung y fr x Polynom-Regression einer Oberflche vs fr Polynom n-ter Ordnung vs fr Satz von Polynomen 2. Ordnung z fr v
- 38 -
Spezialisierte Regression Vektor der Fitparameter a,b,c der Fitfunktion aexp(bx) + c Vektor der Fitparameter a,b,c der Fitfunktion a/[1+bexp(-cx)] Vektor der Fitparameter a,b,c der Fitfunktion aln(x)b + c Vektor der Fitparameter a,b,c der Fitfunktion axb + c Vektor der Fitparameter a,b,c der Fitfunktion asin(x + b) + c Generalisierte Regression Vektor der Koeffizienten fr die Linearkombinationen der Fi Vektor der Fitparameter in F
linfit(vx,vy,F) genfit(vx,vy,vg,F)
WRITEPRN(datei)
APPENDPRN(datei)
- 39 -
- 40 -
definierte Ausdrcke
formale Funktionsnamen
fun(f1,f2,....,v1,v2,....) = Ergebnis
oder
erg := fun(f1,f2,....,v1,v2,....)
- 41 -
7) Programmierung
- 42 -
7.1) Bedingungsanweisungen
Funktionsdefinition
f( x )
f( x )
f( x )
if
f( x )
0 if
x >2
f( x )
0 if
x >2
otherwise
f( x )
0 if 4 x
x >2
2
otherwise
- 43 -
- 44 -
while
while vj Grenzwert j
while vj Grenzwert j
while vj Grenzwert j j 1
Anfgen einer weiteren Programmzeile: Bei selektiertem gesamten unteren Ausdruck klick "Add Line"
while vj Grenzwert j j 1
- 45 -
- 46 -
- 47 -
7.2.2) For-Schleife
Klick "For"
for
for i
for i 1 .. n
for i 1 .. n s
for i 1 .. n s s i
- 48 -
- 49 -
- 50 -
Klick "if"
if
continue if
- 51 -
Klick "if"
if
break if
- 52 -
Klick "if"
if
return
if
- 53 -
on error
on error anweisung
if
error(Fehlertext) if
- 54 -
- 55 -
- 56 -
x := lsolve(M,a)
- 57 -
Variablendefinition fr Ergebnis var := Startwert erg := root(ausdr,var) erg = Ergebnis erg := root(ausdr,var,a,b) erg = Ergebnis
ausdr .... Ausdruck, der u.a. von der Variablen var abhngt und der zu Null werden soll. var ......... Variable fr die die Nullstelle von ausdr gesucht werden soll. a, b ........ Definierte Ausdrcke fr die Grenzen des Bereiches in dem die Nullstelle liegen soll. Damit eine Nullstelle gefunden wird, mssen die Werte von ausdr fr a und b unterschiedliches Vorzeichen haben. Funktionsdefinition fr mehrere Ergebnisse: Startwert-Vorgabe fun([var,]v1,v2,...) := root(ausdr,var) Variable, die in ausdr enthalten sind Wenn vorhanden = Startwert, ansonsten vorher lokale Startwertdefinition Beliebiger Funktionsname
- 58 -
Lsungsbereich-Vorgabe fun(v1,v2,...) := root(ausdr,var,a,b) Variable, die in ausdr und/oder a und/oder b enthalten sind Beliebiger Funktionsname fun kann in weiteren Ausdrcken verwendet werden, die Parameter mssen definiert sein: Startwert-Vorgabe V1 := ausdr1 V2 := ausdr2 ..... fun(Startwert,V1,V2,...) = Ergebnis erg := fun(Startwert,V1,V2,...) Variable := ausdr{fun(Startwert,V1,V2,...)} Lsungsbereich-Vorgabe V1 := ausdr1 V2 := ausdr2 ..... fun(V1,V2,...) = Ergebnis erg := fun(V1,V2,...) Variable := ausdr{fun(V1,V2,...)} Die Bereichsgrenzen a und b mssen vor Verwendung der Funktion fun durch die Gren V1,V2, ... definiert sein! Die Root-Funktion liefert auch bei mehreren Nullstellen immer nur ein Ergebnis. Dabei hngt die gefundene Nullstelle entweder von der Startwert- oder der Lsungsbereich-Vorgabe ab. Der iterative Lsungsprozess wird beendigt, wenn die Differenz zweier aufeinanderfolgende Nherungswerte fr var kleiner als TOL ist.
- 59 -
- 60 -
8.2.1) polyroots-Funktion Suche aller Nullstellen eines Polynoms fr eine Variable mit numerischem Ergebnis. Polynom: Koeffizienten-Vektor: Nullstellen-Vektor:
V = (a0 , a1 ,K, an 1 , an )T
N := polyroots(V)
Pn = an x n + an 1 x n 1 + K + a1 x + a0
- 61 -
8.2.3) SOLVE-Block Lsung von Systemen von Gleichungen und Ungleichungen mit mehreren Variablen. Ergebnis numerisch und symbolisch. var1 := Startw1 var2 := Startw2 ..... fr numer. Ergebnis Given ausdr1 = ausdr2 ausdr ausdr1 > ausdr2 ausdr1 ausdr2 ausdr1 < ausdr2 ausdr1 ausdr2 Symbolisches Ergebnis Find(var1,var2,...) Ergebnis Zahlenergebnis Find(var1,var2,...) = Ergebnis Minerr(var1,var2,...) = Ergebnis Minimize(f,var1,var2,...) = Ergebnis Maximize(f,var1,var2,...) = Ergebnis erg1 erg2 Genau entspr. TOL Beste Nherung Minimiert die Funktion f Maximiert die Funktion f
erg1 = Ergebnis1 erg2 = Ergebnis2 Vektordefinition fr Ergebnis am Beispiel von Find erg := Find(var1,var2,...) erg = Ergebnis-Vektor
- 62 -
Funktionsdefinition fr Ergebnis am Beispiel von Find fun([var1,var2,...]va,vb,...) := Find(var1,var2,...) Variable, die in den Gleichungen enthalten sind Wenn vorhanden = Startwerte, sonst lokale Startwertdefinition fun([Stw1,Stw2,...]defa,defb,...) = Ergebnis-Vektor Toleranzen: TOL ..... Konvergenz-Toleranz: Das Ergebnis wird zurckgegeben, wenn die Schtzwerte fr die Variablen var in zwei aufeinanderfolgenden Iterationen weniger als TOL differieren. CTOL ... Bedingungs-Toleranz: Gibt an , wie genau die Bedingungsgleichungen erfllt sein mssen.
- 63 -
- 64 -
9) Differentialgleichungen 9.1) Gewhnliche Differentialgleichungen 9.1.1) Lsung einer DGL mittels SOLVE Block
Mittels Solve Block knnen gewhnliche lineare und nichtlineare Differentialgleichungen beliebiger Ordnung als Anfangswertproblem oder als Randwertproblem gelst werden: Given ausdr1 = ausdr2 Differentialgleichung der Ordnung n randw1 = Wert1 1. Randbedingung : randwn = Wertn n-te Randbedingung erg := Odesolve(x,xm[,m]) ausdr ...... Ausdrcke, die die unabhngige Variable, die abhngige Variable und deren Ableitungen enthalten. Die abhngige Variable und deren Ableitungen mssen immer als Funktion der unabhngigen Variablen explizit angefhrt werden. Die hchste (n-te) Ableitung darf nur linear vorkommen. Alle anderen Ableitungen und die abhngige Variable drfen nichtlinear enthalten sein. Innerhalb des Solve Blocks drfen die Ableitungen auch durch Striche gekennzeichnet werden, z.B. y'(x), u'''(t) (Eingabe durch <Strg><F7>) randw ..... Abhngige Variable oder deren i-te Ableitung an einer der beiden Randstellen. Es sind nur einfache und nicht gekoppelte Randbedingungen mglich, z.B. y(0) = Wert, u''(tm) = Wert. Es mu mindestens eine Anfangsbedingung, d.h. ein Wert am Beginn des Lsungsintervalls, angegeben werden. Wert ....... Definierter Ausdruck fr den Randwert erg .......... Lsungsfunktion der unabhngigen Variablen x x ............. Unabhngige Variable, fr die die Differentialgleichung gelst werden soll xm ........... Endpunkt des Lsungsintervalls m ............ Anzahl der Sttzpunkte in denen die Lsung berechnet wird.
- 65 -
- 66 -
9.1.2) Differentialgleichungs-Lsungsfunktionen
9.1.2.1) Anfangswertprobleme 9.1.2.1.1) Runge-Kutta-Methode 4. Ordnung
- 67 -
- 68 -
- 69 -
(t ) = x0 (t ) x1 (t ) x0 (t ) 2 + x1 (t ) 2 x0 (t ) x0
1 1 0 0 2 1 2 1
[ x (t ) = x (t ) + x (t ) [x (t )
] + x (t ) ]x (t )
x0 (0) = 0
x1 (0) = 1
- 70 -
u( x ) = 2 ( x )
u(0) = 1,5
u(0) = 1,5
( x ) = 4 ( x ) 2 u( x )
(0) = 1
(0) = 1
- 71 -
Z := Bulstoer(y,xo,xm,m,D)
Fr stetige Lsungen mit etwas hherer Genauigkeit als die Runge-Kutta-Methode. Runge-Kutta-Methode mit variabler Schrittweite:
Z := Rkadapt(y,xo,xm,m,D)
Fr Lsungsfunktionen, die im Lsungsbereich stark unterschiedliche Gradienten aufweisen. Obwohl die Lsungen an Sttzstellen mit ungleichen Abstnden berechnet werden, erfolgt die Rckgabe der Lsungswerte fr konstante Abszissenabstnde. Lsungsmethoden fr "steife" Systeme:
Z := Stiffb(y,xo,xm,m,D,J) Z := Stiffr(y,xo,xm,m,D,J)
Bulirsch-Stoer Rosenbrock
J(x,y) ..... Matrixfunktion mit n(n+1) Elementen, die ersteSpalte enthlt die Ableitungen D , x
die restliche nn-Matrix enthlt die JakobiMatrix D , z.B.:
yk x y1 D = 2 y1 y0
x y1 0 J(x,y) = 0 2 y1 2 y0
- 72 -
Methoden, die Lsungen fr weniger Punkte liefern, als Sttzstellen vorhanden sind:
kmax .....
save ......
Mit diesen Methoden kann die Lsungsmatrix Z klein gehalten werden, bzw. die Rckgabe kann auf die Lsung nur im Endpunkt beschrnkt werden.
- 73 -
9.1.2.2) Randwertprobleme 9.1.2.2.1) Vorgegebene Randwerte an den Bereichsenden Das Randwertproblem wird auf ein Anfangswertproblem zurckgefhrt. Die fehlenden Anfangswerte an der Stelle xo werden aus den gegebenen Randwerten an der Stelle xm zurckgerechnet:
s(xm,y) .... Vektorfunktion fr die Differenz der berechneten Funktionswerte y und der
gegebenen Werte im Randpunkt xm
- 74 -
- 75 -
9.1.2.2.2) Vorgegebene Werte an den Bereichsenden und in einem Zwischenpunkt Die Lsungsfunktion wird gleichzeitig von beiden Bereichsenden her entwickelt. Dies erfolgt iterativ so lange bis die vorgegebenen Bedingungen im Zwischenpunkt xi erfllt werden. Danach steht der vollstndige Satz von Anfangsbedingungen in xo und xm fr einen der vorhandenen Gleichungslser zur Verfgung:
- 76 -
Mit der Funktion "bvalfit" lassen sich auch Probleme lsen, bei denen im Lsungsbereich eine Unstetigkeitsstelle vorhanden ist: a) Berechnung der fehlenden Anfangsbedingungen in den Randpunkten:
- 77 -
- 78 -
2u x
2
2u y
2
=0
2u x
2
2u y
2
= ( x, y)
a j , k u j +1, k + b j , k u j 1, k + c j , k u j , k +1 + d j , k u j , k 1 + e j , k u j , k = f j , k
9.2.1) Alle Randwerte = 0
- 79 -
- 80 -
a ............. Quadratische Matrix der Koeffizienten a j ,k b ............. Quadratische Matrix der Koeffizienten b j ,k c .............. Quadratische Matrix der Koeffizienten c j ,k d ............. Quadratische Matrix der Koeffizienten d j ,k e .............. Quadratische Matrix der Koeffizienten e j ,k f .............. Quadratische Matrix der Quellterme f j ,k v ............. Quadratische Matrix der Randwerte und der
Startwerte im Inneren des Bereiches rjac ......... Spektralradius der Jakobi-Iteration, 0 > rjac 1 kontrolliert die Konvergenz des Relaxationsalgorithmus und ist problemabhngig
- 81 -
- 82 -
10) Zweidimensionale Diagramme 10.1) x-y-Diagramm Erstellen: Cursorkreuz fr linke obere Ecke des
Diagrammbereiches setzen und Taste @ oder Menleiste Insert ... Graph ... X-Y Plot oder Math Toolbar ... Graph Toolbar ...
Variable Variable
- 83 -
- 84 -
- 85 -
- 86 -
Diagramm selektieren: mit Cursor im Diagrammbereich klicken Menleiste ... Format ... Graph ... Zoom... oder Math Toolbar ... Graph Toolbar ... Zoom Es erscheint die Zoom-Dialogbox, die, wenn ntig, anders positioniert werden kann Mit gedrckter linker Maustaste den gewnschten Rechteckausschnitt ziehen Die Ausschnittkoordinaten erscheinen in der Zoom-Dialogbox Den "Zoom"-Knopf in der Dialogbox anklicken, es erscheint der vergrerte Diagrammausschnitt Mit dem "OK"-Knopf die Vergrerung fixieren
- 87 -
Diagramm selektieren: mit Cursor im Diagrammbereich klicken Menleiste ... Format ... Graph ... Trace... oder Math Toolbar ... Graph Toolbar ... Trace Es erscheint die Trace-Dialogbox, die, wenn ntig, anders positioniert werden kann Mit linker Maustaste in das Diagramm klicken Es erscheint ein Achsenkreuz und die zugehrigen Koordinatenwerte in der Trace-Dialogbox Mit gedrckter linker Maustaste kann das Achsenkreuz verschoben werden Wenn Track Data Points selektiert ist, springt das Achsenkreuz von Kurvenpunkt zu Kurvenpunkt ( Feineinstellung mit linker bzw. rechter Cursortaste) Wenn Track Data Points nicht selektiert ist, kann mit dem Achsenkreuz jeder beliebige Punkt im Diagramm angewhlt weden Mit Copy X und Copy Y der Trace-Dialogbox knnen die Xbzw. Y-Koordinaten in die Zwischenablage ausgelesen werden
- 88 -
- 89 -
- 90 -
- 91 -
- 92 -
3-Spalten-Matrix mit den x-, y- und z-Werten oder Vektoren X,Y,Z Die Verdrehung und Neigung des Achsenkreuzes bzw. des Diagramms kann auer mit dem Formatiermen General (siehe Formatieren) direkt mit der Maus durchgefhrt werden: Mit dem Mauszeiger an einer Stelle im inneren Diagrammbereich und gedrckter linker Maustaste Ziehen in beliebige Richtung.
- 93 -
- 94 -
- 95 -
- 96 -
Surface Plot 3-Spalten-Matrix mit den x-, y- und z-Werten oder Vektoren X,Y,Z
Graph Toolbar
- 97 -
- 98 -
- 99 -
- 100 -
- 101 -
- 102 -