Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2008

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

Search the Archive

Re: Constructing vector using table

  • To: mathgroup at smc.vnet.net
  • Subject: [mg90966] Re: Constructing vector using table
  • From: Jean-Marc Gulliet <jeanmarc.gulliet at gmail.com>
  • Date: Fri, 1 Aug 2008 02:59:12 -0400 (EDT)
  • Organization: The Open University, Milton Keynes, UK
  • References: <g6t0i8$3dq$1@smc.vnet.net>

Prateek K Jha wrote:

> I am trying to create a vector using "Table" in which I enter a
> function that depends on other functions. An excerpt from the code is:
> 
> u2[i_] := 1 + Log[\[CapitalPhi][[i]]];
> un[i_] :=
>   Switch[IntegerPart[i/(m + 1)], 0, u1n[i], 1, u2[i], 2, u2[i]];
> 
> U = Table[un[i], {i, 1, 3*m}] // MatrixForm;
> Dimensions[U]
> 
> Output:
> {1}
> 
> Everything runs fine and even the vector is generated when I see the
> form of U. But, I am not able to do any operations on this matrix
> (like inverse, transpose etc). Even the Dimensions[U] give me 1 while
> it should be 60.
> 
> Please help me through if you can. If I am not clear or you need more
> info, please let me know

MatrixForm[] is a wrapper from printing purpose only. The expression

     U = Table[un[i], {i, 1, 3*m}] // MatrixForm;

is equivalent to

     U = MatrixForm[Table[un[i], {i, 1, 3*m}]];

What you want is either,

     U = Table[un[i], {i, 1, 3*m}];
     MatrixForm[U]

or

     MatrixForm[U = Table[un[i], {i, 1, 3*m}];]

Regards,
-- Jean-Marc


  • Prev by Date: Re: Performance of Array Addition
  • Next by Date: Re: When is a List not a List?
  • Previous by thread: Re: Constructing vector using table
  • Next by thread: Re: Constructing vector using table