Re: Telling Mathematica that a symbol is going to be a List?

*To*: mathgroup at smc.vnet.net*Subject*: [mg50825] Re: [mg50817] Telling Mathematica that a symbol is going to be a List?*From*: DrBob <drbob at bigfoot.com>*Date*: Wed, 22 Sep 2004 04:52:03 -0400 (EDT)*References*: <200409220411.AAA18738@smc.vnet.net>*Reply-to*: drbob at bigfoot.com*Sender*: owner-wri-mathgroup at wolfram.com

How about one of these strategies? m[a_,b_,c_]:={{a,0,0},{0,b,0},{0,0,c}} m[d1,d2,d3] {{d1,0,0},{0,d2,0},{0,0,d3}} m[{a_,b_,c_}]:={{a,0,0},{0,b,0},{0,0,c}} m@{d1,d2,d3} {{d1,0,0},{0,d2,0},{0,0,d3}} Or use the built-in function: DiagonalMatrix@{d1,d2,d3} {{d1,0,0},{0,d2,0},{0,0,d3}} Bobby On Wed, 22 Sep 2004 00:11:55 -0400 (EDT), AES/newspost <siegman at stanford.edu> wrote: > I want to define a function containing parameters that are going to be > elements in a list, e.g. something like > > m := { { d[[1]], 0, 0}, {0, d[[2]], 0}, {0, 0, d[[3]]} > > but not define the list of values of d until later (and not put the > parameters in as explicit arguments of m just to keep the appearance > less cluttered and typing easier). > > If I then give an input line > > m /. {d -> {d1, d2, d3} } // MatrixForm > > I get "Part::partd" errors -- but the matrix then displays correctly. > > I can of course just Off[] the errors -- but is there a better way. > > > > -- DrBob at bigfoot.com www.eclecticdreams.net

**References**:**Telling Mathematica that a symbol is going to be a List?***From:*AES/newspost <siegman@stanford.edu>