wenn ich Funktion f (x, y, z) habe, wie man erste Ableitung meiner Funktion in Matlab erhält.Wie man erste Ableitung der Gleichung in Matlab erhält
f '= df (x, y, z)/d (x, y)
Ist es wahr, wenn ich diese Methode f' = diff (f, x) + diff (f, y) ?
wenn ich Funktion f (x, y, z) habe, wie man erste Ableitung meiner Funktion in Matlab erhält.Wie man erste Ableitung der Gleichung in Matlab erhält
f '= df (x, y, z)/d (x, y)
Ist es wahr, wenn ich diese Methode f' = diff (f, x) + diff (f, y) ?
Sie haben Ihre eigene Frage beantwortet; Solange die f(x,y,z)
-Funktion einen M x N-Vektor/eine Matrix ausgibt, können Sie die diff
-Funktion verwenden, um die numerische Lösung für die Ableitung zu erhalten (im Gegensatz zur analytischen Lösung). Die Anzahl der Variablen, die zum Erstellen der Matrix verwendet werden, ist nicht wichtig.
Beachten Sie, dass Sie, wenn Sie an einer Matrix arbeiten, die Richtung der Ableitung berücksichtigen müssen.
Wenn f(x,y,z)
können Ihnen einen 2D-Array erstellen, so dass ein Element i,j
des Arrays ist der Wert von z
zu einem entsprechenden Koordinatenpaar xi,yj
, dann ja, können Sie diff
für den numerischen Unterschied verwenden.
Beachten Sie, dass Sie in Ihrem Fall drei Eingaben für DIFF angeben müssen, da die zweite Eingabe die Reihenfolge der Differenz ist, nicht die Dimension. Auch, diff
gibt Ihnen den Unterschied. Um den richtigen Wert der Ableitung zu erhalten, müssen Sie auch die Schrittweite in Ihrem Wert x
und y
teilen (es sei denn, die Koordinaten werden um 1 erhöht).