The following files are provided in this package: README.txt (this file) RUGmatrices.m pivectors.m Gmatrix.m -- RUGmatrices.m pivectors.m These two files are used to compute pi vectors of a QBD process. Here, the generator matrix of the QBD process is: [ A1{1} A0{1} ] [ A2{2} A1{2} A0{2} ] [ A2{3} A1{3} A0{3} ] [ : : ] [ A2{n} A1{n} A0{n} ] [ A2{n} A1{n} A0{n} ] [ : : ] Note that the QBD process repeats after level n. We define cells, A0, A1, and A2: A0 = {A0{1} A0{2} ... A0{n}} A1 = {A1{1} A1{2} ... A1{n}} A2 = {A2{1} A2{2} ... A2{n}}, Example: Consider the QBD process below: ----1---> ----1---> [1] [2] <---2---- <---2---- ^ | ^ | | | | | 3 3 3 3 | | | | | v | v ----1---> ----1---> [1] [2] <---2---- <---2---- A0, A1, A2 are given by: A0{1} = [1 0; 0 1]; A0{2} = A0{1}; A2{2} = [2 0; 0 2]; A1{1} = [-4 3; 3 -4]; A1{2} = [-6 3; 3 -6]; Thus, n = 2; Let epsilon = 1e-6; Now, we can compute pi vectors, pi: [R,U,G] = RUGmatrices(A0,A1,A2,n,epsilon); [pi,meannum] = pivectors(A0,A1,A2,R,U{1},2); The output is pi{1} = [0.25 0.25]; pi{2} = [0.125 0.125]; If you need pi{i} for i>2, pi{3} = pi{2} * R{2} = [0.0625 0.0625]; pi{4} = pi{3} * R{3} = [0.03125 0.03125]; : : Gmatrix.m is used to compute G matrix of the repeating part in RUGmatrices.m