Skip to content
tumblerer edited this page Jun 15, 2012 · 21 revisions

A list of the different functions and actions that countries can call


All Countries

Kyoto

Countries have the choice as to whether they would like to be part of the Kyoto Protocol or not. The boolean

  protected isKyotoMember;

decides whether you are part of kyoto or not. Countries can choose to initialise this to a value other than the default which is true.

   protected final boolean leaveKyoto()

   protected final boolean joinKyoto()

These functions allow the agent to join and leave kyoto. There are limits on how often a user can leave or join. Once you join, you must wait at least 10 years until you can leave again. Upon leaving, there is a period of 4 years before you can rejoin.

Carbon Absorption Handler

Allows agents to apply carbon absorption mechanisms. i.e. Planting trees. In general these will cost money and reduce the users arable land area. The cost will increase as relative arable land area decreases

    public final void investInCarbonAbsorption(double carbonAbsorptionChange)

Performs the investment in carbon absorption.

Input: Units of carbon absorption change

Side effect: Maintaining carbon output, Maintaining GDP Growth, Reducing cash, Increasing credits, Decreasing the arable area

public final double getInvestmentRequired(double carbonOffset)
    public final double getInvestmentRequired(double carbonAbsorptionChange, double arableLandArea)

Returns the cost in cash of achieving a change in carbon absorption either given your current arable land area, or an arbitrary arable land area

public final double getCarbonAbsorptionChange(double investmentAmount)
public final double getCarbonAbsorptionChange(double investmentAmount, double arableLandArea)

Returns the change in carbon absorption level for a particular investment either given your current arable land area, or an arbitrary arable land area

    public final double getForestAreaRequired(double carbonAbsorptionChange)

Returns the arable land area required to achieve a certain increase in carbon aborption

Carbon Reduction Handler

Allows agents to invest in carbon reduction. This is analogous to inserting filters in factories to reduce the carbon produced from industry.

public final void investInCarbonReduction(double carbonOutputChange)

Performs the invest in carbon reduction.

Inputs: Units of carbon output change.

Side effect: Reducing carbon output, Maintaining GDP Growth Rate, Reducing cash

public final double getInvestmentRequired(double carbonOutputChange)
public final double getInvestmentRequired(double carbonOutputChange, double carbonOutput, double energyOutput)

Obtains an estimate for reducing the carbon output by a specified amount.

public final double getCarbonOutputChange(double investmentAmount)
public final double getCarbonOutputChange(double investmentAmount, double carbonOutput, double energyOutput)

Returns the reduction in carbon output for a specific investment amount

###Energy Usage Handler

Allows the agent to change their carbon out of their industry to the detriment of their GDP growth rate. Analogous to building and destroying factories

public void reduceEnergyOutput (double amount)

Allows a country to reduce their energy output and their carbon output by the same amount.

Input: Amount of carbon to reduce output by

Side effect: Reducing carbon output, Reducing GDP growth, Maintaining cash

public final void investInCarbonIndustry(double investment)

Performs the investment in carbon industry.

Input: amount of carbon

Side effect: Increasing carbon output, Increasing GDP growth, Reducing cash

Analogy: Closing down factories

public double calculateCostOfInvestingInCarbonIndustry (double growth)

Given a specific increase in carbon output, a cost in cash of investment is found.

public double calculateCarbonIndustryGrowth (double cost)

For a specified amount of cash investment, this returns how much the carbon industry will grow by.

Carbon Targets

Countries can use the functions used by the targetting service to find session and yearly targets for themselves and for other countries

public double querySessionTarget(UUID countryID)

public double queryYearTarget(UUID countryID)

###Reporting Carbon Output

Clone this wiki locally