Cournot-classes {antitrust}R Documentation

“Cournot” Classes

Description

The “Cournot” and “Stackelberg” classes are building blocks used to create other classes in this package. As such, they are most likely to be useful for developers who wish to code their own merger calibration/simulation routines.

Note below that k is the number of products and n is the number of plants.

Slots

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.

dmcfunPre

A length n list whose elements equal a function that calculates the derivative of a plant's pre-merger marginal cost with respect to that plant's output. (Stackelberg only)

dmcfunPost

A length n list whose elements equal a function that calculates the derivative of a plant's post-merger marginal cost with respect to that plant's output. (Stackelberg only)

isLeaderPre

An n x k logical matrix qhose elements are TRUE if a plant produces a product pre-merger and FALSE otherwise. (Stackelberg only)

isLeaderPost

An n x k logical matrix qhose elements are TRUE if a plant produces a product post-merger and FALSE otherwise. #'@slot dmcfunPre A length n list whose elements equal a function that calculates the derivative of a plant's pre-merger marginal cost with respect to that plant's output. (Stackelberg only)

Objects from the Class

For Cournot, objects can be created by calls of the form new("Cournot", ...).

For Stackelberg, objects can be created by calls of the form new("Stackelberg", ...).

Extends

Cournot: Class Bertrand, directly. Class Antitrust, by class Bertrand, distance 2.

Stackelberg: Class Cournot, directly. Class Bertrand, by class Cournot, distance 2. Class Antitrust, by class Bertrand, distance 3.

Author(s)

Charles Taragin ctaragin+antitrustr@gmail.com

Examples

showClass("Cournot")           # get a detailed description of the class
showClass("Stackelberg")           # get a detailed description of the class

[Package antitrust version 0.99.26 Index]