*To*: mathgroup@smc.vnet.net*Subject*: [mg11160] Re: [mg11103] exponential rule application*From*: "C. Woll" <carlw@u.washington.edu>*Date*: Mon, 23 Feb 1998 21:41:20 -0500

Hi John, Have you tried the command ComplexExpand? Part of the problem that Mathematica is having is that it doesn't know whether t is real or complex. ComplexExpand assumes that all parameters are real. Thus, ComplexExpand[MatrixExp[A t]] //Simplify returns what you want. Carl Woll Dept of Physics U of Washington On Sun, 22 Feb 1998, John Albert Horst wrote: > I'm trying to compute the following exponential of a matrix with > elements that are constants: > > A={{0,1},{-1,0}}; > MatrixExp[A*t] > > The answer can be shown to be {{Cos[t], Sin[t]},{-Sin[t],Cos[t]}} by > using the definition of the matrix exponential and expanding a few > terms in the series. However, MatrixExp[A*t]//Simplify returns the > following expression: > > {{(1/2*(1 + E^(2*I*t)))/E^(-(-I*t)), > (-(1/2)*I*(-1 + E^(2*I*t)))/E^(-(-I*t))}, > {(1/2*I*(-1 + E^(2*I*t)))/E^(-(-I*t)), > (1/2*(1 + E^(2*I*t)))/E^(-(-I*t))}} > > Clearly, we need to apply the simple rule that > > complexExpRule=Exp[a_*I*theta_]->Cos[a*theta]+I*Sin[a*theta] > > However, I can't seem to make this rule simplify the output of > MatrixExp[A*t]. For example, the following simple expression, > Exp[2*I*t]/.complexExpRule, returns, Exp[2*I*t], instead of, > Cos[2*t]+I*Sin[2*t]. Curiously, Exp[r*I*t]/.complexExpRule, returns, > Cos[r*t]+I*Sin[r*t], as we would hope. > > Any help would be appreciated. > John Albert Horst > Intelligent Systems Division > National Institute of Standards and Technology Bldg 220 Rm B-124 > Gaithersburg, MD 20899 > voice: (301)975-3430 > email: john.horst@nist.gov > internet: http://isd.cme.nist.gov/staff/horst/ > >