Summationsvariable < Maxima < Mathe-Software < Mathe < Vorhilfe
|
Hi,
aufgrund meiner Diplomarbeit muss ich mich mit Maxima beschäftigen und bin dort auf folgendes Problem gestoßen:
[mm] \summe_{1\le j_1\le j_2\le ...\le j_d\le 12}\produkt_{h=1}^{d}v_j_h
[/mm]
Diese Formel möchte ich eingeben. Sie soll mir Produkte der Länge d geben mit Faktoren [mm] v_j. [/mm] Die Faktoren [mm] v_j [/mm] sind konkrete Zahlen und mit der Summe sollen die j so benannt werden, dass sie zwischen 1 und 12 liegen und ich alle möglichen Kombinationen bekomme.
Das Produkt habe ich schon eingegeben mit:
prod(v[j][h],h,1,d)
Dabei würde ich gerne prod(v[j[h]],h,1,d) eingeben, was zwar auch geht, aber in der Summe auf ein Problem stößt.
Mein Problem ist jetzt, dass Maxima nicht mehrere Ungleichheitszeichen nacheinander haben will.
Wie kann ich es aber sonst eingeben?
Ich habe diese Frage auch in folgenden Foren auf anderen Internetseiten gestellt: http://www.matheplanet.com/ (Wenn ich die Frage in meinem Browser öffne, bekomme ich keinen genaueren Link, man findet die Frage über Forum-Gliederung, Mathematische Software & Apps, Andere Softwarepakete, Summen in Maxima)
Liebe Grüße,
Stephan
|
|
|
|
[mm]\summe_{1\le j_1\le j_2\le ...\le j_d\le}^{ 12}\produkt_{h=1}^{d}v_j_h[/mm]
Du must mehrere Summen eingeben:
[mm]\summe_{j_1=1}^{12}\summe_{j_2=j_1}^{12}\summe_{j_3=j_2}^{12}...\summe_{j_d=j_{d-1}}^{12}\produkt_{h=1}^{d}v_j_h[/mm]
|
|
|
|
|
Danke für die Antwort.
Das Problem ist, wenn ich das eingebe für z.B. d=3:
sum(sum(sum(v[j[1]]*v[j[2]]*v[j[3]],j[1],1,12),j[2],j[1],12),j[3],j[2],12)
schreibt er den Fehler "index must bei a Symbol, found [mm] j_{3}".
[/mm]
Wenn ich die j ohne den Index schreibe bekomme ich den Fehler "found j evaluates to 1where a Funktion was expected".
Und mit dieser Schreibweise bekomme ich ein Problem, wenn ich in der Formel d ändere, weil d von einer weiteren Summe (die ich nicht angegeben habe) abhängt und ich somit immer die Anzahl der Summen ändern müsste.
Ich habe eine ähnliche Frage, bezogen auf die Ungleichungskette mittlerweile auch in www.matheplanet.com gestellt (Mathematische Software & Apps, Andere Softwarepakete, Maxima Ungleichungskette
Lg, Stephan
|
|
|
|
|
sum(sum(sum(v[j[1]]*v[j[2]]*v[j[3]],j[1],1,12),j[2],j[1],12),j[3],j[2],12)
Bei
sum(v[j[1]]*v[j[2]]*v[j[3]],j[1],1,12)
soll j[1] offenbar die "Laufvariable" sein, die von 1 bis 12 läuft.
Ich kenne zwar Maxima nicht, aber normaler Weise können Laufvariable keine Zellen in einem Feld sein, sondern nur einfache Varable.
Probiere mal aus:
j1=j[1],j2=j[2], j3=j[3] (evtl. getrennt oder mit := eingeben, das weiß ich nicht), und dann
sum(sum(sum(v[j1]*v[j2]]*v[j3],j1,1,12),j2,j1,12),j3,j2,12)
Falls das funktioniert, ist meine Vermutung richtig.
Wenn du eine variable Anzahl von j-Werten programmieren willst, musst du eine "dynamische Programmierung" vornehmen, d.h. rekursiv mit Unterprogrammen, die sich selber (auf flexible Weise) mehrfach wieder aufrufen. Und das ist ein weites Feld...
|
|
|
|