MathGroup Archive 2005

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

Search the Archive

Re: Re: Questions regarding MatrixExp, and its usage

  • To: mathgroup at smc.vnet.net
  • Subject: [mg63362] Re: [mg63355] Re: [mg63335] Questions regarding MatrixExp, and its usage
  • From: Pratik Desai <pdesai1 at umbc.edu>
  • Date: Mon, 26 Dec 2005 04:59:24 -0500 (EST)
  • References: <200512250719.CAA01655@smc.vnet.net>
  • Sender: owner-wri-mathgroup at wolfram.com

Michael Chang wrote:

>Hi Pratik,
>
>  
>
>>From: Pratik Desai <pdesai1 at umbc.edu>
To: mathgroup at smc.vnet.net
>
>>To: Michael Chang <michael_chang86 at hotmail.com>,        
>>Subject: [mg63362] [mg63355] Re: [mg63335] Questions regarding MatrixExp, and its usage
>>Date: Sat, 24 Dec 2005 11:49:02 -0500
>>
>>Michael Chang wrote:
>>
>>    
>>
>>>Hi Pratik,
>>>
>>>Many thanks for your response and help!
>>>
>>>My only concern is about the usage of MatrixPower -- all of the 
>>>Mathematica online documentation and examples using this function seem to 
>>>indicate that it is only valid for an *integer* power p.
>>>
>>>Since MatrixExp[aMatrix,p] exists (and is unique) for all square "aMatrix" 
>>>values and any *complex* value of "p", I guess that I began wondering 
>>>under what conditions this might be equal to
>>>
>>>  MatrixPower[MatrixExp[aMatrix],p]
>>>
>>>?  Perhaps mathematically this only holds for *integer* values of p?  I 
>>>don't know ...
>>>
>>>Anyways, many thanks again, and Happy Holidays!
>>>
>>>Regards,
>>>
>>>Michael
>>>
>>>      
>>>
>>>>From: Pratik Desai <pdesai1 at umbc.edu>
To: mathgroup at smc.vnet.net
>>>>        
>>>>
>>>>To: "michael_chang86 at hotmail.com" <michael_chang86 at hotmail.com>
>>>>Subject: [mg63362] [mg63355] Re: [mg63335] Questions regarding MatrixExp, and its usage
>>>>Date: Sat, 24 Dec 2005 09:30:52 -0500
>>>>
>>>>michael_chang86 at hotmail.com wrote:
>>>>
>>>>        
>>>>
>>>>>Hi,
>>>>>
>>>>>For any arbitrary (possibly complex-valued) square matrix A,
>>>>>Mathematica enables the computation of the matrix exponential of A via
>>>>>
>>>>>In[1]:  A={{ some square matrix}};
>>>>>In[2]:  expA=MatrixExp[A];
>>>>>
>>>>>I was therefore wondering if
>>>>>
>>>>>MatrixExp[A p]==(MatrixExp[A]^p)
>>>>>
>>>>>where 'p' is an arbitrary complex number, and the '^' operator is my
>>>>>attempt to denote the matrix power, and *not* an element-by-element
>>>>>power for each individual matrix entry.  Or does such an expression
>>>>>only hold for real-valued square A matrices?  Or am I completely lost
>>>>>here ...?
>>>>>
>>>>>As usual, any and all help would be greatly appreciated!
>>>>>
>>>>>Regards,
>>>>>
>>>>>Michael
>>>>>
>>>>>
>>>>>
>>>>>          
>>>>>
>>>>How about MatrixPower
>>>>matx[A_?MatrixQ, p_]=MatrixPower[MatrixExp[A], p]
>>>>
>>>>
>>>>Hope this helps
>>>>
>>>>Pratik
>>>>
>>>>
>>>>
>>>>
>>>>        
>>>>
>>>      
>>>
>>You will never know unless you try :-)
>>In[10]:=
>>p=Random[]+Pi*I
>>MatrixPower[MatrixExp[IdentityMatrix[3]],p]//Chop//InputForm
>>
>>Out[10]=
>>0.982433\[InvisibleSpace]+3.14159 \[ImaginaryI]
>>
>>Out[11]//InputForm=
>>{{-2.670947256395083, 0, 0}, {0, -2.670947256395083, 0}, {0, 0, 
>>-2.670947256395083}}
>>
>>In[33]:=
>>MatrixExp[IdentityMatrix[3],p]//Chop//InputForm
>>
>>Out[33]//InputForm=
>>{{-2.6709472563950825, 0, 0}, {0, -2.6709472563950825, 0}, {0, 0, 
>>-2.6709472563950825}}
>>
>>I think in my experience with mathematica if there are some limitation with 
>>a particular function, the documentation always seems to highlight it 
>>somewhere, and I did not see any explicit disclaimers regarding the 
>>limitation for MatrixPower only working with integers. To be perfectly 
>>honest, I don't know why In[33] works perhaps someone else on the forum can 
>>help
>>
>>
>>
>>Pratik
>>
>>Happy Holidays to you!
>>
>>PS: I hope you don't mind my posting your reply on the forum
>>
>>--
>>Pratik Desai
>>    
>>
>
>Many thanks for your help again!  :)
>
>Here's an example that has me concerned:
>
>In[1]: params={theta->Pi^Pi,p->Sqrt[2]};
>In[2]: aa=theta {{Cot[theta],Csc[theta]},{-Csc[theta],-Cot[theta]}};
>In[3]: test1=Simplify[MatrixExp[aa p]/.params];
>In[4]: test2=Simplify[MatrixPower[MatrixExp[aa],p]/.params];
>In[5]: N[test1-test2]
>Out[5]: {{-0.230217 + 0. \[ImaginaryI], -2.06142 + 0. \[ImaginaryI]}, {
>    2.06142\[InvisibleSpace] + 0. \[ImaginaryI], 1.12075\[InvisibleSpace] + 
>\
>0. \[ImaginaryI]}}
>
>So ... assuming that all intermediate calculations are done properly, and 
>that I haven't done anything 'improper', it appears that, in general:
>
>   MatrixExp[aMatrix p] != MatrixPower[MatrixExp[aMatrix],p]
>
>for 'p' an arbitrary real number; it only seems to hold for p an integer ... 
>Does this seem reasonable?  I'm somewhat mathematically 'challenged', 
>although perhaps this is 'intuitive' to others ...
>
>Happy holidays, and joyeuses fêtes!
>
>Regards,
>
>Michael
>
>
>  
>
I think mathematically n  in MatrixPower has to be an integer, refer to
http://mathworld.wolfram.com/MatrixPower.html

Hope this helps

Pratik




  • Prev by Date: preparing multiple choice questions
  • Next by Date: Re: Re: Questions regarding MatrixExp, and its usage
  • Previous by thread: Re: Questions regarding MatrixExp, and its usage
  • Next by thread: Re: Re: Questions regarding MatrixExp, and its usage