FB18 - Das Forum für Informatik

fb18.de / Diplom Informatik / Unterbereich Grundstudium / Praktische Informatik

Was ist ein Vektor?

Was ist ein Vektor? 2002-01-19 19:27
baseman
Jetzt ist mir dieses Wort mittlerweile schon in 3 Fächern begegnet, und ich weiss immer noch nicht, worum dabei geht.[img]http://images.rapidforum.com/images/i16.gif[/img]
Mein Fremdwörterlexikon hat lediglich eine physikalische Definition parat: "Durch Zahl und Richtung bestimmte Größe". Aber was bedeutet das jetzt für die Informatik?


Re: Was ist ein Vektor? 2002-01-19 19:32
Faleiro
lass es dir von zaphod erklaeren… :-))

wo ist dir denn das begegnet?

in der schule hatten wir sowas in mathe…

Re: Was ist ein Vektor? 2002-01-19 19:51
baseman
Von Vektoren hab ich vor allen in Java und Computeranwendung in der Unternehmung gehört. Bei Scheme kam das auch mal irgendwo im Nebensatz vor, ich weiss allerdings nicht mehr, in welchem Zusammenhang.

Re: Was ist ein Vektor? 2002-01-19 20:23
Popcorn
Wie erklärt man so etwas? Weißt Du was ein Skalar ist? Du kannst mit einem Skalar zum Beispiel sagen, dass jemand von Dir 50 Meter weit entfernt ist. Für die Richtung, meinetwegen in Grad, brauchst Du dann noch ein zweites Skalar. Das sind halt einstelligen Größen. Mit einen Vektor kannst Du dann beides zusammenfassen.
Ein anschauliches Beispiel dafür sind vielleicht Vektorgrafiken. Bei normalen Bitmaps wird jeder Bildpunkt einzeln gespeichert (Skalar like). Bei einem Vektor werden dann Knotenpunkte gesetz. Von jeden Punkt wird dann angegeben wie weit und in welcher Richtung es geht. Dort befindet sich dann der nächsten Knotenpunkt und so weiter, bis sich der Kreis schließt, oder besser das Quadrat oder Vieleck…
Das ganze kannst Du dann für alles beliebige verwenden. Sagen wir mal fürs Trinken. Wenn Du Dein Glas an den Mund hebt, verändert sich fortlaufen die Entfernung und der Neigungsgrad. Also auch wieder ein Vektor.

Re: Was ist ein Vektor? 2002-01-19 20:40
baseman
Wow, du hast sozusagen meine nächste Frage schon im Voraus beantwortet. In CidU aka Computeranwendung in der Unternehmung hat uns der gute Dr. Seibt nämlich was von superskalaren Rechnern, Vektorrechnern und Arrayrechnern erzählt.

So, mal sehen, ob ich das richtig verstanden habe: Ein Beispiel für skalare Daten wäre, wenn ich lauter verschiedene DM-Preise hätte, und der Rechner soll mir die Euro-Preise angeben. Die einzelnen Daten stehen also in keinem Zusammenhang.

Ein Beispiel für vektorielle Daten wäre dann, wenn ich astronomische Berechnungen durchführen möchte, und für jeden Stern weiss, wie er sich zu den anderen Sternen verhält (Richtung und geschwindigkeit). Der Rechner soll mir dann die Wechselwirkungen der verschieden Himmelskörper zueinander angeben.

Ist das damit gemeint?

Re: Was ist ein Vektor? 2002-01-19 21:06
Zaphod
Hmmm…Also ich würde sagen:
Ein Skalar ist einfach eine Zahl, und ein Vektor eine gerichtete Größe.
In der Physik lassen sich verschiedene Beispiele dafür finden:

Zum Beispiel nützt es dir recht wenig, wenn du weißt, das jemand ein Auto mit einer bestimmten Kraft anschiebt, aber nicht, in welche Richtung.
Vieleicht hast du früher in der Schule schon mal das "Kräfteparallelogramm" gebildet, um 2 vom selben Ausgangspunkt wirkenden Kräfte zu addieren (8. Klasse). Nun, wenn dies der Fall ist, dann hast du unbewusst schon 2 Vektoren addiert…

In der Mathematik ist alles natürlich noch ein wenig besser. Alles wird soweit abstrahiert, dass man das Konkrete nicht mehr erkennt, es dafür aber recht allgemein hält. So kannst du in einem Vektorraum rechnen und später feststellen, dass du bereits früher mit einem Solchen zu tun hattest, ohne es zu merken. Das eigentlich coole an solchen Sachen ist, dass man in den bestimmten algebraischen Strukturen immer dieselben Sachen machen kann beziehungsweise auch nicht. Das vereinfacht die verschiedenen Strukturen erheblich!

Übrigens: Die meisten Vektoren lassen sich als Tupel von Skalaren darstellen (ich weiß nicht, ob das immer so ist, aber mir fällt gerade kein Gegenbeispiel ein).

Re: Was ist ein Vektor? 2002-01-19 22:26
P0rnopeters
sag mal, warum studierst du eigentlich wenn du eh schon fast alles weisst? so langsam machst du mir wirklich angst…[img]http://images.rapidforum.com/images/i22.gif[/img]

Re: Was ist ein Vektor? 2002-01-20 13:16
Popcorn
Wow, du hast sozusagen meine nächste Frage schon im Voraus beantwortet. In CidU aka Computeranwendung in der Unternehmung hat uns der gute Dr. Seibt nämlich was von superskalaren Rechnern, Vektorrechnern und Arrayrechnern erzählt.
Also "superskalare Rechner", beziehungsweise deren "superskalare Prozessoren" zeichnen sich dadurch aus, dass sie mehrere einfach Aufgaben gleichzeitig ausführen können. Das ist aber nicht so zu verstehen, wie mehrere Prozessoren nebeneinander. Es sind alles Bestandteile eines Prozessors, die sich eines gemeinsamen Speichers bedienen.
Der Prozessor-Cache ist bei diesen Rechnern besonders wichtig. Muss vom langsameren Hauptspeichergeladen werden, verzörgert sich das ganze drasstisch, da hier in Regel immer Unterschiedliche aufgaben gelöst werden. Anderes hingegen bei:

Vektorrechner sind dann sowas wie der Schmucken CRAY1. [img]http://images.rapidforum.com/images/i23.gif[/img] Die werden dann benutzt, wenn ein skalare Rechner unsinnig sind, sprich die Daten einen hohen Vektoriesierungsgrad aufweisen. Stichwort Batchverarbeitung. Immer wieder das gleiche machen. Solche Vektorrechner haben keinen Cache. Die benutzt Du zum Beispiel, ganz simpel gesagt, wenn Du immer wieder etwas mal 123456 multiplizieren willst. Dann können die Zahlen mit denen Du multipliziren willst, immer schön und schnell der Reihe nach aus dem Speicher gelesen werden. Willst Du dann halt auch mal dividieren und nicht immer mit 123456 ist der Skalare Rechner besser, weil er, wenn auch etwas langsamer, neben der Multiplikation auch schon mal dividieren kann, was dann insgesamt wieder schneller ist. Beim Vektorrechner würde er dann erst mal groß von multi. auf divid. umschalten müssen, was das ganze ins Stocken bringt.

Arrayrechner habe ich auch schon mal gehört. Ich glaube, dass sind die Dinger, wo mehrere Prozessoren zusammen arbeiten. Ich glaube sogar Vektorprozessoren, was dann ja eigentlich auch nur wirklich Sinn machen würde.

So, mal sehen, ob ich das richtig verstanden habe: Ein Beispiel für skalare Daten wäre, wenn ich lauter verschiedene DM-Preise hätte, und der Rechner soll mir die Euro-Preise angeben. Die einzelnen Daten stehen also in keinem Zusammenhang.
Na ja. Schon. Die Euro-Preise selbst wären skalare Daten. Aber das Umrechnen DM (Größe) in Euro mit dem Umrechnungskurs (Richtung) würde ich als Vektor ansehen. Denk einfach mal in einem Grafen. Hast Du nur einen Eurobetrag denn Du angeben möchtest, malst Du Dir einfach eine vertikale Linie, schreibst Euro dran und setzt dann Deinen Punkt beim Betrag. (Skalar). Bei der Umrechnung machst Du noch eine horizontale Linie wo Du DM dranschreibst. Nun kannst Du markieren, wieviel DM ein Euro sind. Dann hast Du Koordinaten Punkte wie (1,955/1). Damit hast Du ja einen Vektor 1,955 als Betrag und 1 sozusagen als Richtung.

Ein Beispiel für vektorielle Daten wäre dann, wenn ich astronomische Berechnungen durchführen möchte, und für jeden Stern weiss, wie er sich zu den anderen Sternen verhält (Richtung und geschwindigkeit). Der Rechner soll mir dann die Wechselwirkungen der verschieden Himmelskörper zueinander angeben.
Yip.



Re: Was ist ein Vektor? 2002-01-20 14:21
baseman
So langsam geht mir ein Licht auf! [img]http://images.rapidforum.com/images/i3.gif[/img]

Ich würde dann also sowohl für die Währungsumrechnung als auch für die Astronomische einen Vektorrechner benutzen, da ich jeweils identische Operationen auf die Daten durchführe.

Wenn ich ich hingegen das Weltklima berechnen möchte, sind das skalare Daten, für die man am besten einen superskalaren Rechner nimmt. Der CO2- Ausstoß von Japan, die Stärke einer Meeresströmung im Südpazifik oder die jährliche Regenwaldrodung in Brasilien wären dann skalare Daten, weil sie in keinem direkten Zusammenhang stehen. Es handelt sich um unterschiedliche Größen, auf die unterschiedliche Operationen durchgeführt werden. Deshalb brauche ich eine superskalaren Rechner.

Ich glaub ich hab's verstanden [img]http://images.rapidforum.com/images/i10.gif[/img]

Re: Was ist ein Vektor? 2002-01-20 14:28
Zaphod
Aber was nützt dir das Wissen der Stärke der Meeresströmung im Südpazifik, wenn du nicht weißt, wohin die Strömung geht… Da her würde man wahrscheinlich auch hier Vektoren benutzen ;-)

Re: Was ist ein Vektor? 2002-01-20 14:32
Popcorn
Lass Dich da von meiner Aussage nicht verwirren. Bei den Rechnern ist es ganz simpel so: Willst Du mit dem Rechner viele verschieden Aufgaben lösen, benutzt Du einen (super)skalaren Rechner. Arbeitest Du in einem sehr engen Rahmengebiet, benutzt Du einen Vektorrechner.