Question about Simplify and
- To: mathgroup at yoda.ncsa.uiuc.edu
- Subject: Question about Simplify and
- From: Kevin McIsaac <Kevin_McIsaac>
- Date: 22 Jan 91 13:20:26
SUBJECT: Question about Simplify and
There is a simple method in Mma to solve this problem
==========
This is a question about Simplify and related objects. Below is
a Mma session in which a 3x3 orthogonal matrix (u) is formed. (It is
actually the Eulerian angle matrix.) To check that I had entered the
matrix elements correctly, I multiplied the matrix by its transpose to
confirm that the result is the 3x3 unit matrix. I found it surprisingly
difficult to carry this through, and in fact was only partially
successful. What is shown below is a subset of many things I tried. To
go any further I seem to have to rather laboriously extract pieces of
the various matrix elements and work with them. 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?
Paul Schatz
University of Virginia
=========
You need to use algebraic rules instead of a simple substitution. The following
will solve the problem in a couple of lines.
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}}
uutrans=[u.Transpose[u]
rules = AlgebraicRules[{c1^2 + s1^2 == 1, s2^2+c2^2 == 1, s3^2+c3^2 == 1}]
Map[ (# /. rules)&, uutrans, {2}]