Seite 1 von 1
Multiplikation von Funktionen
Verfasst: Donnerstag 17. März 2011, 12:44
von Curiosa
Hallo!
Ich habe folgendes Problem:
Ich habe eine Funktion func(x1, x2, y1, y2)
Ich moechte diese fuer verschiedene x1, x2 miteinander multiplizieren, also ungefaehr so:
(x ist ein array, der floats enthaelt)
Code: Alles auswählen
func1 = lambda y1, y2: func(x[0], x[1], y1, y2)
for i in range(n-2):
func1 = lambda y1, y2:func1(y1, y2)*func(x[i+1], x[i+2], y1, y2)
Leider bekomme ich dann immer die Fehlermeldung: maximum recursion depth exceeded.
Hat jemand von Euch eine Idee, wie ich mein Problem loesen kann?
Vielen Dank schonmal und viele Gruesse,
Curiosa
Re: Multiplikation von Funktionen
Verfasst: Donnerstag 17. März 2011, 13:03
von cofi
Nicht die Funktionen werden multipliziert sondern zuerst ausgewertet und dann werden die Ergebnisse multipliziert.
Schau dir mal `func1` nochmal genau an. Wann genau soll der Aufruf zu einem Ende kommen?
Re: Multiplikation von Funktionen
Verfasst: Donnerstag 17. März 2011, 13:41
von Curiosa
Die Funktion, die ich suche, soll ein Produkt aus Funktionen vom Typ func sein. n sollte moeglichst gross sein im Bereich von 1000.
Re: Multiplikation von Funktionen
Verfasst: Donnerstag 17. März 2011, 13:53
von Hyperion
Curiosa hat geschrieben:Die Funktion, die ich suche, soll ein Produkt aus Funktionen vom Typ func sein. n sollte moeglichst gross sein im Bereich von 1000.
Kapiere ich immer noch nicht. Was heißt denn "Produkt von Funktionen"? Produkt der Funktionswerte? Das wäre doch einfach iterativ möglich. Augenscheinlich willst Du gar nichts ausrechnen, sondern eher eine Funktionskaskade erzeugen, die später einmal Dinge berechnen kann? Du musst das glaube ich mal ein wenig besser erklären, ggf. mit einer lauffähigen Funktion. Damit könntest Du mal per Hand nachbauen, was Du als Ziel erwartest.
Re: Multiplikation von Funktionen
Verfasst: Donnerstag 17. März 2011, 14:15
von Curiosa
Ja, ich moechte die Funktion haben und nicht nur Werte fuer einige Stellen. Ist das moeglich?
Re: Multiplikation von Funktionen
Verfasst: Donnerstag 17. März 2011, 14:18
von Hyperion
Curiosa hat geschrieben:Ja, ich moechte die Funktion haben und nicht nur Werte fuer einige Stellen. Ist das moeglich?
Stellt sich mir glatt die Frage: Wozu?
Dafür bieten Programmiersprachen doch Schleifen usw.!
Vielleicht beschreibst Du doch mal genauer, was Du erreichen möchtest und auch wozu! Evtl. ist das ein XY-Problem und wir raten uns hier damit zu Tode.
Re: Multiplikation von Funktionen
Verfasst: Donnerstag 17. März 2011, 14:48
von Curiosa
Hallo!
Ich habe jetzt doch einen Weg gefunden, mit dem es reicht, die Funktion nur ein wenigen Stellen zu kennen.
Vielen Dank fuer die Hilfe!
Viele Gruesse,
Curiosa
Re: Multiplikation von Funktionen
Verfasst: Montag 21. März 2011, 08:56
von mkesper
Eventuell wäre auch
numpy für deine Art von Probleme geeignet.