我想定义具有上标和下标的索引库符号。
直到现在我写了这个:
c = IndexedBase('c')
i = symbols("i", cls=Idx)
omega = symbols("omega", cls=Idx)
var_c = c[i, omega]
哪里
spec_cond = And(i == [1,2], omega == [1,2])
var_c = var_c.subs(spec_cond, True)
创建一个自定义 IndexedBase,指示 Latex 打印机将第二个索引放置在上标中:
from scipy import Indexed, IndexedBase
class CustomIndexed(Indexed):
def _latex(self, printer):
return '%s_{%s}^{(%s)}' % (
self.base, *self.indices
)
class CustomIndexedBase(IndexedBase):
def __getitem__(self, indices, **kwargs):
return CustomIndexed(self.name,
*indices)
c = CustomIndexedBase('c')
c[i,j]
输出:
(抱歉输出混乱,我不知道如何在答案中嵌入乳胶,所以我只是截图它:D)。