Re: Re: Re: Questions regarding MatrixExp, and its usage
- To: mathgroup at smc.vnet.net
- Subject: [mg63564] Re: [mg63390] Re: [mg63355] Re: [mg63335] Questions regarding MatrixExp, and its usage
- From: "Michael Chang" <michael_chang86 at hotmail.com>
- Date: Thu, 5 Jan 2006 03:12:39 -0500 (EST)
- Sender: owner-wri-mathgroup at wolfram.com
Hi, Happy New Year to all! :) >From: Andrzej Kozlowski <akoz at mimuw.edu.pl> To: mathgroup at smc.vnet.net >To: Daniel Lichtblau <danl at wolfram.com>, mathgroup <mathgroup at smc.vnet.net> >CC: Michael Chang <michael_chang86 at hotmail.com>, Pratik Desai ><pdesai1 at umbc.edu> >Subject: [mg63564] Re: [mg63390] Re: [mg63355] Re: [mg63335] Questions regarding >MatrixExp, and its usage >Date: Thu, 29 Dec 2005 21:05:55 +0900 > >*This message was transferred with a trial version of CommuniGate(tm) Pro* >>>>>> >>>>>>In this case, while I am not 100% sure, I tend to believe the >>>>>>situation >>>>>>to be quite analogous. We are interested in the equation >>>>>> >>>>>>MatrixExp[B*p]==MatrixPower[MatrixExp[B],p] >>>>> >>>>> >>>>>Many thanks to Pratik, Daniel, and Andrzej for their very insightful >>>>>and >>>>>expert feedback! :) >>>>> >>>>>>I believe this will hold for real matrices B and (probably) all >>>>>>complex >>>>>>p but will not hold in general. In fact I believe most what I wrote >>>>>>above can be generalised to this case, although the statements and >>>>>>proofs would be more complicated. >>>>> >>>>> >>>>>Hmm ... actually, from the sample example listed below, I don't >>>>>believe >>>>>that it will hold *in general* for real B *and* real p: >>>>> >>>>>In[1]: params={theta->Pi^Pi,p->Sqrt[2]}; >>>>>In[2]: B=theta {{Cot[theta],Csc[theta]},{-Csc[theta],-Cot[theta]}}; >>>>>In[3]: test1=Simplify[MatrixExp[B p]/.params]; >>>>>In[4]: test2=Simplify[MatrixPower[MatrixExp[B],p]/.params]; >>>>>In[5]: Simplify[test1 == test2] >>>>>Out[5]: False >>>>> >>>>>Daniel has suggested that for (square matrix) B and (scalar) p both >>>>>being >>>>>real-valued, this only will hold if B is positive definite (although I >>>>>suspect that this also may hold with B being positive semi-definite >>>>>too). >> >>What I suggested, or should have in case I misworded it, is that positive >>definiteness is a sufficient assumption for the identity to hold. It may >>hold in other cases as well. >> >>It will hold if >> >>(1) p is integer >> >>or >> >>(2) B (in notation above) is positive definite >> >>(or, I think) >> >>(3) -1<=p<=1. >> >>A case where it perhaps does not hold (I'm trvelling and on the far side >>of the WRI firewall, hence cannot check this): >> >>p = 3/2, B = {{0,-1}, {1,0}} or perhaps the negative thereof. The idea >>being to use a matrix that emulates complex multiplication by Sqrt [-1]. > >Why, of course! When I wrote "will hold for real matrices B" I was just >being stupid and thinking of "matrices with real eigenvalues". What I >really meant was normal matrices with real eigenvalues, which I think is >probably a sufficient condition, since it seems that in this case the >condition will hold if it holds for the eigenvalues. Is that right? > >I was in a great hurry writing all this since out daughter is visiting us >from Germany for the holidays and we are constantly going out or going on >trips and I can only spare a few minutes at a time for these messages. >But let me quickly explain what I meant when I wrote about Jordan >canonical forms. If my memory does not fail me there is the following >standard procedure for defining f(A) for A is any complex matrix where >f[x] is any complex function for which certain derivatives exists. Take >the Jordan decomposition of A. Let its Jordan canonical form be > >A = Inverse[S]. Sum[B_i,{i,1,m}].S > >where the B_i are the Jordan blocks. We shall define f[A] as the obvious >sum once we have defined f[B_i]. So we need only define f [B_i]. Suppose >the minimal polynomial of B_i is p(x) = (x-r)^k. Then we define f[B_i] as >the following matrix Hmm ... >Table[KroneckerDelta[i ² j, True] *Derivative[j - i][f][r]/(j - i)!, { i, >1, k}, {j, 1, k}] One symbol doesn't appear to be quite right on my screen (or perhaps my understanding fails me!), but in the above line, should this be: KroneckerDelta[i<=j,True] (a 'funny' symbol seems to appear in my message between the i and j) and should the Derivative be with respect to 'x', evaluated at 'r' (maybe that's what's implied, but I just wanted to make sure that I'm not mis-interpretating this line as the Derivative with respect to 'r')? >The important thing is that all the derivatives required to define the >above matrices should exist! >If they do f[A] will be well defined. So, if I am right, taking f [x_]:= >x^z ought to give the definition of power of a matrix for provided all the >above derivatives are well defined. If z is integer certainly here will be >no problems, and the definition will agree with the usual one. Perhaps I do *NOT* understand, but here's an example that I considered with regards to the above definition -- assume that there is simply one Jordan block, and that A=B (S=I), with A = B = {{0,1,0},{0,0,1},{0,0,0}}; Suppose that we desire to find Exp[8 A] (MatrixExp[8 A]); the minimal polynomial in x is x^3, and for i==j, I can see that the diagonal entries will be Exp[0]==1, and that Exp[A] should be upper triangular -- but the upper off-diagonal terms don't seem to be quite right (using the above formula ... for instance, I don't see how I can get the anticipated '8' and '8^2/2' terms) ... Have I erred here? >Andrzej Again, my sincere thanks to everyone (Andrzej, Daniel, and Pratik) for all of your insight and help! Regards, Michael
- Follow-Ups:
- Re: Re: Re: Re: Questions regarding MatrixExp, and its usage
- From: Andrzej Kozlowski <akoz@mimuw.edu.pl>
- Re: Re: Re: Re: Questions regarding MatrixExp, and its usage