Monome berechnen
Monome berechnen
Hallo
Ich habe ein Problem. Und zwar habe ich n Vektoren und möchte nun alle möglichen Kombinationen der Vektoren bis zum Grad 3 erstellen.
Ich kann das am besten an einem Beispiel erklären, nehmen wir an ich hätte 2 Vektoren, x und y und ich möchte alle möglichen Kombinationen bis zum Grad 3 erstellen, dann würde ich folgende Monome erhalten:
x
y
x.^2
y.^2
x.^3
y.^3
x*y
x*y.^2
x.^2*y
Nun habe ich aber n Vektoren und möchte alle möglichen Terme bis zum Grad 3 erstellen. Ich sehe gerade nicht wie ich das rekursiv lösen könnte.
Kann mir da jemand helfen?
Ich habe ein Problem. Und zwar habe ich n Vektoren und möchte nun alle möglichen Kombinationen der Vektoren bis zum Grad 3 erstellen.
Ich kann das am besten an einem Beispiel erklären, nehmen wir an ich hätte 2 Vektoren, x und y und ich möchte alle möglichen Kombinationen bis zum Grad 3 erstellen, dann würde ich folgende Monome erhalten:
x
y
x.^2
y.^2
x.^3
y.^3
x*y
x*y.^2
x.^2*y
Nun habe ich aber n Vektoren und möchte alle möglichen Terme bis zum Grad 3 erstellen. Ich sehe gerade nicht wie ich das rekursiv lösen könnte.
Kann mir da jemand helfen?
- cloidnerux
- Moderator
- Beiträge: 3125
- Registriert: Fr Sep 26, 2008 4:37 pm
- Wohnort: Ram (Gibts wirklich)
Re: Monome berechnen
Beginnen wir mit Teile und herrsche:
Du hast Monome mit einem bis n Elementen: X, XY, ..., XYZ...
Das sei die Menge A
Nun gibt es zu jedem Element aus A eine Menge B_k die die Variationen der Exponenten des k-ten Elements aus A beinhaltet.
Daher die Menge aller B_k ist seiner Lösung.
A ist ein Kombination spröden, B_k für jedes k auch.
Um A zu berechnen musst du alle Kombinationen für n-a für a E {0..n} Elemente aus den n verfügbaren berechnen, dafür gibt es Algorithmen.
Weitet weiß ich noch nicht, ich brauche erst noch mal Stift und Papier.
Du hast Monome mit einem bis n Elementen: X, XY, ..., XYZ...
Das sei die Menge A
Nun gibt es zu jedem Element aus A eine Menge B_k die die Variationen der Exponenten des k-ten Elements aus A beinhaltet.
Daher die Menge aller B_k ist seiner Lösung.
A ist ein Kombination spröden, B_k für jedes k auch.
Um A zu berechnen musst du alle Kombinationen für n-a für a E {0..n} Elemente aus den n verfügbaren berechnen, dafür gibt es Algorithmen.
Weitet weiß ich noch nicht, ich brauche erst noch mal Stift und Papier.
Redundanz macht wiederholen unnötig.
quod erat expectandum
quod erat expectandum
- Xin
- nur zu Besuch hier
- Beiträge: 8862
- Registriert: Fr Jul 04, 2008 11:10 pm
- Wohnort: /home/xin
- Kontaktdaten:
Re: Monome berechnen
Im Prinzip ist das doch nur eine Permutation von zwei Objekten.MrTiger hat geschrieben:Ich kann das am besten an einem Beispiel erklären, nehmen wir an ich hätte 2 Vektoren, x und y und ich möchte alle möglichen Kombinationen bis zum Grad 3 erstellen, dann würde ich folgende Monome erhalten:
Code: Alles auswählen
for( unsigned int xpotenz = 0; xpotenz <= grad; xpotenz++ )
for( unsigned int ypotenz = 0; ypotenz <= grad; ypotenz++ )
printf( "x^%d * y^%d\n", xpotenz, ypotenz );
Warum rekursiv?MrTiger hat geschrieben:Nun habe ich aber n Vektoren und möchte alle möglichen Terme bis zum Grad 3 erstellen. Ich sehe gerade nicht wie ich das rekursiv lösen könnte.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
- cloidnerux
- Moderator
- Beiträge: 3125
- Registriert: Fr Sep 26, 2008 4:37 pm
- Wohnort: Ram (Gibts wirklich)
Re: Monome berechnen
Du hast nicht ganze Recht Xin:
Und das lässt sich dann auch Rekursiv lösen(Pseudocode):
D_R ist die Dimension des Raumes, es gibt die Randbedingung, dass die Summe aller Potenzen kleiner ist als die Dimension des Raumes.Und das lässt sich dann auch Rekursiv lösen(Pseudocode):
Code: Alles auswählen
vector<powers*> GetMonome(int count, int dimension, powers actual) //powers is a data structure being one set of valid powers
{
vector<powers*> result;
for(int i = 0; i < dimension; i++)
{
actual[count-1] = i;
if(count == 1)
{
if(sum(actual) < dimension)
result.append(acutal);
}
else
result.append(GetMonome(count-1, dimension, actual);
}
return result;
}
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Redundanz macht wiederholen unnötig.
quod erat expectandum
quod erat expectandum
- cloidnerux
- Moderator
- Beiträge: 3125
- Registriert: Fr Sep 26, 2008 4:37 pm
- Wohnort: Ram (Gibts wirklich)
Re: Monome berechnen
Da geht uns wer Fremdhttp://www.coding-board.de/showthread.p ... -berechnen

Dort konnte man ihm aber keine so schöne mathematische Lösung präsentieren

Redundanz macht wiederholen unnötig.
quod erat expectandum
quod erat expectandum
Re: Monome berechnen
Wir versuche immer (Im Rahmen unserer Möglichkeiten) den Fragesteller in die Situation zu versetzen die Frage selbst zu lösen.
Sieht manchmal seltsam aus und ist manchmal auch unmöglich.
Aber wie heist es: Man kann nur sogut spielen wie der Gegner es zu läst.
Grüße
Sieht manchmal seltsam aus und ist manchmal auch unmöglich.
Aber wie heist es: Man kann nur sogut spielen wie der Gegner es zu läst.
Grüße
- cloidnerux
- Moderator
- Beiträge: 3125
- Registriert: Fr Sep 26, 2008 4:37 pm
- Wohnort: Ram (Gibts wirklich)
Re: Monome berechnen
Seit Gegrüßt und Willkommen im ForumWir versuche immer (Im Rahmen unserer Möglichkeiten) den Fragesteller in die Situation zu versetzen die Frage selbst zu lösen.
Sieht manchmal seltsam aus und ist manchmal auch unmöglich.
Aber wie heist es: Man kann nur sogut spielen wie der Gegner es zu läst.

Ja, das mit dem Antworten geben ist nicht immer einfach und ich wollte euch/dich auch keinesfalls schlecht reden. Ich persönlich bevorzuge es, Mathematische Probleme auch mit der entsprechenden Mathematik zu beantworten, zum einen weil es technisch korrekt ist, zum anderen um den Fragesteller auch die Möglichkeit zu geben, weiter zu denken.
Mit freundlichen Grüßen
cloidenrux
Redundanz macht wiederholen unnötig.
quod erat expectandum
quod erat expectandum
- darksider3
- Beiträge: 347
- Registriert: Fr Sep 14, 2012 6:26 pm
- Wohnort: /dev/sda1
- Kontaktdaten:
Re: Monome berechnen
Sollen wir ihn jetzt Lynchen oder was?cloidnerux hat geschrieben:Da geht uns wer Fremdhttp://www.coding-board.de/showthread.p ... -berechnen![]()
Dort konnte man ihm aber keine so schöne mathematische Lösung präsentieren

Monome.. Wieder so eine Sache, von der man nur hier hört

effizienz ist, wenn ich ein loch bohre und hinterher mein nachbar auch ein bild aufhängen kann... ^^
Meine Homepage und der Microblog von mir
Live Life dont let Life Live You!
Am meisten Aktiv in Webentwicklung und PHP im Wiki
Meine Homepage und der Microblog von mir

Live Life dont let Life Live You!
Am meisten Aktiv in Webentwicklung und PHP im Wiki
- cloidnerux
- Moderator
- Beiträge: 3125
- Registriert: Fr Sep 26, 2008 4:37 pm
- Wohnort: Ram (Gibts wirklich)
Re: Monome berechnen
Was du in deiner Freizeit machst, ist mir egal. Aber wir müssen niemanden Lynchen, weil er eben auch in anderen Foren fragen stellt, auch die selben. Jeder ist frei zu Entscheiden was er machen möchte und wir wollen da ja niemanden einschränken. Ich bin ja auch in anderen Foren angemeldetSollen wir ihn jetzt Lynchen oder was?

Redundanz macht wiederholen unnötig.
quod erat expectandum
quod erat expectandum