@@ -1811,31 +1811,29 @@ class MatrixNormal(Continuous):
18111811
18121812 .. code:: python
18131813
1814- # Setup data
1815- true_colcov = np.array([[1.0, 0.5, 0.1],
1816- [0.5, 1.0, 0.2],
1817- [0.1, 0.2, 1.0]])
1818- m = 3
1819- n = true_colcov.shape[0]
1820- true_scale = 3
1821- true_rowcov = np.diag([true_scale**(2*i) for i in range(m)])
1822- mu = np.zeros((m, n))
1823- true_kron = np.kron(true_rowcov, true_colcov)
1824- data = np.random.multivariate_normal(mu.flatten(), true_kron)
1825- data = data.reshape(m, n)
1826-
1827- with pm.Model() as model:
1828- # Setup right cholesky matrix
1829- sd_dist = pm.HalfCauchy.dist(beta=2.5, shape=3)
1830- colchol_packed, _, _ = pm.LKJCholeskyCov('colcholpacked', n=3, eta=2, sd_dist=sd_dist)
1831- colchol = pm.expand_packed_triangular(3, colchol_packed)
1832-
1833- # Setup left covariance matrix
1834- scale = pm.LogNormal('scale', mu=np.log(true_scale), sigma=0.5)
1835- rowcov = pt.diag([scale**(2*i) for i in range(m)])
1836-
1837- vals = pm.MatrixNormal('vals', mu=mu, colchol=colchol, rowcov=rowcov,
1838- observed=data)
1814+ # Setup data
1815+ true_colcov = np.array([[1.0, 0.5, 0.1],
1816+ [0.5, 1.0, 0.2],
1817+ [0.1, 0.2, 1.0]])
1818+ m = 3
1819+ n = true_colcov.shape[0]
1820+ true_scale = 3
1821+ true_rowcov = np.diag([true_scale**(2*i) for i in range(m)])
1822+ mu = np.zeros((m, n))
1823+ true_kron = np.kron(true_rowcov, true_colcov)
1824+ data = np.random.multivariate_normal(mu.flatten(), true_kron)
1825+ data = data.reshape(m, n)
1826+
1827+ with pm.Model() as model:
1828+ # Setup right cholesky matrix
1829+ sd_dist = pm.HalfCauchy.dist(beta=2.5, shape=3)
1830+ colchol,_,_ = pm.LKJCholeskyCov('colchol', n=3, eta=2,sd_dist=sd_dist)
1831+ # Setup left covariance matrix
1832+ scale = pm.LogNormal('scale', mu=np.log(true_scale), sigma=0.5)
1833+ rowcov = pt.diag([scale**(2*i) for i in range(m)])
1834+
1835+ vals = pm.MatrixNormal('vals', mu=mu, colchol=colchol, rowcov=rowcov,
1836+ observed=data)
18391837 """
18401838
18411839 rv_op = matrixnormal
0 commit comments