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