MathGroup Archive 2012

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

Search the Archive

Re: MatrixPower problem

  • To: mathgroup at smc.vnet.net
  • Subject: [mg124085] Re: MatrixPower problem
  • From: Ralph Dratman <ralph.dratman at gmail.com>
  • Date: Sun, 8 Jan 2012 04:26:15 -0500 (EST)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com
  • References: <201201071024.FAA19580@smc.vnet.net>

MatrixForm, as well as Column, Row, TableForm, and some others, are
really only for display. Their output cannot be calculated with, or at
least not in the same way as the original matrix.

I do think that should be mentioned more prominently in the Wolfram
documentation.

Just write

p =
{
{0, 1/2, 0, 1/2, 0},
{1/2, 0, 1/3, 0, 0},
{0, 1/2, 0, 1/2, 0},
{1/2, 0, 1/3, 0, 0},
{0, 0, 1/3, 0, 1}
};

MatrixForm[p]

e1 = {1, 0, 0, 0, 0};

Limit[MatrixPower[P, k].e1, k -> \[Infinity]]

and you should get the desired result.

You don't have to put the p array into a nice arrangement like that. I
just like the way it looks.

One other point: don't create a capitalized variable name like "P".
Always put the first letter of a new name in lower case, or you will
likely get your variables mixed up with Mathematica's reserved names
-- which all start with capital letters.

Good luck.

Ralph (or more safely, ralph)


On Sat, Jan 7, 2012 at 5:24 AM, Per R=F8nne <per at rqnne.invalid> wrote:
> I have defined the following matrix:
>
> P = {{0, 1/2, 0, 1/2, 0}, {1/2, 0, 1/3, 0, 0},
>       {0, 1/2, 0, 1/2, 0}, {1/2, 0, 1/3, 0, 0}, {0, 0, 1/3, 0, 1}}
>
> And the following vector:
>
> e1 = {1, 0, 0, 0, 0}
>
> I try to solve:
>
> Limit[MatrixPower[P, k].e1, k -> \[Infinity]]
>
> And get the correct result:
>
> Out[7] = {0, 0, 0, 0, 1}
>
> But if I write the first statement as:
>
> P = {{0, 1/2, 0, 1/2, 0}, {1/2, 0, 1/3, 0, 0},
>       {0, 1/2, 0, 1/2, 0}, {1/2, 0, 1/3, 0, 0}, {0, 0, 1/3, 0, 1}}
> //MatrixForm
>
> I will not only get a more readle Out-format of the matrix. My
> Mathematica 8.1 for Students will also deny to calculate what is
> demanded. It will just list
>
> Limit[MatrixPower[P, k].e1, k -> \[Infinity]]
>
> with P replaced with the contents of the 5*5 matrix.
>
> I simply don't understant why.
>
>
> The output I can be pasted as:
>
> At least I get the following output:
>
> Limit[MatrixPower[\!\(\*
> TagBox[
> RowBox[{"(", "", GridBox[{
> {"0",
> FractionBox["1", "2"], "0",
> FractionBox["1", "2"], "0"},
> {
> FractionBox["1", "2"], "0",
> FractionBox["1", "3"], "0", "0"},
> {"0",
> FractionBox["1", "2"], "0",
> FractionBox["1", "2"], "0"},
> {
> FractionBox["1", "2"], "0",
> FractionBox["1", "3"], "0", "0"},
> {"0", "0",
> FractionBox["1", "3"], "0", "1"}
> },
> GridBoxAlignment->{
>         "Columns" -> {{Center}}, "ColumnsIndexed" -> {},
>          "Rows" -> {{Baseline}}, "RowsIndexed" -> {}},
> GridBoxSpacings->{"Columns" -> {
> Offset[0.27999999999999997`], {
> Offset[0.7]},
> Offset[0.27999999999999997`]}, "ColumnsIndexed" -> {}, "Rows" -> {
> Offset[0.2], {
> Offset[0.4]},
> Offset[0.2]}, "RowsIndexed" -> {}}], "", ")"}],
> Function[BoxForm`e$,
> MatrixForm[BoxForm`e$]]]\), k].{1, 0, 0, 0, 0}, k -> \[Infinity]]
>
> --
> Per Erik R=F8nne
> http://www.RQNNE.dk
> Errare humanum est, sed in errore perseverare turpe
>



  • Prev by Date: Re: Visual C++ 2010 Express compiler not working with Mathematica 8.0.4
  • Next by Date: Re: ParametricPlot3D vs Reduce
  • Previous by thread: Re: MatrixPower problem
  • Next by thread: Re: MatrixPower problem