MathGroup Archive 1998

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: exponential rule application



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/
> 
> 




  • Prev by Date: RE: Help
  • Next by Date: RE: Question about Mathematica
  • Prev by thread: exponential rule application
  • Next by thread: Re: exponential rule application