25 lines
731 B
Python
25 lines
731 B
Python
from statsmodels.tools import linalg
|
|
import numpy as np
|
|
from numpy.testing import assert_allclose
|
|
from scipy.linalg import toeplitz
|
|
|
|
|
|
def test_stationary_solve_1d():
|
|
b = np.random.uniform(size=10)
|
|
r = np.random.uniform(size=9)
|
|
t = np.concatenate((np.r_[1], r))
|
|
tmat = toeplitz(t)
|
|
soln = np.linalg.solve(tmat, b)
|
|
soln1 = linalg.stationary_solve(r, b)
|
|
assert_allclose(soln, soln1, rtol=1e-5, atol=1e-5)
|
|
|
|
|
|
def test_stationary_solve_2d():
|
|
b = np.random.uniform(size=(10, 2))
|
|
r = np.random.uniform(size=9)
|
|
t = np.concatenate((np.r_[1], r))
|
|
tmat = toeplitz(t)
|
|
soln = np.linalg.solve(tmat, b)
|
|
soln1 = linalg.stationary_solve(r, b)
|
|
assert_allclose(soln, soln1, rtol=1e-5, atol=1e-5)
|