Beispiel #1
0
    def test_fixed_marginal(self):
        """Problem 5.4
        """
        sp.var('q p', positive=True)

        mkt = Market(q, p, demand=1000 - p, supply=sp.Eq(p, 100))
        self.assertEqual(mkt.equilibrium(), (100, 900))
        self.assertEqual(mkt.free_market_social_surplus(), 405000)

        mkt = Market(q, p, demand=1000 - p, supply=sp.Eq(p, 250))
        self.assertEqual(mkt.free_market_social_surplus(), 281250)

        firm = Firm(q, p, variable_cost=q**2 / 2, SFC=0, FC=0)
        print firm.supply()
        market = Market(q, p, 100 - p, firm.supply())
        print market.equilibrium()
Beispiel #2
0
    def test_fixed_marginal(self):
        """Problem 5.4
        """
        sp.var('q p', positive=True)

        mkt = Market(q, p, demand=1000-p, supply=sp.Eq(p, 100))
        self.assertEqual(mkt.equilibrium(), (100, 900))
        self.assertEqual(mkt.free_market_social_surplus(), 405000)

        mkt = Market(q, p, demand=1000-p, supply=sp.Eq(p, 250))
        self.assertEqual(mkt.free_market_social_surplus(), 281250)

        firm = Firm(q, p, variable_cost=q**2/2,
                    SFC=0, FC=0)
        print firm.supply()
        market = Market(q, p, 100-p, firm.supply())
        print market.equilibrium()
Beispiel #3
0
 def test_subsidy(self):
     """Problem 3.3
     """
     sp.var('q p', positive=True)
     firm = Firm(q, p, q**2 / 1000., SFC=0, FC=0)
     self.assertEqual(sp.solve(firm.supply() - 1000, p)[0], 2)
Beispiel #4
0
 def test_surplus(self):
     """Practice problem 3.4
     """
     sp.var('q p')
     firm = Firm(q, p, q**2 / 10., SFC=0, FC=0)
     self.assertEqual(firm.surplus_at(p=10), 250)
Beispiel #5
0
 def test_subsidy(self):
     """Problem 3.3
     """
     sp.var('q p', positive=True)
     firm = Firm(q, p, q**2/1000., SFC=0, FC=0)
     self.assertEqual(sp.solve(firm.supply() - 1000, p)[0], 2)
Beispiel #6
0
 def test_surplus(self):
     """Practice problem 3.4
     """
     sp.var('q p')
     firm = Firm(q, p, q**2/10., SFC=0, FC=0)
     self.assertEqual(firm.surplus_at(p=10), 250)