Re: Matrices as operators
- To: mathgroup at smc.vnet.net
- Subject: [mg123030] Re: Matrices as operators
- From: "David Park" <djmpark at comcast.net>
- Date: Mon, 21 Nov 2011 04:26:44 -0500 (EST)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- References: <20684718.1421.1321782772955.JavaMail.root@m06>
In this case there is a simple answer. Just use RotationMatrix. RotationMatrix[t] {{Cos[t], -Sin[t]}, {Sin[t], Cos[t]}} But if you had an operator that wasn't built in, then Presentations has a routine, PushOnto, that will push arguments onto specific forms and is much more convenient than Through. << Presentations` {{Cos, -Sin}, {Sin, Cos}}[t]; % // PushOnto[ {Sin, Cos}] {{Cos[t], -Sin[t]}, {Sin[t], Cos[t]}} David Park djmpark at comcast.net http://home.comcast.net/~djmpark/ From: Chris Young [mailto:cy56 at comcast.net] I'd like to be able to abbreviate matrices such as rotation matrices so that I don't have to repeat the argument. This way I can pass in more complicated arguments and it also shows the structure of the transformation more clearly. Through[( { {Cos, -Sin}, {Sin, Cos} } )[=CE=B8]] will get me partway there: Out: {{Cos, -Sin}[=CE=B8], {Sin, Cos}[=CE=B8]} I have to apply Thread and Through again to finally get what I want: In: Thread[Through[{{Cos, -Sin}[=CE=B8], {Sin, Cos}[=CE=B8]}]] Out: {{Cos[=CE=B8], (-Sin)[=CE=B8]}, {Sin[=CE=B8], Cos[=CE=B8]}} Is there a shortcut way to do this all in one step? Thanks very much for any help. Chris Young cy56 at comcast.net