def test_lucas_op_fixed_point():
    "lucastree: are prices a fixed point of lucas_operator"
    # transform from p to f
    old_f = prices / (grid ** gamma)

    # compute new f
    new_f = tree.lucas_operator(old_f)

    # transform from f to p
    new_p = new_f * grid**gamma

    # test if close. Make it one order of magnitude less than tol used
    # to compute prices
    assert_less_equal(max_abs_diff(new_p, prices), _tol*10)
def test_lucas_op_fixed_point():
    "lucastree: are prices a fixed point of lucas_operator"
    # transform from p to f
    old_f = prices / (grid**gamma)

    # compute new f
    new_f = tree.lucas_operator(old_f)

    # transform from f to p
    new_p = new_f * grid**gamma

    # test if close. Make it one order of magnitude less than tol used
    # to compute prices
    assert_less_equal(max_abs_diff(new_p, prices), _tol * 10)
Esempio n. 3
0
def test_v_vfi_fixed_point():
    "odu: v from vfi is fixed point"
    assert_less_equal(max_abs_diff(v, new_v), _tol * 10)
Esempio n. 4
0
def test_analytical_policy():
    "optgrowth: approx sigma matches analytical"
    sigma = gm.compute_greedy(v)
    assert_less_equal(max_abs_diff(sigma, true_sigma), 1e-2)
Esempio n. 5
0
def test_vf_fixed_point():
    "optgrowth: solution is fixed point of bellman"
    new_v = gm.bellman_operator(v)
    assert_less_equal(max_abs_diff(v[1:-1], new_v[1:-1]), 5e-2)
Esempio n. 6
0
def test_analytical_vf():
    "optgrowth: approx v matches analytical"
    true_v = v_star(gm.grid)
    assert_less_equal(max_abs_diff(v[1:-1], true_v[1:-1]), 5e-2)
Esempio n. 7
0
 def test_coleman_fp(self):
     "ifp: solution to coleman is a fixed point"
     new_c = self.cp.coleman_operator(self.c_pfi)
     self.assertLessEqual(max_abs_diff(self.c_pfi, new_c), 1e-3)
Esempio n. 8
0
def test_v_vfi_fixed_point():
    "odu: v from vfi is fixed point"
    assert_less_equal(max_abs_diff(v, new_v), _tol*10)
Esempio n. 9
0
 def test_bellman_coleman_solutions_agree(self):
     "ifp: bellman and coleman solutions agree"
     self.assertLessEqual(max_abs_diff(self.c_vfi, self.c_pfi), 0.2)
Esempio n. 10
0
 def test_bellman_sol_fixed_point(self):
     "jv: solution to bellman is fixed point"
     new_V = self.jv.bellman_operator(self.V)
     self.assertLessEqual(max_abs_diff(new_V, self.V), 1e-4)
Esempio n. 11
0
 def test_coleman_fp(self):
     "ifp: solution to coleman is a fixed point"
     new_c = self.cp.coleman_operator(self.c_pfi)
     self.assertLessEqual(max_abs_diff(self.c_pfi, new_c), 1e-3)
Esempio n. 12
0
 def test_bellman_fp(self):
     "ifp: solution to bellman is a fixed point"
     new_v = self.cp.bellman_operator(self.v_vfi)
     self.assertLessEqual(max_abs_diff(self.v_vfi, new_v), 1e-3)
Esempio n. 13
0
 def test_bellman_coleman_solutions_agree(self):
     "ifp: bellman and coleman solutions agree"
     self.assertLessEqual(max_abs_diff(self.c_vfi, self.c_pfi), 0.2)
Esempio n. 14
0
def test_phi_pfi_fixed_point():
    "odu: phi from pfi is fixed point"
    new_phi = sp.res_wage_operator(phi_pfi)
    assert_less_equal(max_abs_diff(new_phi, phi_pfi), _tol*10)
Esempio n. 15
0
def test_phi_pfi_fixed_point():
    "odu: phi from pfi is fixed point"
    new_phi = sp.res_wage_operator(phi_pfi)
    assert_less_equal(max_abs_diff(new_phi, phi_pfi), _tol * 10)
Esempio n. 16
0
 def test_bellman_fp(self):
     "ifp: solution to bellman is a fixed point"
     new_v = self.cp.bellman_operator(self.v_vfi)
     self.assertLessEqual(max_abs_diff(self.v_vfi, new_v), 1e-3)
Esempio n. 17
0
 def test_bellman_sol_fixed_point(self):
     "jv: solution to bellman is fixed point"
     new_V = self.jv.bellman_operator(self.V)
     self.assertLessEqual(max_abs_diff(new_V, self.V), 1e-4)