Re: Change of Basis function

*To*: mathgroup at smc.vnet.net*Subject*: [mg68990] Re: [mg68949] Change of Basis function*From*: "Carl K. Woll" <carlw at wolfram.com>*Date*: Sat, 26 Aug 2006 02:04:27 -0400 (EDT)*References*: <200608250934.FAA09206@smc.vnet.net>*Sender*: owner-wri-mathgroup at wolfram.com

David Boily wrote: > I would like to know if there is a function capable of giving as output > the representation of a vector in a given basis. For example: > > FunctionX[{1,2,3}, {{1,2,0},{0,1,0},{0,0,1}}] > > (where the first argument is the vector and the second the basis) > > would yield > > {1,0,3} > > and > > FunctionX[f x1 - b x2 + x3 - x2, {x1,x2,x3}] > > would yield > > {f, -b-1, 1} > > I'm more interested in the second case, obviously, because the first one > can be achieved with a simple matrix multiplication. > > David Boily > Center for Intelligent Machines > Mcgill University To answer your second question, you can use LinearEquationsToMatrices from the LinearAlgebra`MatrixManipulation` package, or just use Developer`LinearExpressionToMatrix directly: In[1]:= Developer`LinearExpressionToMatrix[f x1-b x2+x3-x2,{x1,x2,x3}] Out[1]= {{{f,-b-1,1}},{0}} Carl Woll Wolfram Research

**References**:**Change of Basis function***From:*David Boily <dsboily@fastmail.ca>