Je ne peux pas trouver le coefficient d'une variable lorsqu'un Dominator est dans l'expression

billy:

J'ai essayé de trouver les coefficients de quelques longues expressions, et même si elles sont non nul, le résultat que je prends est égal à 0.

Je pense que le problème est que je ne comprends pas que le résultat soit (s1+s2)/s4sur ce MWe:

Sym1,Sym2,Sym3,Sym4 = sy.symbols('s1, s2, s3, s4')
xx                  = sy.Symbol('x')
TestExp             = Sym1*xx + Sym2*xx + Sym3
print(TestExp.coeff(xx))
TestExp2            = (Sym1*xx + Sym2*xx + Sym3)/Sym4
print(TestExp2.coeff(xx))
smichr:

coeffest assez littérale , donc s'il n'y a pas de terme avec xxcomme facteur il retourne 0. En tant que votre expression est, il apparaît comme une fraction, un seul terme, et il n'y a aucun élément de xxà ce terme. (Mais il y a dans le numérateur.) Essayez d' élargir votre expression première:

>>> print(TestExp2.expand().coeff(xx))
s1/s4 + s2/s4

Et le toucher avec factor_termsou par collectsouci de simplicité

>>> factor_terms(_)
(s1 + s2)/s4

Je suppose que tu aimes

Origine http://10.200.1.11:23101/article/api/json?id=406764&siteId=1
conseillé
Classement