Vektoren und Multiplikation < Mathematica < Mathe-Software < Mathe < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 19:46 Sa 26.01.2019 | Autor: | DMA |
Ich habe Mathemaricas 2-Wochen-Test-Version geholt und experimentiere damit. Dabei nutze ich auch deutschsprachige pdf-Dateien aus dem Internet.
Bei folgender Aufgabe habe ich nicht geschaft, Mathematica zum Rechnen zu bringen:
(* EinheitsVektor definieren *)
eA0 = {1, 0, 0};
(* OrtsVektor = EinheitsVektor mit r multipilziert *)
rA0 = r.eA0
(* DrehMatrix definieren *)
dM = {{Cos(a), 0, sin(a)}, {0, 1, 0}, {-Sin(a), 0, Cos(a)}}
(* OrtsVektor drehen um a *)
rA = dM.rA0
Und hier das Ergebnis rA:
{{Cos(a), 0, -Sin(a)}, {0, 1, 0}, {Sin(a), 0, Cos(a)}}.r.{1, 0, 0}
Bei der Berechnen von rA hat Mathematica anscheinend nur die Definitionen von rA0 und dM aneinander gereiht aber nicht gerechnet.
Ich hätte erwartet, das das Programm folgendes ausgibt:
r.{Cos(a), 0, Sin(a)}
oder
{r.Cos(a), 0, r.Sin(a)}
Hat jemand einen Tipp dafür, was ich falsch mache?
Gruß
....
Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 21:52 Sa 26.01.2019 | Autor: | Marc |
Hallo DMA,
Ich habe Mathematica leider nicht hier, aber drei Ideen:
1. Ist Sin(a) wirklich richtig (und müsste es nicht Sin[a] lauten?)
2. Warum Mathematica den Ausdruck nicht weiter vereinfacht könnte daran liegen, dass es nicht weiß, was für ein Objekt r ist. Es könnte ja auch eine Matrix, Vektor, etc. sein.
3. Der Operator für skalare Multiplikation ist glaube ich "*" und nicht ".". Wenn du den verwendest, müsste Mathematica hoffentlich das Ergebnis vereinfachen können.
Viele Grüße
Marc
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 10:11 So 27.01.2019 | Autor: | DMA |
Hallo marc,
Herzlichen Dank für deine Antwort.
- Ja, die Argumente auch in Sinus, Cosinus etc. müssen in eckigen Klammern angegeben werden. Daran muss ich mich noch gewöhnen.
- Multiplikation eines Vektors mit einem Skalar muss mit "*" erfolgen. in Meinem Fall an dieser Stelle: rA0 = r*eA0
- Multiplikation einer Matrix mit einem Vektor muss mit "." erfolgen. in Meinem Fall an dieser Stelle: rA = dM.rA0
Mit unterschiedlichen Multiplikationsmöglichkeiten hatte ich experimentiert. Ohne Erfolg.
Heute Morgen ist mir etwas aufgefallen. Wenn ich falsche Eingaben mache und falsche Ergebnisse bekomme, bleibt es beim falschen Ergebnis, obwohl ich den Fehler korrigiert habe. Starte ich Mathematica neu, dann rechnet das Programm wieder richtig. Ich werde das Programm neu herunterladen und neu installieren.
Gruß
|
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 17:21 So 27.01.2019 | Autor: | Chris84 |
Huhu
Ganz einfach (mal von den eckigen Klammern abgesehen):
Es muss
rA0 = r*eA0
sein, nicht
rA0 = r.eA0
Dann funktioniert es bei mir.
Wenn du uebrigens den internen Speicher loeschen willst, kannst du "ClearAll" benutzen.
Gruss,
Chris
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 11:41 Sa 02.02.2019 | Autor: | DMA |
Ich hatte es auch schon gemerkt.
Trotzdem Danke für den Hinweis.
Gruß
|
|
|
|