12.02.2014 Aufrufe

Mathematik für Physiker - Numerische Physik: Modellierung

Mathematik für Physiker - Numerische Physik: Modellierung

Mathematik für Physiker - Numerische Physik: Modellierung

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

42 KAPITEL 1. VEKTOREN<br />

1.7.3 Andere Koordinatensysteme<br />

§ 192 MatLab stellt für die Umwandlung von Vektoren von einem in ein anderes Koordinatensystem<br />

die folgenden Routinen zur Verfügung:<br />

cart2pol [THETA,RHO,Z] = cart2pol(X,Y,Z) kartesisch in Polar oder Zylinder<br />

cart2sph [THETA,PHI,R] = cart2sph(X,Y,Z) kartesisch in Kugel<br />

pol2cart [X,Y,Z] = pol2cart(THETA,RHO,Z) Polar bzw. Zylinder in kartesisch<br />

sph2cart [X,Y,Z] = sph2cart(THETA,PHI,R) Kugel in kartesisch<br />

MatLab unterscheidet nicht zwischen Polar- und Zylinderkoordinaten: werden drei Komponenten<br />

übergeben, so interpretiert MatLab dies als Zylinderkoordinaten; bei zwei Komponenten<br />

sind es Polarkoordinaten.<br />

cart2sph<br />

§ 193 Formal werden alle vier Routinen gleich verwendet: der Vektor ist in drei Komponenten<br />

gegeben, der Output der Routine ist wieder ein System aus drei Zahlen. Die Umwandlung<br />

von kartesischen in Kugelkoordinaten lässt sich wie folgt erreichen:<br />

>> x=2;y=3;z=4; [Theta,Phi,R] = cart2sph(x,y,z) ←↪<br />

THETA =<br />

0.9828<br />

PHI =<br />

0.8372<br />

R =<br />

5.3852<br />

Bei den von MatLab zurück gegebenen Winkeln ist etwas Vorsicht geboten: THETA wird von<br />

der positiven x-Achse aus gemessen (entspricht dem in Abb. 1.8 als ϕ bezeichneten Winkel),<br />

PHI wird von der xy-Ebene gemessen, entsprechend einer geographischen Breite. Zwischen<br />

PHI und ϑ in Abb. 1.8 besteht daher der Zusammenhang ϑ = π/2 − PHI. Bevor Sie eine der<br />

Umwandlungsroutinen verwenden, sollten Sie sich in den MatLab-Hilfe vergewissern, welche<br />

Größen wie definiert sind.<br />

1.7.4 Vektorprodukte<br />

§ 194 Stellt man die Produkte über dot bzw. cross dar, so gilt das bei der Addition gesagte:<br />

es ist egal, ob die Vektoren Zeilen- oder Spaltenvektoren sind, es müssen nur alle Multiplikanden<br />

die gleiche Form haben bzw. durch Transposition auf gleiche Form gebracht werden.<br />

Bei der Verwendung des Multiplikationszeichens * dagegen führt MatLab eine Matrixmultiplikation<br />

durch mit den zugehörigen Einschränkungen (vgl. Abschn. 8.2.3).<br />

dot<br />

.*<br />

sum<br />

norm<br />

§ 195 Das Skalarprodukt wird durch den Befehl dot ausgeführt:<br />

>> a=[3;-2;1]; b=[-2;3;1]; ←↪<br />

>> c = dot(a,b) ←↪<br />

c =<br />

-11<br />

Intern bildet MatLab das Skalarprodukt durch punktweise Multiplikation und anschließende<br />

Summation über die Produkte, entsprechend ⃗a ·⃗b = ∑ a i b i :<br />

>> a=[3;-2;1]; b=[-2;3;1]; ←↪<br />

>> c = sum(a.*b) ←↪<br />

c =<br />

-11<br />

Für den Betrag eines Vektors kennt MatLab den Befehl norm, entsprechend der Sequenz<br />

norm(a) = sqrt(dot(a,a)).<br />

13. März 2007 c○ M.-B. Kallenrode

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!