也许我忽略了显而易见的事情,但是如何防止 sympy 重新排列方程呢?
我在 iPython 笔记本中使用 Sympy,因此我可以轻松地将 Latex 代码复制粘贴到 Lyx,但我希望方程的顺序与我定义的顺序相同。
例如,灰体辐射与其温度的关系的公式:
Sympy 自动将温度分量放在前面,这给出了公式的非常不寻常的表示。有什么办法可以防止这种情况发生吗?
目前,SymPy 无法完全按照输入的内容打印内容,因为该信息甚至没有保存在任何地方。
我相信乘法,符号按字母顺序排列,大写字母在小写字母之前(基本上,顺序是ord
)。我能想到的最好的技巧是使用symbol_names
选项latex
,它允许您更改符号在其 LaTeX 表示形式中使用的名称。排序仍将基于原始符号的名称,因此您可以欺骗它:
>>> from sympy.abc import epsilon, omega, t
>>> latex(epsilon*sigma*t**4, symbol_names={t:"T"})
\epsilon \sigma T^{4}
如果您希望在笔记本中打印得很好,您必须编写一个自定义版本的打印扩展来传递您的信息symbol_names
听写到latex
. See https://github.com/sympy/sympy/blob/master/sympy/interactive/printing.py https://github.com/sympy/sympy/blob/master/sympy/interactive/printing.py(理想情况下,人们可以通过latex
选项init_printing
,我将在 SymPy 错误跟踪器中为此打开一个问题)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)