eos.agent.firm
Class ConsumerGoodFirm

Object
  extended by eos.agent.Agent
      extended by eos.agent.firm.Firm
          extended by eos.agent.firm.ConsumerGoodFirm
Direct Known Subclasses:
EFirm, NFirm

public abstract class ConsumerGoodFirm
extends Firm

A consumer good firm implements an enjoyment firm or a necessity firm.

Author:
zhihongx

Field Summary
protected  double A
          technology coefficient in the production function
protected  double beta
          sensitivity of output to labor (power on L in the production function
protected  double eUtilThreshold
          minimal capacity utilization to allow capital expansion
protected  double lambda
          sensitivity of wage to money flow gap
protected  double phi
          sensitivity of output to marginal profit
protected  Good product
          product the firm is producing/selling (enjoyment or necessity)
protected  double rUtilThreshold
          minimal capacity utilization to allow capital replacement
 
Fields inherited from class eos.agent.firm.Firm
capacity, capitalCost, labor, loan, marginalProfit, output, profit, revenue, totalCost, wage, wageBudget
 
Constructor Summary
ConsumerGoodFirm(String productName, double initCheckingBal, double initSavingsBal, double initOutput, double initWageBudget, int initCapital, CFirm[] capitalProducers)
          Create a new consumer good firm
 
Method Summary
 void act()
          Called by Economy.step() in each step.
 double convertToProduct(double labor, double K)
          Return output produced by labor amount of labor and K amount of capital
 
Methods inherited from class eos.agent.firm.Firm
getCapacity, getCapitalCost, getLabor, getLaborCost, getLoan, getMarginalProfit, getOutput, getProfit, getRevenue, getTotalCost, getWage
 
Methods inherited from class eos.agent.Agent
die, getGood, getID, getName, isAlive
 
Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

A

protected double A
technology coefficient in the production function


beta

protected double beta
sensitivity of output to labor (power on L in the production function


phi

protected double phi
sensitivity of output to marginal profit


lambda

protected double lambda
sensitivity of wage to money flow gap


eUtilThreshold

protected double eUtilThreshold
minimal capacity utilization to allow capital expansion


rUtilThreshold

protected double rUtilThreshold
minimal capacity utilization to allow capital replacement


product

protected Good product
product the firm is producing/selling (enjoyment or necessity)

Constructor Detail

ConsumerGoodFirm

public ConsumerGoodFirm(String productName,
                        double initCheckingBal,
                        double initSavingsBal,
                        double initOutput,
                        double initWageBudget,
                        int initCapital,
                        CFirm[] capitalProducers)
Create a new consumer good firm

Parameters:
productName - name of the product
initCheckingBal - initial checking account balance
initSavingsBal - initial savings account balance
initOutput - initial output
initWageBudget - initial wage budget
initCapital - initial amount of capital
capitalProducers - array of capital good producers
Method Detail

act

public void act()
Called by Economy.step() in each step.

Specified by:
act in class Agent

convertToProduct

public double convertToProduct(double labor,
                               double K)
Return output produced by labor amount of labor and K amount of capital

Parameters:
labor - amount of labor
K - amount of capital
Returns:
output produced by labor amount of labor and K amount of capital