Re: Applying restrictions on matrix multiplication
- To: mathgroup at smc.vnet.net
- Subject: [mg13615] Re: Applying restrictions on matrix multiplication
- From: Carl Woll <carlw at fermi.phys.washington.edu>
- Date: Fri, 7 Aug 1998 03:08:17 -0400
- Organization: University of Washington
- References: <6puih4$6th@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
Hi, One way to have Mathematica automatically set products to zero is to use upvalues. For example, if you wanted products of expressions with the head z to be set to zero, you could use the rule z /: a_z b_z := 0 A slight problem in your case is that you are working with subscripts, and so you can't associate the upvalues with E as E is too deep. So, you will need to associate upvalues with Subscript instead, as in Subscript /: Subscript[E,_] Subscript[E,_] := 0 Instead of the above rule, you could of course write out the rule using 2-D syntax. Carl Woll Dept of Physics U of Washington On 1 Aug 1998, Van Graves wrote: > I need some help applying restrictions on multiplying two matrices > within Mathematica. The elements contain expressions of Ex, Ey, Ez > (where E=greek letter sigma and the xyz are subscripts). In these > matrices, the E terms are assumed to be nearly zero, so I would like to > throw out any terms where two or more E's are multiplied together, thus > simplifying the resultant matrix before applying it with another one > (these are transformation matrices). > > If T01 and T12 are two 4x4 matrices, can I somehow place a restriction > on T01.T12 to get a simplified result? Or can I simplify the result > after it's calculated? > > Thanks for any help. > > *********** > Van Graves > Oak Ridge National Laboratory gravesvb at ornl.gov University of > Tennessee vgraves at utk.edu *********** > > >