Re: Hankel matrix?
- To: mathgroup at smc.vnet.net
- Subject: [mg59374] Re: Hankel matrix?
- From: "Carl K. Woll" <carlw at u.washington.edu>
- Date: Sun, 7 Aug 2005 03:47:05 -0400 (EDT)
- Organization: University of Washington
- References: <dd1i8s$190$1@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
"Thomas Schmelzer" <thomas.??? at balliol.ox.ac.uk> wrote in message news:dd1i8s$190$1 at smc.vnet.net... > Hello, > given a list of coefficents I would like to create a Hankel matrix. > > Let's say > > 1/Gamma(z)=sum c_k z^k > > I am now interested in the coefficents c_4,...c_100 (numerical > approximations are fine) > > I would like to generate the Hankel matrix > > c_4 c_5 > > c_5 > > c_6 > > c_7 > > etc. > > How do I have to proceed in Mathematica? It seems there is nothing to > build > a Hankel matrix with. > Thanks a lot > Thomas > > Thomas, There is a function HankelMatrix for doing what you want in LinearAlgebra`MatrixManipulation`, which you can access by executing Needs["LinearAlgebra`MatrixManipulation`"] You can find information about HankelMatrix in the help browser or by executing ?HankelMatrix Alternatively, you could use Partition to construct the matrix yourself. Shrinking your example a bit, the antidiagonals are c4, c5, ..., and you can construct your HankelMatrix using In[3]:= Partition[{c4,c5,c6,c7,c8,c9,c10},4,1]//TableForm//OutputForm Out[3]//OutputForm= c4 c5 c6 c7 c5 c6 c7 c8 c6 c7 c8 c9 c7 c8 c9 c10 If your antidiagonals are instead {c4, ..., c100}, then use Partition[{c4,..., c100}, matrixwidth, 1] where matrixwidth is the desired width of your matrix. Carl Woll Wolfram Research