Re: Question about Simplify and related
- To: mathgroup at yoda.ncsa.uiuc.edu
- Subject: Re: Question about Simplify and related
- From: mbp at aurora.urich.edu (Mark B. Phillips)
- Date: Sat, 19 Jan 91 18:07:47 EST
> This is a question about Simplify and related objects. Below is > a Mma session in which a 3x3 orthogonal matrix (u) is formed. > > ... > > In fact I have gotten to the point below where one can show in a > couple of minutes with a paper and pencil that uutrans is indeed the > 3x3 unit matrix. > Sould all this be so hard to do, or am I missing something > simple and obvious? Part of the problem lies in that your simplification rules like si^2 + ci^2 -> 1 really need to to be applied at different times to different subexpressions. For example to simplify: c3^2 + c1^2 s3^2 + s1^2 s3^2 using only the rules si^2 + ci^2 -> 1 one needs to first factor s3^2 out of the 2nd two terms: c3^2 + s3^2( c1^2 + s1^2 ) apply s1^2 + c1^2 -> 1: c3^2 + s3^2 and then apply c3^2 + s3^2 -> 1: 1. Fortunately in this case the rules are simple enough to be written in a form which will completely eliminate a variable when applied. Using si^2 -> 1 - ci^2 works much better because it complelely eliminates si^2 from the expression: In[1]:= u={{c1 c2 - c3 s1 s2,c2 s1 + c3 c1 s2,s2 s3}, {-s2 c1 - c3 s1 c2, -s2 s1 + c3 c1 c2, c2 s3}, {s3 s1, -s3 c1, c3}} Out[1]= {{c1 c2 - c3 s1 s2, c2 s1 + c1 c3 s2, s2 s3}, > {-(c2 c3 s1) - c1 s2, c1 c2 c3 - s1 s2, c2 s3}, {s1 s3, -(c1 s3), c3}} In[2]:= uutrans = Expand[ u . Transpose[u] ] Out[2]= [[ lengthy output deleted ]] In[3]:= Expand[ uutrans /. {s1^2->1-c1^2, s2^2->1-c2^2, s3^2->1-c3^2} ] Out[3]= {{1, 0, 0}, {0, 1, 0}, {0, 0, 1}} There are other case, however, where the simplification rules are not so simple, in which I have no idea how to proceed. Mark Phillips mbp at thales.urich.edu Mathematics and Computer Science University of Richmond Richmond, Virginia 23173 USA phone: (804) 289-8090 fax: (804) 289-8943