octave:2> P=rand(4); octave:3> [V,D]=eig(P') V = Columns 1 through 3: 0.48430 + 0.00000i 0.39304 + 0.00000i -0.67303 + 0.00000i 0.54765 + 0.00000i -0.18000 + 0.00000i -0.16537 + 0.24339i 0.50312 + 0.00000i -0.65388 + 0.00000i 0.05665 - 0.14688i 0.46087 + 0.00000i 0.62093 + 0.00000i 0.65914 + 0.03472i Column 4: -0.67303 - 0.00000i -0.16537 - 0.24339i 0.05665 + 0.14688i 0.65914 - 0.03472i D = Diagonal Matrix Columns 1 through 3: 2.24101 + 0.00000i 0 0 0 -0.24403 + 0.00000i 0 0 0 0.39817 + 0.18400i 0 0 0 Column 4: 0 0 0 0.39817 - 0.18400i octave:4> octave:4> [V,D]=eig(P'); octave:5> V V = Columns 1 through 3: 0.48430 + 0.00000i 0.39304 + 0.00000i -0.67303 + 0.00000i 0.54765 + 0.00000i -0.18000 + 0.00000i -0.16537 + 0.24339i 0.50312 + 0.00000i -0.65388 + 0.00000i 0.05665 - 0.14688i 0.46087 + 0.00000i 0.62093 + 0.00000i 0.65914 + 0.03472i Column 4: -0.67303 - 0.00000i -0.16537 - 0.24339i 0.05665 + 0.14688i 0.65914 - 0.03472i octave:6> D D = Diagonal Matrix Columns 1 through 3: 2.24101 + 0.00000i 0 0 0 -0.24403 + 0.00000i 0 0 0 0.39817 + 0.18400i 0 0 0 Column 4: 0 0 0 0.39817 - 0.18400i octave:7> P'*V(:,2) ans = -0.095914 0.043925 0.159569 -0.151528 octave:8> V(:,2)*D(2,2) ans = -0.095914 0.043925 0.159569 -0.151528 octave:9> V(:,1)'*P ans = 1.0853 1.2273 1.1275 1.0328 octave:10> D(1,1)*V(:,1) ans = 1.0853 1.2273 1.1275 1.0328 octave:11> D(1,1)*V(:,1)' ans = 1.0853 1.2273 1.1275 1.0328 octave:12> V(:,3)'*P ans = Columns 1 and 2: -0.267977 + 0.123836i -0.110628 - 0.066480i Columns 3 and 4: 0.049584 + 0.048059i 0.256058 - 0.135105i octave:13> D(3,3)*V(:,3)' ans = Columns 1 and 2: -0.267977 - 0.123836i -0.021062 - 0.127337i Columns 3 and 4: -0.004468 + 0.068908i 0.268835 + 0.107457i octave:14> V(:,3).'*P ans = Columns 1 and 2: -0.267977 - 0.123836i -0.110628 + 0.066480i Columns 3 and 4: 0.049584 - 0.048059i 0.256058 + 0.135105i octave:15> D(3,3)*V(:,3).' ans = Columns 1 and 2: -0.267977 - 0.123836i -0.110628 + 0.066480i Columns 3 and 4: 0.049584 - 0.048059i 0.256058 + 0.135105i octave:16> edit randstoc octave:17> P=randstoc(4) P = 0.019701 0.513108 0.167136 0.300055 0.343057 0.078423 0.139523 0.438997 0.196655 0.383988 0.336167 0.083190 0.027543 0.432081 0.062907 0.477469 octave:18> sum(P,2) ans = 1.0000 1.0000 1.0000 1.0000 octave:19> [V,D]=eig(P'); octave:20> D D = Diagonal Matrix 1.0000000 0 0 0 0 -0.4166724 0 0 0 0 0.0041067 0 0 0 0 0.3243255 octave:21> V(:,1) ans = -0.28123 -0.59637 -0.26290 -0.70437 octave:22> v=V(:,1)' v = -0.28123 -0.59637 -0.26290 -0.70437 octave:23> v=v/sum(v) v = 0.15244 0.32326 0.14250 0.38180 octave:24> sum(v) ans = 1.00000 octave:25> v*P ans = 0.15244 0.32326 0.14250 0.38180 octave:26> [v1,iter,stima]=invariantPotenze(P,1e-6,100) v1 = 0.15244 0.32326 0.14250 0.38180 iter = 15 stima = 6.5974e-07 octave:27> b=[0,0,0,0]; octave:28> b/(P-eye(4)) warning: matrix singular to machine precision, rcond = 1.08101e-17 ans = 0 0 0 0 octave:29> [b,1]/([P-eye(4),ones(4,1)]) ans = 0.15244 0.32326 0.14250 0.38180 octave:30> P=[0,1;1,0] P = 0 1 1 0 octave:31> eig(P') ans = -1 1 octave:32> invariantPotenze(P,1e-4,100) warning: Impossibile raggiungere la tolleranza richiesta warning: entro il numero massimo di iterazioni consentito. ans = 0.62790 0.37210 octave:33> invariantPotenze(P,1e-4,100) warning: Impossibile raggiungere la tolleranza richiesta warning: entro il numero massimo di iterazioni consentito. ans = 0.61782 0.38218 octave:34> invariantPotenze(P,1e-4,100) warning: Impossibile raggiungere la tolleranza richiesta warning: entro il numero massimo di iterazioni consentito. ans = 0.0077934 0.9922066 octave:35> invariantPotenze(P,1e-4,100) warning: Impossibile raggiungere la tolleranza richiesta warning: entro il numero massimo di iterazioni consentito. ans = 0.30967 0.69033 octave:36> invariantPotenze(P,1e-4,100) warning: Impossibile raggiungere la tolleranza richiesta warning: entro il numero massimo di iterazioni consentito. ans = 0.68083 0.31917 octave:37> P=[0,1;1,0] P = 0 1 1 0 octave:38> [0,0,1]/([P-eye(2),ones(2,1)]) ans = 0.50000 0.50000 octave:39> diary off