13
$\begingroup$

Does anyone have a recommendation for software which can efficiently calculate the Baker-Campbell-Hausdorff series in classical Lie algebras?

Right now, I have a problem which boils down to understanding Baker-Campbell-Hausdorff with respect to a basis in su(2), and this seems like the kind of thing Sage or Mathematica should be able to handle. However, I haven't had to use computer algebra packages for Lie theory before, so I would love to be pointed in the right direction.

Many thanks,

Jesse

$\endgroup$
7
  • 2
    $\begingroup$ For $SU(2)$, rather than using BCH, why not just exponentiate the matrices, multiply them and compute the logarithm? The logarithm is the most involved step, but it basically amounts to computing the eigenvalues and eigenvectors. This is a relatively straightforward task. Do you want the answer to be in a particular form? $\endgroup$ Nov 2, 2011 at 17:35
  • $\begingroup$ I suppose in principle there's a nice closed-form answer if you use the above approach. You can determine the axis and angle of rotation by solving some linear and a quadratic equation. $\endgroup$ Nov 2, 2011 at 17:40
  • $\begingroup$ I've been told that LiE is a good software package for many Lie-theoretic problems. I've never used it myself, so I'll leave this as a comment, rather than an answer. $\endgroup$ Nov 2, 2011 at 18:02
  • $\begingroup$ @Ryan, SU(2) is a warm-up for SU(n), so while I could do things by hand here, I figured it's worth my while to find a good computer program now. Theo, thanks for the mention on LiE. I'll take a look at it. $\endgroup$ Nov 2, 2011 at 19:13
  • 1
    $\begingroup$ arxiv.org/abs/math-ph/9905012 $\endgroup$ Nov 3, 2011 at 0:10

3 Answers 3

3
$\begingroup$

There is a quite comprehensive package for Lie algebras in Maple. It is developed by Ian Anderson (from Utah State not Jethro Tull).

$\endgroup$
3
$\begingroup$

You don't need any packages to be able to do that in Mathematica for small Lie algebras such as su(2), probably not in SAGE either (I'm familiar with Mathematica). Anyway, Basically you just need to use the MatrixExp function and solve some equations. E.g. define

$M_1 = \text{MatrixExp}\left[\sum\limits_i \alpha^i X_i\right]$ and $M_2 =\prod\limits_i\text{MatrixExp}\left[\beta^i X_i\right]$

You may get transcendental equations, but you can simplify things by hand. Here's $M_2$ explicitly (just pick a basis $X_i$):

$\text{M2}=\text{MatrixExp}[X[1]\alpha [1]].\text{MatrixExp}[X[2]\alpha [2]].\text{MatrixExp}[X[3]\alpha [3]]\text{//}\text{FullSimplify}$

$\endgroup$
1
  • $\begingroup$ umm and I mean of course then solve the equation $M_1 = M_2$ for $\alpha$'s or $\beta$'s... $\endgroup$
    – H. Arponen
    Nov 3, 2011 at 9:32
1
$\begingroup$

I don't have a first-hand experience, but hope this is helpful anyway. K.Engo, A.Marthinsen and H.Munthe-Kaas have done a lot of work on numerical methods for solving ODE on manifolds (and Lie groups in particular). See for example their paper ''DiffMan: an object-oriented Matlab toolbox for solving differential equations on manifolds'', Appl. Numerical Mathematics, 39 (2001), p.323 where they discuss a particular package.

$\endgroup$
1
  • $\begingroup$ There is the paper K. Engø, "On the BCH-formula in so(3)", BIT Numerical Mathematics, 41, number 3, 2001, pp629-632. Its technique is directly applicable (more simply) to $\exp:su(2)\to SU(2)$, you simply put the $SU(2)$ Rodrigues formula instead of the $SO(3)$ one into Engo's procedure. $\endgroup$ Mar 28, 2014 at 1:10

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.