MathGroup Archive 2009

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

Search the Archive

Re: Abstract Symbolic Matrix operations in Mathematica

  • To: mathgroup at smc.vnet.net
  • Subject: [mg96764] Re: Abstract Symbolic Matrix operations in Mathematica
  • From: dh <dh at metrohm.com>
  • Date: Tue, 24 Feb 2009 05:46:01 -0500 (EST)
  • References: <gnq6qn$86g$1@smc.vnet.net>


Hi,

as far as I know, mma considers a matrix as a bunch of elements. Those 

may be symbolic, but not the matrix itself. This leaves two avenues to 

proceed. You may either setup a matrix with explicit dimensions and 

symbolic elements (using e.g. Array). Or you may define a new data type, 

where you have to specify the rules yourself. E.g, assuming we call a 

symbolic matrix with name x: SymMat[x]. The rules:

Unprotect[Transpose];

Transpose[a_SymMat. b_SymMat] := Transpose[b].Transpose[a]

Transpose[a_SymMat + b_SymMat] := Transpose[a] + Transpose[b]

etc.

Here I changed the definition of Transpose for simplicity. However, if 

you are not sure what you are doing, it would be better to define a new 

operator (e.g. myTranspose).

Then,f you the say:

Transpose[SymMat[x].SymMat[y]]

you will get:

Transpose[SymMat[y]].Transpose[SymMat[x]]

hope this helps, Daniel







dvshin wrote:

> Can anybody tell me how to do operations on matrix equations without computing on the element level in Mathematica? In other words, for example, if I have two "abstract" matrices A and B, what should I type to verify the following:

> 

> (AT)^T = B^T A^T

> 

> Would appreciate any thoughts.

> 




  • Prev by Date: Re: Abstract Symbolic Matrix operations in Mathematica
  • Next by Date: Re: FullGraphics of Graphics3D
  • Previous by thread: Re: Abstract Symbolic Matrix operations in Mathematica
  • Next by thread: Mathematica problem