Show Menu
Cheatography

MATLAB Cheat Sheet (DRAFT) by

Collecting the relevant matlab commands for my university course.

This is a draft cheat sheet. It is a work in progress and is not finished yet.

Calcul­ations

+, -
additi­on/­sub­tra­ction (eleme­ntwise)
*,/
multip­lic­ati­on/­div­ision
a^b
power of a
sqrt(a)
square root of a

Variables

a = 1
Define variable a to be 5. If you apply another value to this variable, it will be overwr­itten!
b = 2;
; suppresses output
e = sym('e') or syms e
Define symbolic variable e
syms a b c d
Define several symbolic variables
h = 2*e + f^2
Calcul­ations with symbolic variables
mod(a,b)
remainder after division
z = 3 +4i
Define complex variable
real(z)
real part of complex number
imag(z)
imaginary part of complex number
 

Matrix operations

zeros(n)
Creates a n x n matrix of zeros
zeros(m,n)
Creates a m x n matrix of zeros
ones(n)
Creates a n x n matrix of ones
ones(m,n)
Creates a m x n matrix of ones
eye(n)
Creates a n x n identity matrix
rand(m,n)
Creates a m x n matrix of random numbers
diag([­a,b­,c,d])
Creates a diagonal matrix with a, b, c, d
A = [1 2; 3 4]
Creates a matrix with specified numbers - rows separated by whites­pace, columns by semicolon
AA = [1,2;3,4]
Creates a matrix with specified numbers - rows separated by comma, columns by semicolon
size(A)
Returns dimensions of matrix A
v = [5;6]
Vectors are created as single­-line matrices. Column vector
u = [5,6]
Vectors are created as single­-line matrices. Row vector
 

Lösen von Gleich­ungen

Numeri­sches Lösen von linearen Gleich­ung­ssy­stemen:
linsolve

Symbol­isches Lösen von nicht-­lin­earen Gleich­ungen oder Gleich­ung­ssy­stemen:
solve(­rechte Seite == linke Seite, Variable)

Mehrere Gleich­ungen und Unbekannte werden als Zeilen­vektor eingeg­eben:
Bsp: loesung = solve(­[x1­-2*x2 == x3, x2^2 == -1, x3-x2 == 2], [x1,x2­,x3])
Ausgabe ist eine structure. Zugriff auf die einzelnen Elemente über:
loesung.x1
loesung.x2

Ist eine symbol­ische Lösung nicht möglich, liefert solve eine numerische Näherung (mit einer Warnung).

Finden von numeri­schen Näheru­ngen:
fzero(­Fun­ktion, x0)
x0 kann ein Skalar oder ein Vektor der Länge 2 (= Interv­all)) sein.

Lösen von gewöhn­lichen Differ­ent­ial­gle­ich­ungen

Differ­ent­ial­gle­ichung der Form f(yn,yn-1, ..., y'', y', y) = g(x)

dsolve­(Gl­eic­hung, Anfang­sbe­din­gungen)

Bsp:
syms Q(t)
dQ = diff(Q,1) % Ableitung von Q
eqn = 1/(RC)Q + dQ == U/R % Differ­ent­ial­gle­ichung
sol = dsolve­(eqn, Q(0) == 0)

Die Lösung zeichnen:
figure;
fplot(sol, [0,50])

Man kann Anfang­swe­rtp­robleme auch numerisch lösen, wofür versch­iedene Probleme zur Verfügung stehen.

Iterat­ionen und Schleifen, If-Els­e-S­tat­ements

If-Els­e-A­nwe­isung:

**if condition
dann
elseif condition
dann
else
dann
end**


For-An­wei­sung:
**for index = werte:
statement
end**

While-­Sch­leife
k = 0
while condition
statement
end
 

Differ­enz­ieren

Bildung der Ableitung eines Ausdrucks:
diff(A­usd­ruck, Ableitung nach, n. Ableitung)

Partielle Ableitung:
diff(A­usd­ruck, Ableitung nach x, Ableitung nach y)

- Ergebnis wird nicht sofort verein­facht (-> simplify)
- Ergebnis ist keine Funktion

Bildung einer Funktion mittels Substi­tution:
subs(A­usd­ruck, {alte Variab­len}, {neue Variab­len})
Bsp: h = @(xx,yy) subs(g, {x,y}, {xx,yy})**

Ableitung für numerische Objekte
- Input: Ausdruck, Vektor mit Funkti­ons­werten
- Output: Vektor mit Werten der Ableitung
- diff() liefert bei num. Argumenten nur eine Näherung der symbol­ischen Ableitung
- Wegen Bildung der Differ­enzen hat das Ergebnis eine Komponente weniger

Integr­ation

Für viele Funktionen kennt Matlab die zugehörige Stammf­unk­tion:
Unbest­immtes Integral: int(f,x)
Bestimmtes Integral: int(f,­x,a,b)

Das bestimmte Integral muss durch eval(e­rge­bnis) noch ausgew­ertet werden.

Es sind mehrere Variablen möglich, wenn man die Integrale versch­ach­telt:
int(in­t(s­*y,­x),y)

int() kann keine numeri­schen Elemente auswerten. Es gibt jedoch Befehle, die Vergle­ich­bares liefern:
trapz berechnet die Fläche unter einer Kurve nach der Simpso­n'schen Trapez­regel (Output: Zahl)
cumsum berechnet die kumulative Summe der Vektor­ele­mente. Ergebnis ist wieder ein Vektor, der der Stammf­unktion entspricht und ggf. noch um die Integr­ati­ons­kon­stante verschoben werden muss.

Numerische Integr­ation (= numeri­sches Berechnen eines symbolisch gegebenen Integrals)
integr­al(­Aus­druck, a, b)
integr­al2­(Au­sdruck, xmin, xmax, ymin, ymax) (2-fach Integral)
integral3 (3-fach Integral)