A recent post on the Wolfram Blog ofrece la siguiente función para formatear derivados de una manera más tradicional.¿Previene el reordenamiento en la salida derivada?
pdConv[f_] :=
TraditionalForm[
f /. Derivative[inds__][g_][vars__] :>
Apply[Defer[D[g[vars], ##]] &,
Transpose[{{vars}, {inds}}] /. {{var_, 0} :>
Sequence[], {var_, 1} :> {var}}]
]
Un ejemplo de uso, Dt[d[x, a]] // pdConv
da:
sin romper las capacidades generales de pdConv
, alguien puede alterar para mantener el orden dado de variables, la producción de la salida se muestra a continuación? (Por supuesto esto es puramente por razones asthetic, haciendo derivaciones más fácil para un ser humano a seguir)
Sospecho que esto será no trivial de implementar --- a menos que alguien sabe de una opción mágica que puede ser Global
temporalmente anulado dentro de un Block
.
Por lo que vale la pena, estos lo que las preguntas pueden estar relacionadas:
Interesante pregunta. ¿Podría ser un poco más específico cuando diga * el orden dado [de] variables *? –
@ Mr.Wizard - Para aclarar, si f [b, a] es la función alimentada a Dt, me gustaría que la diferenciación total salga como Dt [b] * D [f, b] + Dt [a] * D [f, a], en lugar de ordenar la salida a Dt [a] * D [f, a] + Dt [b] * D [f, b]. (Ustedes parecen haberse dado cuenta de esto a continuación ... no quería dejar su pregunta pendiente). – telefunkenvf14