A recent post on the Wolfram Blog oferuje następującą funkcję formatowania pochodnych w bardziej tradycyjny sposób.Zapobieganie zmianie kolejności w wyjściach pochodnych?
pdConv[f_] :=
TraditionalForm[
f /. Derivative[inds__][g_][vars__] :>
Apply[Defer[D[g[vars], ##]] &,
Transpose[{{vars}, {inds}}] /. {{var_, 0} :>
Sequence[], {var_, 1} :> {var}}]
]
Przykładem wykorzystania, Dt[d[x, a]] // pdConv
daje:
bez zerwania ogólne możliwości pdConv
, może ktoś go zmieniać, aby utrzymać daną kolejność zmiennych, produkujących wyjście pokazany poniżej? (Oczywiście jest to wyłącznie ze względów asthetic, dzięki pozyskiwaniu łatwiejsze dla człowieka do naśladowania)
I podejrzewam, że będzie nietrywialna wdrożyć --- chyba że ktoś wie o magicznym Global
opcji, które mogą być tymczasowo zastąpione przez Block
.
Na co warto, te tak pytania mogą być związane:
Interesujące pytanie. Mógłbyś być bardziej konkretny, gdy powiesz * podaną kolejność [z] zmiennych *? –
@ Mr.Wizard - Aby wyjaśnić, czy f [b, a] jest funkcją podawaną Dt, to chciałbym, aby całkowite zróżnicowanie było wyprowadzane jako Dt [b] * D [f, b] + Dt [a] * D [f, a], zamiast sortowania danych wyjściowych do Dt [a] * D [f, a] + Dt [b] * D [f, b]. (wydaje się, że to zrozumieliście poniżej ... nie chcecie zostawić, że pytacie wisi.) – telefunkenvf14