dimanche 11 janvier 2015
substituierte (partielle) Ableitungen
Posted on 00:12 by verona
Hi :)
Ich habe eine mathematische Formel. Diese Formel wird mittels Substitution abgeleitet. Für jede Substitution würde ich gerne eine eigene Klasse anlegen. Wie würdet ihr so etwas programmieren? Ich habe zwar schon eine Lösung gefunden, nur gefällt mir die irgendwie nicht.
Hier mal ein Beispiel:
y = sin(cos(sqrt(x)))
Substitution:
v = sqrt(x)
u = cos(v)
y = sin(u)
Ableitungen:
dy/dx = dy/du * du/dv * dv/x
dv/dx = 1/(2 * sqrt(x))
du/dv = -sin(v)
dy/du = cos(u)
Resubstituiert:
dy/dx = cos(u) * (-sin(v)) * 1/(2 * sqrt(x))
dy/dx = cos(cos(v)) * (-sin(sqrt(x)) * 1/(2 * sqrt(x))
dy/dx = cos(cos(sqrt(x))) * (-sin(sqrt(x)) * 1/(2 * sqrt(x))
Je Substitution soll es eine eigene Klasse geben. Also z. B. so irgendwie:
Und hier sieht man schon das Problem. Es gibt noch Abhängigkeiten. Z. B. in der Klasse Y muss man noch irgendwie angeben, wie man an das u rankommt.
Jetzt könnte man dieses u natürlich im Konstruktor der Klasse Y übergeben. Aber das würde ich gerne vermeiden. Der Programmierer, der dann mit diesen Klassen arbeitet, sollte sich keine Gedanken mehr darüber machen müssen, welche Substitution wovon abhängig ist. Diese Abhängigkeiten sollten irgendwie automatisch im Hintergrund aufgelöst werden.
Wie würdet denn ihr so etwas machen?
Ich habe eine mathematische Formel. Diese Formel wird mittels Substitution abgeleitet. Für jede Substitution würde ich gerne eine eigene Klasse anlegen. Wie würdet ihr so etwas programmieren? Ich habe zwar schon eine Lösung gefunden, nur gefällt mir die irgendwie nicht.
Hier mal ein Beispiel:
y = sin(cos(sqrt(x)))
Substitution:
v = sqrt(x)
u = cos(v)
y = sin(u)
Ableitungen:
dy/dx = dy/du * du/dv * dv/x
dv/dx = 1/(2 * sqrt(x))
du/dv = -sin(v)
dy/du = cos(u)
Resubstituiert:
dy/dx = cos(u) * (-sin(v)) * 1/(2 * sqrt(x))
dy/dx = cos(cos(v)) * (-sin(sqrt(x)) * 1/(2 * sqrt(x))
dy/dx = cos(cos(sqrt(x))) * (-sin(sqrt(x)) * 1/(2 * sqrt(x))
Je Substitution soll es eine eigene Klasse geben. Also z. B. so irgendwie:
Java Code:
- class V
- {
- double get()
- {
- return sqrt(x);
- }
- double getDerivative()
- {
- return 1 / (2 * sqrt(x));
- }
- }
- class U
- {
- double get()
- {
- }
- double getDerivative()
- {
- }
- }
- class Y
- {
- double get()
- {
- }
- double getDerivative()
- {
- }
- }
Und hier sieht man schon das Problem. Es gibt noch Abhängigkeiten. Z. B. in der Klasse Y muss man noch irgendwie angeben, wie man an das u rankommt.
Jetzt könnte man dieses u natürlich im Konstruktor der Klasse Y übergeben. Aber das würde ich gerne vermeiden. Der Programmierer, der dann mit diesen Klassen arbeitet, sollte sich keine Gedanken mehr darüber machen müssen, welche Substitution wovon abhängig ist. Diese Abhängigkeiten sollten irgendwie automatisch im Hintergrund aufgelöst werden.
Wie würdet denn ihr so etwas machen?
substituierte (partielle) Ableitungen
Categories: substituierte (partielle) Ableitungen
Inscription à :
Publier les commentaires (Atom)
0 commentaires:
Enregistrer un commentaire