作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
recent post on the Wolfram Blog提供了以下函数以更传统的方式格式化导数。
pdConv[f_] :=
TraditionalForm[
f /. Derivative[inds__][g_][vars__] :>
Apply[Defer[D[g[vars], ##]] &,
Transpose[{{vars}, {inds}}] /. {{var_, 0} :>
Sequence[], {var_, 1} :> {var}}]
]
Dt[d[x, a]] // pdConv
给出:
pdConv
的通用能力的情况下,有人可以更改它以保持给定的变量顺序,从而产生如下所示的输出吗? (当然这纯粹是出于审美原因,使人类更容易遵循推导)
Global
可以在
Block
中暂时覆盖的选项.
最佳答案
可能有一种更简洁的方法来做 s,但如果它纯粹是为了演示目的,你可以做类似的事情
pdConv[f_, vv_] :=
Module[{v},
(HoldForm[
Evaluate@
TraditionalForm[((f /. Thread[vv -> #]) /.
Derivative[inds__][g_][vars__] :>
Apply[Defer[D[g[vars], ##]] &,
Transpose[{{vars}, {inds}}] /. {{var_, 0} :>
Sequence[], {var_, 1} :> {var}}])]] /.
Thread[# -> vv]) &@ Table[Unique[v], {Length[vv]}]]
vv
是
f
中的变量列表按照您希望偏导数出现的顺序。要使用此功能,您可以执行以下操作
pdConv[Dt[d[x, c]], {x, c}]
vv
使用按正确字典顺序排列的虚拟变量列表,应用转换,然后将虚拟变量替换为原始变量,同时通过将转换后的表达式包装在
HoldForm
中保留所需的顺序.
关于wolfram-mathematica - 防止在衍生输出中重新排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8624341/
考虑以下代码: #include using namespace std; class Base { public: int foo; }; class Derived : public B
我是一名优秀的程序员,十分优秀!