Matlab Befehle - Zusammenfassung Informatik PDF

Title Matlab Befehle - Zusammenfassung Informatik
Course Informatik
Institution Universität Duisburg-Essen
Pages 19
File Size 808.9 KB
File Type PDF
Total Downloads 16
Total Views 145

Summary

Zusammenfassung ALLER im Skript befindlichen Befehle, sehr sehr hilfreich für die Klausurvorbereitung...


Description

1) Ausgabeformatierung Funktionen

Beschreibung

format short

4 Dezimalziffern

format long

16 Dezimalziffern

format short/ long e

4/16 Dezimalziffern in wissenschaftlicher Notation mit Exponent

format short/ long g

Matlab wählt bestes Anzeigeformat

format compact/ loose

Matlab druckt keine/zusätzliche Leerzeile aus

format bank

2 Dezimalstellen

format hex

Zahl in hexadezimaler Schreibweise

format rat

Zahl als Bruch

get(0,'Format')

gibt aktuelles Format aus

get(0,'FormatSpacing')

Gibt aktuelles

2) Häufig benutzte Mathematische Funktionen Hilfe für Funktionen (Kurzinfo): >> “help funktionsname” in Kommandozeile eintippen Dokumentation der Funktionen (Ausführliche Beschreibung): >> “doc funktionsname” Funktionen

Beschreibung

sqrt(x)

berechnet die Quadratwurzel von x

abs(x)

berechnet den Absolutbetrag von x

sign(x)

berechnet das Vorzeichen von x

exp(x)

berechnet e^x

log(x)

berechnet den log zur Basis e

log10(x)

berechnet den log zur Basis 10

round(x)

rundet ab/auf zur nächst kleineren/größeren ganzen Zahl

floor(x)

rundet immer ab zur nächsten kleineren ganzen Zahl

ceil(x)

rundet immer auf zur nächsten größeren ganzen Zahl

fix(x)

rundet zur Null hin

rem(a,b)

Formel: r = a - b. * fix(a./b)

mod(a,b)

Formel: r = a - b. * floor(a./b)

complex(a,b)

erstellt komplexe Zahl(Real/ Imaginärteil)

real()

gibt Realteil einer komplexen Zahl aus

imag()

gibt Imaginärteil einer komplexen Zahl aus

angle()

berechnet Winkel einer komplexen Zahl im Bogenmaß

conj()

berechnet komplex-konjugierte Zahl

→ Punkt vor Operator(.): Operator wird als Array-Operator und nicht als Matrix-Operator verwendet. (Bei ‘+’ und ‘-’ sind Operatoren gleich, also kein Punkt notwendig) Matrix-Operator: Operationen gehorchen den Regeln der linearen Algebra. Array-Operator: Operationen werden Element für Element ausgeführt.

3) Arithmetische Operatoren und Konstanten Operator

Beschreibung

+

Addition

-

Subtraktion

*

Multiplikation

/

Division (Dividend rechts, normale Bruchrechnung)

\

Division (Dividend links, mathematisch so nicht definiert, aber in Matlab)

^

Exponentiation



berechnet komplex-konjugierte Zahl, Matrizen bzw. Vektoren transponieren

~

logische Verneinung, wandelt jeden Datentyp in den Typ ‘logical’ um

==

prüft, ob zwei Ausdrücke gleich sind; gibt logische 1(wahr) oder 0 (falsch) aus

~=

prüft, ob zwei Ausdrücke gleich sind; gibt logische 1(falsch) oder 0 (wahr) aus



größer / kleiner

=

größer gleich / kleiner gleich

& / &&

Logisches UND (Kompletter Ausdruck wird ausgewertet/ 2. Ausdruck wir nur ausgewertet, wenn der 1. wahr ist)

| / ||

Logisches ODER (Kompletter Ausdruck wird ausgewertet/ 2. Ausdruck wir nur ausgewertet, wenn der 1. falsch ist)

logical(),

wandelt 0 und 1 in in Datentypen ‘logical’; jede andere Zahl wird in eine logische 1 umgewandelt

Konstante(Bezeichnung)

Wert

pi

Pi, 3.1416

i/ j

imaginäre Einheit, sqrt(-1)

+/- Inf

+/- Unendlich

NaN

Not-a-Number, Ergebnis nicht definiert

4) Häufig benutzte trigonometrische Funktionen Funktion

Beschreibung

sin(),cos(),tan(),cot()

berechnet Sinus,Kosinus,... in Bogenmaß

sinh(),cosh(),...

berechnet hyberbolischen Sinus,.. in Bogenmaß

asin(),acos(),...

berechnet Arkussinus,... in Bogenmaß

asinh(),acosh(),..

berechnet hyberbolsichen Arkussinus in Bogenmaß

sind(),cosd(),tand(),cotd()

berechnet Sinus,... in Grad

asind(),acosd(),atand(),acotd()

berechnet Arkussinus,... in Grad

5) Datentypen

Datentyp

Beschreibung

char

für “kleine” Zeichenketten(mit ’... ’ eingeschlossen)

double

für reelle Zahlen

double(complex)

für komplexe Zahlen

int32

für ganze Zahlen(Vorzeichen, 32 Bit)

logical

für logische Zahlen

cell

cell-Arrays

6) Allgemeine Befehle Befehl

Beschreibung

iskeyword

Gibt Schlüsselwörter aus(welche nicht als Bezeichner benutzt werden dürfen)

who

Gibt alle eigendefinierten Variablen aus

who x*

Gibt alle eigendefinierten Variablen aus, die mit x beginnen

whos

Gibt alle eigendefinierten Variablen aus(ausführlich)

clear

Löscht eigendefinierte Variablen

clear y

Löscht die Variable y

clear y*

Löscht alle Variablen, welche mit y beginnen

clc

Löscht Command Window

save

speichert Variablen in matlab.mat

save (kein .mat nötig)

speichert Variablen in filename.mat

save x

speichert Variable x in filename.mat

load

lädt Variablen aus matlab.mat

load

lädt Variable aus filename.mat

edit

öffnet Texteditor

pwd (‘Print working directory’)

zeigt das aktuelle Arbeitsverzeichnis an

ls (‘list’)

listet Dateien/ Ordner im aktuellen Verzeichnis auf

cd (‘change directory’)

wechselt in

cd ..

wechselt in übergeordnetes Verzeichnis

mkdir (‘make directory’)

erstellt im aktuellen Arbeitsverzeichnis

rmdir (‘remove directory’)

löscht

delete

Löscht Datei

tic

Start eines Timers

toc

Ausgabe des Timers

run

Ausführen einer Scriptdatei

error(msg)

error(msg) throws an error and displays an error message.

error(msg,A1,...,An)

displays an error message that contains formatting conversion characters, such as those used with the MATLAB®sprintf function. Each conversion character in msg is converted to one of the values A1,...,An

errordlg(msg)

erstellt Dialogfeld mit error message

pause

hlt die Berechnung an und wartet auf einen Tastendruck auf der Tastatur.pause(n) hlt eine Berechnung für n Sekunden an

7) Bezeichnung von Variablen 1. 2. 3. 4.

Müssen mit Buchstabe beginnen Max. 63 Zeichen Es gibt Groß- und Kleinschreibung Keine `Schlüsselwörter` (Schlüsselwörter mit ‘iskeyword’ ausgeben lassen)

8) Eingabe/Ausgabe von Variablen Befehl

Beschreibung

input(‘...’)

Eingabeaufforderung für Tastatur (... wird angezeigt (erwartet double, für Char mit ’...’)

input(‘...’ , ‘s’)

Eingabeaufforderung (erwartet String, ohne ‘...’)

inputdlg(...)

erstellt Dialogfeld für Benutzereingaben, https://de.mathworks.com/help/matlab/ref/in putdlg.html

disp(x)

Gibt Variable x aus (x ist beliebiger Datentyp)

disp([x y z])

gibt mehrere Variablen aus (müssen vom gleichen Datentyp sein)

num2str()

wandelt Zahl in String um (hilfreich für disp([...]))

9) Kommentare Zeug

Beschreibung

%

Einzeiliger Kommentar

%{........%}

Mehrzeiliger Kommentar

%%

Code Abschnitt

10) Die fünf elementaren Algorithmusschritte 1) 2) 3) 4) 5)

Folge (Sequenz) -> Die Schritte werden Schritt für Schritt ausgeführt Zuweisung (Variablen) Auswahl (Verzweigung, Selektion) Schleife (Wiederholung, Iteration) Aufruf

11) Funktionen Muster function [x,y,z,...]=funktionsname(Para1, Para2, ...) %Kommentare unter dem Funktionskopf werden mit help funktionsname() in der Kommandozeile aufgerufen (Gut geeignet für Funktionsbeschreibung) %Unter den Kommentaren muss eine Leerzeile platz gelassen werden --Hier kommt der Algorithmus hin x= …; y= …; z= …; end

%%Datei muss unter dem selben Namen abgespeichert werden (also funktionsname.m) Function muss in der Kommandozeile mit [x1, x2, x3..]= funktionsname( Wert1,Wert2,..) angesprochen werden!

12) Matrizen und Vektoren Funktionen

Beschreibung

size(X)

gibt Größe der Matrix aus

A(m,n)

gibt Wert in der m-ten Zeile und n-ten Spalte an

A(m,:)

gibt alle Werte der m-ten Zeile aus

dot(a,b)

berechnet Skalarprodukt

cross(a,b)

berechnet Kreuzprodukt

eye(n)

erstellt nxn Einheitsmatrix

zeros(m,n)

erstellt mxn Nullermatrix

ones(m,n)

erstellt mxn Einsermatrix

diag(v, k)

erzeugt ein zweidimensionales Feld aus den Werten im eindimensio- nalen Feld v; der Wert k = 0beschreibt die Hauptdiagonale, k = 1, 2, ... beschreibt Diagonale der Reihen 1, 2, ... darüber, k = -1, -2, ... darunter.

Beispiel: diag([1 2 3], 1) >> 0 1 0 0 .. 0 0 2 0 .. . . . .

isvector(A)

isvector(A) returns logical 1 (true) if size(A) returns [1 n] or [n 1] with a nonnegative integer value n, and logical 0 (false) otherwise.

ndims(X)

gibt die Dimension der Matrix aus

length(X)

returns the length of the largest array dimension in X

./ .\

elementweise Rechts/Links-Division

.*

elementweise Multiplikation

*

Matrizenmultiplikation

1:0.5:3

gibt “1 1.5 2 2.5 3” aus

end

ber das Schlüsselwort end kann die letzte Zeile oder Spalte einer Matrix angesprochen werden, selbst wenn deren Größe nicht bekannt ist.

C=A(:)

Wandelt die Matrix A in eine eindimensionale Matrix C um

linspace(x,y,n)

erstellt Zeilenvektor mit Startwert x und Endwert y mit n äquidistanten Zwischenwerten

logspace(x, y, n)

erstellt einen eindimensionales Feld (als Zeile) mit Startwert 10x, Endwert 10y und insgesamt n logarithmisch verteilten Werten

[X, Y] = meshgrid(x, y)

erzeugt zwei zweidimensionale Felder, wobei im ersten Feld X die Werte des eindimensionalen Felds x in soviele Zeilen kopiert werden, wie das Feld y Zeilen (oder Spalten) hat, und im zweiten Feld Y soviele Spalten mit den Werten von y kopiert sind, wie das Feld x Spalten hat.

fliplr(A)

spiegelt ein zweidimensionales Feld A von links nach rechts.

flipud(A)

spiegelt ein zweidimensionales Feld A von unten nach oben.

rand(m, n)

erzeugt ein zweidimensionales Feld der Größe m n mit Zufallszahlen. Intervall ]0, 1[

Mean(A)

berechnet arithmetisches Mittel der Matrix A

max()

returns the maximum elements of an array

[M,I] = max(___)

finds the indices of the maximum values of A and returns them in output vector I, using any of the input arguments in the previous syntaxes

e=eigen(A) [V D] = eigen(A)

e gibt Eigenwerte V ist Matrix mit Eigenvektoren D ist eine Diagonalmatrix mit den Eigenwerten

ES GIBT KEINEN INDEX 0 !!1! x =[1,2,3;4,5,6] x= [1 2 3 4 5 6 ] x(1,2)=2

13) Funktionen Plotten Funktionen

Beschreibung

plot(x1,y1, ‘style1’,x2,y2,’style2’’)

zeichnet einen Strecken-/Linienzug durch die in x und y gegebenen Punktepaare.

fplot(@(x) sin(x))

Ausgabe von

grid on/minor

Gitterlinien im Plot anzeigen

xlabel('string') ylabel('string') title('ueberschrift') +TeX Markup

https://de.mathworks.com/help/matlab/ref/titl e.html

axis([xmin xmax ymin ymax]) weitere Kurven über weitere plot-Befehlein das gleiche Diagramm zu plotten

hold on/off

text(x, y, 'string') legend('string1', 'string2, ...)

Eine Position der Legende kann über zwei zustzliche Parameter 'Location' und 'north', 'east', 'south', 'west', 'northeast','northwest' angegeben werden

figure

https://de.mathworks.com/help/matlab/ref/fi gure.html

figure handle

https://de.mathworks.com/help/matlab/ref/g cf.html#btxcs49-2

Subplot

https://de.mathworks.com/help/matlab/ref/s ubplot.html

Styles Plot

Linientyp

Indikat or

durchgezogen -

Punkttyp

Indikat or

Farbe

Indikat or

Punkt

.

blau

b

gepunktet

:

Kreis

o

grün

g

Strichpunkt

-.

Kreuz

x

rot

r

gestrichelt

--

Pluszeichen

+

cyan

c

Quadrat

s

magenta m

Diamant

d

gelb

y

schwarz

k

weiss

w

Dreieck unten v Dreieck oben

^

14) Bedingungen If - Bedingung if expression statements elseif expression statements else statements end

Switch - Case - Anweisung switch switch_expression case case_expression statements case case_expression statements ... otherwise statements end

Die auzuwertene Anweisug muss ein String oder Skalar.

15) Boolesche Algebra

Logische Wahrheitswerte als Index

Logische Operatoren

Funktionen

Beschreibung

logical(A)

Die vordefinierte Funktion logical wandelt Zahlen in logische Werte um, also jede Zahl ungleich Null in die Zahl 1 für

x= true

x=logical(1)

x=false

x=logical(0)

true(m,n)

logical Matrix m x n mit logischer 1

false(m,n)

logical Matrix m x n mit logischer 0

~expression / not(expression)

Negation von expression

x & y / and(x,y)

logisches UND

x | y / or(x,y)

logisches ODER

x && y

Sequentielles logisches UND

x || y

Sequentielles logisches ODER

xor(x,y)

Exclusive ODER

any(A)

True if any element of a vector is a nonzero number

all(A)

True if all elements of a vector are nonzero

Bitweise logische Operatoren

Funktionen

Beschreibung

bitand(x,y)

bitweises UND

bitcmp(x)

Flipt Bits

bitor(x,y)

bitweises ODER

bitxor(x,y)

bitweises Exclusive ODER

bitset

SET Bit

bitget

GET Bit

bitshift(A,K)

returns the value of A shifted to the left by K bits

islogical(_) liefert true, falls das Argument Boolesch ist, sonst false. isnumeric(_) liefert true, falls das Argument numerisch ist, sonst false. isinteger(_) liefert true, falls das Argument ein integer Typ/eine ganze Zahl ist, sonst false. isfloat(_) liefert true, falls das Argument eine Gleitpunktzahl vom Typ single oder double ist, sonst false. isinf(_) liefert true, falls das Argument -∞ oder ∞ ist, sonst false. isnan(_) liefert true, falls das Argument NaN ist, also keine darstellbare Zahl(en), sonst false. isreal(_) liefert true, falls das Argument eine reellwertige und keine komplexe Zahl ist, sonst false. isa(_, 'class') liefert true, falls das erste Argument vom Typ 'class' ist, sonst false. Statt 'class' darf auch als Kategorie 'numeric', 'float' oder 'integer' angegeben werden. ischar(_) liefert true, falls das Argument ein Zeichen (beziehungsweise eine Zeichenkette) ist, sonst false. isletter(_) liefert true, falls das Argument ein Zeichen aus dem Alphabet ist, sonst false. iskeyword(_) liefert true, falls das Argument ein Schlüsselwort von Matlab ist, sonst false. isempty(_) liefert true, falls das Argument eine leere Liste/ein leeres Feld ist, sonst false. isspace(_) liefert true, falls das Argument ein sogenanntes weisses Zeichen, also ein Leerzeichen, Tabulator, Zeilenvorschub ist, sonst false.

16) Schleifen for-Schleife disp('table of square numbers'); for k = 1:1:10 disp(k * k); end gibt 1^2 bis 10^2 aus. for-Schleife Beispiel Reihe

n = 4; sum = 0; for k = 1:1:n

sum = sum + k; end Ist das gleiche wie ∑4𝑘=1

𝑘 = 1+2+3+4

while-Schleife Beispiel Reihe n=4; sum=0; k=1; while k Groß-Kleinschreibung wird ignoriert

compares s1 and s2 and returns 1 (true) if the two are identical and 0 (false) otherwise. Text is considered identical if the size and content of each are the same. The return result tf is of data type logical.

strtok(_)

teilt eine Zeichenkette als Argument in die erste Zeichenkette bis zum ersten Whitespace und die restliche Zeichenkette ab diesem.

18) Sprint und Fprint fprintf(formatSpec,A1,...,An);

Fprintf zeigt den Text nur im Command window. Sprintf speichert ihn in einem String. Formatspec

Conversion Character

Integer,

%d or %i

Base 10

%u

Base 10

%o

Base 8 (octal)

%x

Base 16 (hexadecimal), lowercase letters a–f

%X

Same as %x, uppercase letters A–F

%f

Fixed-point notation (Use a precision operator to specify the number of digits

signed

Integer, unsigned

Floatingpoint

after the decimal point.)

number %e

Exponential notation, such as 3.141593e+00 (Use a precision operator to specify the number of digits after the decimal point.)

%E

Same as %e, but uppercase, such as 3.141593E+00 (Use a precision operator to specify the number of digits after the decimal point.)

%g

The more compact of %e or %f, with no trailing zeros (Use a precision operator to specify the number of significant digits.)

%G

The more compact of %E or %f, with no trailing zeros (Use a precision operator to specify the number of significant digits.)

Characters

%c

Single character

%s

Character vector or string array. The type of the output text is the same as the

or strings

type of formatSpec.

Precision For %f, %e, or %E

Nu...


Similar Free PDFs