In [1]:
import platform
platform.platform()


Out[1]:
'Darwin-13.3.0-x86_64-i386-64bit'

In [2]:
import sys
print sys.version


2.7.8 (default, Jul  2 2014, 10:14:46) 
[GCC 4.2.1 Compatible Apple LLVM 5.1 (clang-503.0.40)]

In [3]:
import numpy
numpy.__version__


Out[3]:
'1.8.1'

In [4]:
# Default values: N=27, epsilon=1e-2, move='sequential', tolerance=1e-2
%run unittest_mc_compute_stationary.py


test_left_eigen_vec (__main__.TestComputeStationary) ... ok
test_markov_matrix (__main__.TestComputeStationary) ... ok
test_nonnegative (__main__.TestComputeStationary) ... FAIL
test_sum_one (__main__.TestComputeStationary) ... 
N = 27 , epsilon = 0.01 

v =
[ -1.80778809e-02  -2.45277781e-03  -1.60231716e-04  -6.70987087e-06
  -2.02307664e-07  -4.67645846e-09  -8.61657871e-11  -1.29886908e-12
  -1.62059348e-14  -6.12789737e-17  -7.10381353e-17  -8.20296809e-17
  -9.45029769e-17  -1.08779604e-16  -1.25281548e-16  -1.44569891e-16
  -1.66831270e-16  -1.17721634e-16   8.30861752e-15   8.04483364e-13
   6.40581297e-11   4.24921050e-09   2.30616264e-07   9.97666012e-06
   3.30892561e-04   7.90171435e-03   1.20957012e-01   8.91497977e-01] 

TOL = 0.01 

ok

======================================================================
FAIL: test_nonnegative (__main__.TestComputeStationary)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/oyama/Dropbox/Documents/Teaching/Zemi/2014/test_mc_compute_stationary/unittest_mc_compute_stationary.py", line 129, in test_nonnegative
    self.assertEqual(np.prod(self.v >= 0-TOL), 1)
AssertionError: 0 != 1

----------------------------------------------------------------------
Ran 4 tests in 0.002s

FAILED (failures=1)

In [5]:
%run unittest_mc_compute_stationary.py --N=3 --epsilon=1e-14


test_left_eigen_vec (__main__.TestComputeStationary) ... ok
test_markov_matrix (__main__.TestComputeStationary) ... ok
test_nonnegative (__main__.TestComputeStationary) ... FAIL
test_sum_one (__main__.TestComputeStationary) ... 
N = 3 , epsilon = 1e-14 

P =
[[  1.00000000e+00   5.00000000e-15   0.00000000e+00   0.00000000e+00]
 [  3.33333333e-01   4.99600361e-15   6.66666667e-01   0.00000000e+00]
 [  0.00000000e+00   3.33333333e-15   6.66666667e-01   3.33333333e-01]
 [  0.00000000e+00   0.00000000e+00   5.00000000e-15   1.00000000e+00]] 

v =
[ -1.14942529e-02  -8.51809045e-17   1.49066583e-14   1.01149425e+00] 

TOL = 0.01 

ok

======================================================================
FAIL: test_nonnegative (__main__.TestComputeStationary)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/oyama/Dropbox/Documents/Teaching/Zemi/2014/test_mc_compute_stationary/unittest_mc_compute_stationary.py", line 129, in test_nonnegative
    self.assertEqual(np.prod(self.v >= 0-TOL), 1)
AssertionError: 0 != 1

----------------------------------------------------------------------
Ran 4 tests in 0.001s

FAILED (failures=1)

In [6]:
%run unittest_mc_compute_stationary.py --move='simultaneous' --N=5 --epsilon=1e-15


test_left_eigen_vec (__main__.TestComputeStationary) ... ok
test_markov_matrix (__main__.TestComputeStationary) ... ok
test_nonnegative (__main__.TestComputeStationary) ... FAIL
test_sum_one (__main__.TestComputeStationary) ... 
N = 5 , epsilon = 1e-15 

P =
[[  1.00000000e+00   2.50000000e-15   2.50000000e-30   1.25000000e-45
    3.12500000e-61   3.12500000e-77]
 [  1.00000000e+00   2.50000000e-15   2.50000000e-30   1.25000000e-45
    3.12500000e-61   3.12500000e-77]
 [  5.27109897e-77   4.74778387e-61   1.71056941e-45   3.08148791e-30
    2.77555756e-15   1.00000000e+00]
 [  5.27109897e-77   4.74778387e-61   1.71056941e-45   3.08148791e-30
    2.77555756e-15   1.00000000e+00]
 [  5.27109897e-77   4.74778387e-61   1.71056941e-45   3.08148791e-30
    2.77555756e-15   1.00000000e+00]
 [  5.27109897e-77   4.74778387e-61   1.71056941e-45   3.08148791e-30
    2.77555756e-15   1.00000000e+00]] 

v =
[ -1.00000000e+00  -2.60902411e-15  -5.55111512e-17  -5.55111512e-17
   5.49560397e-15   2.00000000e+00] 

TOL = 0.01 

ok

======================================================================
FAIL: test_nonnegative (__main__.TestComputeStationary)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/oyama/Dropbox/Documents/Teaching/Zemi/2014/test_mc_compute_stationary/unittest_mc_compute_stationary.py", line 129, in test_nonnegative
    self.assertEqual(np.prod(self.v >= 0-TOL), 1)
AssertionError: 0 != 1

----------------------------------------------------------------------
Ran 4 tests in 0.001s

FAILED (failures=1)

In [6]: