In [26]:
from sympy import *
from IPython.display import display,Math
# Constantes
a,b,c,d = symbols("a b c d",real=true, constant=true)
et = symbols("epsilon",constant=true)
# Regras Algébricas
regrasDuais = [(et**2,0)]
# Números Duais
q1 = a + b*et
q2 = c + d*et
display(Math("q_1 = " + latex(q1)),Math("q_2 = " + latex(q2)))
In [15]:
# Soma
somaQ = q1 + q2
somaQ = somaQ.subs(regrasDuais) # Aplica as Regras Algébricas para Duais
somaQ = somaQ.collect(et) # Agrupa Termos
display(Math("q_1 + q_2 = " + latex(somaQ)))
In [16]:
# Subtração
subQ = q1 - q2
subQ = subQ.subs(regrasDuais) # Aplica as Regras Algébricas para Duais
subQ = subQ.collect(et) # Agrupa Termos
display(Math("q_1 - q_2 = " + latex(subQ)))
In [27]:
# Produto
produtoQ = q1*q2
produtoQ = produtoQ.expand() # Aplica Distribuição da Multiplicação
produtoQ = produtoQ.collect(et) # Agrupa Termos
produtoQ = produtoQ.subs(regrasDuais) # Aplica as Regras Algébricas para Duais
display(Math("q_1 q_2 = " + latex(produtoQ)))