Einführung ins symbolische Rechnen
- Bietet Funktionen zur Lösung, Darstellung und Umformung von symbolischen Gleichungen.
- Analytische Operationen wie z.B. Differenzierung, Integration oder Transformation können automatisch durchgeführt werden.
Definition von symbolischen Variablen
- Deklaration erfolgt über die Befehle
sym
undsyms
. - Es ist möglich, einzelne Werte symbolisch zu speichern.
Aufgabe
Was ist der Unterschied zwischen x=2/3
und x=sym(2/3)
?
- Mehrere Variablen sind wie folgt zu deklarieren:
- Nach der Definition werden die Variablen
a
,b
undc
als symbolische Variablen behandelt.
- Mit dem Befehl
whos
werden alle definierten Variablen angezeigt. Es besteht die Möglichkeit mitsyms
nur symbolische Variablen anzeigen zu lassen
Definition von symbolischen Ausdrücken
- Nach dem die einzelne Variablen definiert sind, können symbolische Ausdrücke in einer neuen Variable definiert werden
- Ein Ausdruck kann auch mehrere symbolische Größen beinhalten
- Weitere symbolische Ausdrücke können als kombination der definierten Ausdrücke berechnet werden
oder
Aufgabe
Definieren und vereinfachen Sie den folgenden Term
mit
Lösung
Lösen von symbolischen Gleichungen
- Symbolische Ausrücke werden durch das
==
gleichgesetzt.
- Gleichungen können in einer Variable gespeichert werden:
Beispiel
Lösen Sie die folgende Gleichung mit MATLAB:
- Verwenden der
solve
-Funktion:
- Alternativ: mit der Definition von Ausdruck
A1
und GleichungG1
Aufgabe
Lösen Sie die folgende Gleichung:
Aufgabe
Lösen Sie die folgenden Gleichung:
Beispiel
Geben Sie die reellen Lösungen der vorangegangen Gleichung an.
Verwenden des optimalen Parameters Real
der solve
-Funktion:
Verwenden der assume
-Funktion:
Aufgabe
Welche komplexe Zahl weißt die folgende Eigenschaft auf:
Lösung
Aufgabe
Lösen Sie die folgende Gleichung:
Lösung
>> syms x
>> solve(cos(x) == x, x)
Warning: Unable to solve symbolically. Returning a numeric solution
using vpasolve.
> In solve (line 304)
ans =
0.73908513321516064165531208767387
Rekursive Lösung:
- Besitzt eine Gleichung mehrere Lösungen, so bekommt man einen Ergebnissvektor
- Sind mehrere symbolische Variablen vorhanden, so wird nach der gewünschten umgestellt
Beispiel
Lösen die das folgende Gleichungssystem:
Syntax der solve
-Funktion: [Lösung1, Lösung2,...]=solve([Gleichung1,Gleichung1,...],[Variable1,Variable2,...])
Aufgabe
Lösen Sie das lineare Gleichungssystem
Definieren Sie eine Ergebnisvariable. Welches Konstrukt sehen Sie im Variablen-Manager?
Aufgabe
Untersuchen Sie das Verhalten der Symbolic Toolbox, wenn ein lineares Gleichungssystem keine oder unendliche viele Lösungen besitzt. Verwenden Sie die folgenden Gleichungen:
Lösung
keine Lösungen:
>> syms x,y
>> solve([10 5; -4 -2] * [x;y] == [15;8], [x, y])
ans =
struct with fields:
x: [0×1 sym]
y: [0×1 sym]
unendlich viele Lösungen:
Termmanipulation
Termmanipulation
-
Abgesehen vom Umstellen können weitere Werkzeuge sehr nützlich sein:
- Vereinfachung:
simplify
- Faktorisierung:
factor
- Erweiterung:
expand
- und diverse weitere Operationen, siehe Rearrange Expression
- Vereinfachung:
Aufgabe
Vereinfachen Sie den Ausdruck
Aufgabe
Vereinfachen Sie den folgenden Term:
Aufgabe
Vereinfachen Sie den folgenden Term:
Lösung
Beispiel
Führen Sie eine Polynomdivision mit Hilfe des folgenden Bruches durch:
Verwendung der quorem
-Funktion: [Quotient, Rest] = quorem(Zähler, Nenner)
Aufgabe
Führen Sie die folgenden Polynomdivision durch:
Lösung
Definition von symbolischen Funktionen
Symbolische Funktionen
- Mathematische Funktionen werden in recht einfacher Weiße definiert
- Anschließend können Funktionswerte direkt berechnet werden
Aufgabe
Definieren Sie eine Funktion für die Berechnung der Fläche eines Kreises.
Mehrere Variablen
Funktionen mehrere Abhängiger können analog definiert werden, dabei werden die einzelne Variablen mit Komma getrennt
Aufgabe
Definieren Sie eine Funktion für die Berechnung vom Flächeninhalt einer Ellipse. Setzen Sie die Radien von 3 und 5 in die Funktion ein.
Lösung
Visualisierung der Funktionen
- Grundsätzlich erfolgt die Visualisierung von Funktionen mit dem
fplot
Befehl
- Mehrdimensionale Funktionen können auf verschiedene Art und Weiße dargestellt werden. So ist eine Variante durch die implizite Darstellung möglich, indem man der Funktionen einen bestimmten Wert zuweist
Aufgabe
Kontrollieren Sie die Ergebnisse, in dem Sie die abgelesenen Werte von der Implizitdarstellung in die Funktion einsetzen.
Plot
- Soll ein Bild für mehrere Werte angezeigt werden, so ist
fcontour
sehr nützlich. Zusätzlich kann die Sichtbarkeit von gewünschten Werten durchfcontour(g,'LevelList',[1 4 9 16])
beeinflusst werden
Symbolische Integral- und Differentialrechnung
Ableitungen und Integrale
- Symbolische Ausdrücke oder Funktionen können mit Hilfe von
diff
Befehl abgeleitet werden. Dabei hat der Befehl folgende Strukturdiff(Ausdruck,Variable)
- Sind mehrere Variablen vorhanden, so wird nach der angegebener abgeleitet!
- Höhere Ableitungsgrade sind möglich, so ist z.B. die zweite Ableitung durch eine Komma getrennte 2 in der Klammer vom diff Befehl realisierbar
- Analog lassen sich unbestimmte Integrale mit dem Befehl
int(Ausdruck,Variable)
finden
- Achtung: die Integrationskonstante wird nicht berücksichtigt bzw. angezeigt
- Bestimmte Integrale lassen sich durch die Angabe des Integrationsbereichs berechnen
Beispiel
Lösen Sie die Differentialgleichung \(T\cdot\dot y(t) + y(t) = 1\) mit der Anfangsbedingung \(y(0) = 0\).
- Allgemeine Verwendung des
dsolve
-Befehls:
dsolve(DiffGL, [Anfangsbedingung1, Anfangsbedingung2, ...])
- Definition des symbolischen Variablen
- Definition der DGL:
- Lösen der DGL: