[GiNaC-list] Wonderfull!!. WAS: Are Clifford units of different
bases equal?
Vladimir Kisil
kisilv at maths.leeds.ac.uk
Wed May 9 17:48:47 CEST 2007
Dear Javier,
>>>>> "JRG" == Javier Ros Ganuza <jros at unavarra.es> writes:
JRG> I'll will install CVS version to follow.
I think it should go smooth.
JRG> Mean while, I see that geometric products of type e~1*e~1 are
JRG> being simplified to ONE, that I suppose that can be removed
JRG> using
JRG> ex remove_dirac_ONE(const ex & e)
That function is intended only for an expression e which has a form
(a Clifford scalar) * ONE. You could not remove ONE from the
expression 2*ONE+3*e~1, since it will become an invalid GiNaC
expression (a commuting object cannot be added to a non-commuting one).
JRG> Also I see in
JRG> a0+(e~0*e~1)*a3+e~1*a2+a1*e~0
JRG> that e~1*e~0 expresions are outputed like (e~0*e~1).
In this way GiNaC highlights that (e~0*e~1) is a non-commutative
product times some other commuting terms.
JRG> If I want to trigger specific simplifications for the Cl2
JRG> geometric algebra, like
JRG> (e~1*e~0)=-(e~0*e~1)
GiNaC just put in expression in a "canonical form" which means some
"canonical order". If you simply declare e00 and e01 in the reverse
order GiNaC would output (e~1*e~0) as -(e~0*e~1).
JRG> e~0*(e~0*e~1)=e~1
JRG> e~0*e~1*e~0*e~1=-1
All that should be done by canonicalize_clifford() method. Just
remember that it should be called manually whenever you need it.
Best wishes,
Vladimir
--
Vladimir V. Kisil email: kisilv at maths.leeds.ac.uk
-- www: http://maths.leeds.ac.uk/~kisilv/
More information about the GiNaC-list
mailing list