The “Cournot” class is a building block used to create other classes in this package. As such, it is most likely to be useful for developers who wish to code their own merger calibration/simulation routines.
Objects can be created by calls of the form new("Cournot", ...)
.
Let k denote the number of products and n denote the number of plants.
intercepts
:A length k vector containing the calibrated demand intercept.
mcfunPre
:A length n list whose elements equal a function that calculates a plant's pre-merger marginal cost.
mcfunPost
:A length n list whose elements equal a function that calculates a plant's post-merger marginal cost.
vcfunPre
:A length n list whose elements equal a function that calculates a plant's pre-merger variable cost.
vcfunPost
:A length n list whose elements equal a function that calculates a plant's post-merger variable cost.
prices
:A length k vector of product prices.
quantities
:An n x k matrix of plant quantities produced for each product.
margins
:An n x k matrix of plant product margins.
quantityPre
:An n x k matrix of predicted pre-merger quantities.
quantityPost
:An n x k matrix of predicted post-merger quantities.
quantityStart
:A length n x k vector of starting quantities for the non-linear solver.
productsPre
:An n x k logical matrix qhose elements are TRUE if a plant produces a product pre-merger and FALSE otherwise.
productsPost
:An n x k logical matrix qhose elements are TRUE if a plant produces a product post-merger and FALSE otherwise.
capacitiesPre
:A length-n logical vector whose elements equal to pre-merger plant capacities. Infinite values are allowed.
capacitiesPost
:A length-n logical vector whose elements equal to post-merger plant capacities. Infinite values are allowed.
demand
:A length k character vector specifying whether product demand is linear ("linear") or log-linear ("log").
cost
:A length k character vector equal to "linear" if a plant's marginal cost curve is assumed to be linear or "constant" if a plant's marginal curve is assumed to be constant. Returns an error if a multi-plant firm with constant marginal costs does not have capacity constraints.
mktElast
:A length k vector of market elasticities.
Many of the methods described below contain a ‘preMerger’ and ‘revenue’ argument. The ‘preMerger’ takes on a value of TRUE or FALSE, where TRUE invokes the method using the pre-merger values, while FALSE invokes the method using the post-merger ownership structure. The ‘revenue’ argument also takes on a value of TRUE or FALSE, where TRUE invokes the method using revenues, while FALSE invokes the method using quantities
calcMC
signature(object,preMerger=TRUE)
calcVC
signature(object,preMerger=TRUE)
calcMargins
signature(object, preMerger
= TRUE)
cmcr
signature(object)
HypoMonTest
signature(object,prodIndex,ssnip=.05,...)
HypoMonTest
implements the Hypothetical
Monopolist Test for a given ‘ssnip’.
calcPriceDeltaHypoMon
signature(object,prodIndex,...)
hhi
signature(object, preMerger= TRUE,revenue=FALSE)
diversion
signature(object, preMerger
= TRUE)
summary
signature(object,revenue=TRUE,shares=TRUE,parameters=FALSE,digits=2)
cmcr
signature(object)
# NOT RUN {
showClass("Cournot") # get a detailed description of the class
showMethods(classes="Cournot") # show all methods defined for the class
# }
Run the code above in your browser using DataLab