Maxima: Unterschied zwischen den Versionen

Aus Colliseum
Zur Navigation springen Zur Suche springen
(Die CESGA-Site ist schon länger down. Die Website in Brasilien kann jetzt auch mit 'normalen' Indizes (_1,_2, ...) umgehen)
 
Zeile 7: Zeile 7:
Auch im Colliseum wird an einigen Stellen Maxima-Code als Beweis für die Gültigkeit bestimmter Umformungen angegeben, so etwa unter [[Topokol]].
Auch im Colliseum wird an einigen Stellen Maxima-Code als Beweis für die Gültigkeit bestimmter Umformungen angegeben, so etwa unter [[Topokol]].


Soweit man die Programmumgebung von Maxima nicht vollständig auf dem Rechner installieren möchte, kann man unter [http://maxima.cesga.es CESGA] Maxima-Code online ausführen. (Wenn man möchte, sogar auch auf dem Smartphone.) Wie oft bei solche Weblösungen, ist die Version des Backends (''Maxima'') sehr alt. Größte praktische Hürde für den Ingenieur ist, dass Indizes wie in ''v''<sub>1</sub> nicht als "v_1" geschrieben werden können, sondern als "v[1]" geschrieben werden müssen. (Und analog c[w] statt ''c''<sub>w</sub>, wo es dann krude wird.)
Soweit man die Programmumgebung von Maxima nicht vollständig auf dem Rechner installieren möchte, kann man unter [http://www.dma.ufv.br/maxima] Maxima-Code online ausführen.  


==Berechnung der Kollisionsgeschwindigkeit aus Impuls- und Energiesatz==
==Berechnung der Kollisionsgeschwindigkeit aus Impuls- und Energiesatz==
Hier der Code von der Seite [[Topokol]] in der »Online-Version« zum Copy-and-Paste in CESGA:
Hier der Code von der Seite [[Topokol]] in der »Online-Version« zum Copy-and-Paste in CESGA:


   impuls:mu*v[1] + v[2]=mu*vs[1]+vs[2];
   impuls:mu*v_1 + v_2=mu*vs_1+vs_2;
   energie:mu*v[1]^2 +v[2]^2=mu*vs[1]^2+vs[2]^2+mu/(1+mu)*ve^2;
   energie:mu*v_1^2 +v_2^2=mu*vs_1^2+vs_2^2+mu/(1+mu)*ve^2;
   Loesung:algsys([impuls,energie],[v[1],v[2]]);
   Loesung:algsys([impuls,energie],[v_1,v_2]);
   Loesung[2][1];
   Loesung[2][1];
   facsum(solve(impuls,v[2])[1],mu);
   facsum(solve(impuls,v_2)[1],mu);


==Inverse perspektivische Transformation==
==Inverse perspektivische Transformation==
Zeile 41: Zeile 41:
mit drei Zeilen Maximacode zu lösen:
mit drei Zeilen Maximacode zu lösen:
    
    
   eq1:(c[1]*x+c[2]*y+c[3])/(c[7]*x+c[8]*y+1)-u;
   eq1:(c_1*x+c_2*y+c_3)/(c_7*x+c_8*y+1)-u;
   eq2:(c[4]*x+c[5]*y+c[6])/(c[7]*x+c[8]*y+1)-v;  
   eq2:(c_4*x+c_5*y+c_6)/(c_7*x+c_8*y+1)-v;  
   algsys([eq1,eq2],[x,y]);
   algsys([eq1,eq2],[x,y]);



Aktuelle Version vom 19. April 2024, 13:36 Uhr

Maxima ist ein freies Computer-Algebrasystem (CAS), mit dem sich formale Mathematik betreiben lässt.

Das System wurde u.a. in Hugemann: Unfallrekonstruktion dazu genutzt, komplizierte Umformungen automatisch durchzuführen bzw. zu beweisen.

Besonders einfach ist es, die formale Identität zweier Ausdrücke f(x) und g(x) zu beweisen, weil dann in Maxima nur f(x) - g(x) zu berechnen ist, und das Ergebnis Null lauten sollte. Auf diese Weise wurden etwa sämtliche händischen Berechnungen von Pfeufer, H. zu seinem Buchbeitrag formal geprüft.

Auch im Colliseum wird an einigen Stellen Maxima-Code als Beweis für die Gültigkeit bestimmter Umformungen angegeben, so etwa unter Topokol.

Soweit man die Programmumgebung von Maxima nicht vollständig auf dem Rechner installieren möchte, kann man unter [1] Maxima-Code online ausführen.

Berechnung der Kollisionsgeschwindigkeit aus Impuls- und Energiesatz

Hier der Code von der Seite Topokol in der »Online-Version« zum Copy-and-Paste in CESGA:

 impuls:mu*v_1 + v_2=mu*vs_1+vs_2;
 energie:mu*v_1^2 +v_2^2=mu*vs_1^2+vs_2^2+mu/(1+mu)*ve^2;
 Loesung:algsys([impuls,energie],[v_1,v_2]);
 Loesung[2][1];
 facsum(solve(impuls,v_2)[1],mu);

Inverse perspektivische Transformation

Im Kapitel »Fotogrammtrie« in Hugemann: Unfallrekonstruktion wird Maxima dazu verwendet, den Zusammenhang zwischen den Parametern der perspektivischen Transformation

[math]\displaystyle{ u =\frac{c_1 \, x + c_2 \, y + c_3}{c_7 \, x+c_8 \, y + 1} }[/math]

[math]\displaystyle{ v =\frac{c_4 \, x + c_5 \, y + c_6}{c_7 \, x+c_8 \, y + 1} }[/math]

und ihrer Inversen

[math]\displaystyle{ x =\frac{a_1 \, u + a_2\, v + a_3}{a_7\, u + a_8 \, v +1} }[/math]

[math]\displaystyle{ y =\frac{a_4 \, u + a_5 \, v + a_6}{a_7 \, u + a_8 \, v +1} }[/math]

mit drei Zeilen Maximacode zu lösen:

 eq1:(c_1*x+c_2*y+c_3)/(c_7*x+c_8*y+1)-u;
 eq2:(c_4*x+c_5*y+c_6)/(c_7*x+c_8*y+1)-v; 
 algsys([eq1,eq2],[x,y]);

Auch dies lässt sich mittels Copy and Paste in CESNA leicht ausprobieren.

Siehe auch