[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 V. Kisil     email: kisilv at maths.leeds.ac.uk
--                      www: http://maths.leeds.ac.uk/~kisilv/

More information about the GiNaC-list mailing list