Regulation#

A Regulation node defines a regulatory measure that works on yearly emissions of a vessel. Examples of regulations are goal-base fuel standards (such as the IMO Net-Zero Framework and FuelEU Maritime) and transport based regulation such as the IMO CII regulation.

Example:

Regulation "cii" {
	Measure = TRANSPORT_NOMINAL
	Scheme = INDIVIDUAL

	Scope = TTW
	IncludeSlip = FALSE

	Emissions = Emission("carbon_dioxide")
	Fuels = Fuel("*")
	
	Jurisdiction = [Port("africa"), Port("americas"), Port("asia"), Port("europe"), Port("middle_east")]
	
	RemedialCost = 0
}

Attributes#

Active#

This attribute sets whether the regulation is active in the current time-step. This attribute can be changed during the EVENTS simulation to either introduce a regulation assuming there was no foresight to its implementation or to discontinue an already existing regulation.

  • Data type: Boolean

  • Default: TRUE

Scheme#

This attribute sets the scheme of the regulation. Specifically whether it allows trading of emission certificates or not.

  • Data type: ID

  • Legal values: RegulationSchemeID

  • Default: None. Must be provided by the user.

Jurisdiction#

This attribute defines a list of ports that are under the jurisdiction of the regulation.

  • Data type: List of Port nodes

  • Example values:

    • [Port("name1"), Port("name2")]

    • [Port("*")]

  • Default: None. Must be provided by the user.

Emissions#

This attribute specifies the emission(s) being targeted by the regulation. Use the wildcard Emission("*") to target every emission defined in the simulation.

  • Data type: List of Emission nodes

  • Example values:

    • Emission("name")

    • [Emission("name_1"), Emission("name_2")]

    • Emission("*")

  • Default: None. Must be provided by the user.

Fuels#

This attribute specifies the fuel(s) being targeted by the regulation. Use the wildcard Fuel("*") to target every fuel defined in the simulation.

  • Data type: List of Fuel nodes

  • Example values:

    • Fuel("name")

    • [Fuel("name_1"), Fuel("name_2")]

    • Fuel("*")

  • Default: None. Must be provided by the user.

Scope#

This attribute defines the scope of emission targeted by the regulation.

EmissionsLifetime#

This attribute determines the emissions lifetime used in the GWP (Global Warming Potential) calculation of emissions.

  • Data type: Float, Variable

  • Example values: 20

  • Unit: Years

  • Minimum value: 0

  • Default: 100

IncludeSlip#

This attribute defines whether emissions slip is included in the calculation of the emissions in the regulation.

  • Data type: Boolean

  • Default: TRUE

Measure#

This attribute sets the emission measure of the regulation.

If ‘ABSOLUTE’ the absolute emissions in tons/year are targeted. If ‘INTENSITY’ the emission intensity in kg/GJ are targeted. If ‘TRANSPORT_NOMINAL’ the carbon intensity index in CO2-eq/nominal cargo-miles is targeted. If ‘TRANSPORT’ the carbon intensity index in CO2-eq/actual cargo-miles is targeted.

  • Data type: ID

  • Legal values: RegulationMeasureID

  • Unit: Different units depending on the value of ‘Measure’

    • ABSOLUTE: ton emissions

    • INTENSITY: kg emissions / GJ

    • TRANSPORT_NOMINAL: g emissions / nominal cargo miles

    • TRANSPORT: g emissions / actual cargo miles

  • Default: None. Must be provided by the user

IntraFraction#

This attribute sets the fraction for how much of the emissions between two ports inside (intra) the jurisdiction should be counted in the calculation.

  • Data type: Float, Forecast, Variable

  • Example values:

    • 0.5

    • Forecast("name")

  • Minimum value: 0

  • Maxiumum value: 1

  • Unit: Fraction of emissions counted during intra jurisdiction travel

  • Default: 1

InterFraction#

This attribute sets the fraction for how much of the emissions between two ports where one is in the jurisdiction and the other outside the jurisdiction (inter) should be counted in the calculation.

  • Data type: Float, Forecast, Variable

  • Example values:

    • 0.5

    • Forecast("name")

  • Unit: Fraction

  • Minimum value: 0

  • Maximum value: 1

  • Default: 1

ExtraFraction#

This attribute sets the fraction for how much of the emissions between two ports outside the jurisdiction (extra) should be counted in the calculation.

  • Data type: Float, Forecast, Variable

  • Example values:

    • 0.5

    • Forecast("name")

  • Unit: Fraction

  • Minimum value: 0

  • Maximum value: 1

  • Default: 0

RemedialCost#

This attribute sets the level of the regulation being paid or received dependent on the scheme in USD/ton emission.

  • Data type: Float, Forecast, Variable

  • Example values:

    • 500

    • Forecast("name")

  • Unit: USD/ton emission

  • Minimum value: 0

  • Default: 0

SharedThreshold#

This attribute determines the global threshold of emissions, i.e., the cap set on global emissions. This can be used instead of defining individual vessel thresholds.

  • Data type: Float, Forecast, Variable

  • Example values:

    • 90

    • Forecast("name")

  • Unit: Different units depending on the value of ‘Measure’

    • ABSOLUTE: ton emissions

    • INTENSITY: kg emissions / GJ

    • TRANSPORT_NOMINAL: g emissions / nominal cargo miles

    • TRANSPORT: g emissions / actual cargo miles

  • Minimum value: 0

  • Default: None

Commands#

set_global_warming_potential#

This command allows the user to set the global warming potential (GWP) for a specific emission. If the GWP is assigned on the regulation then it overwrites the physical GWP defined on the emission during the calculation of emission factors.

  • Primary key type: String (Emission name)

  • Data type: Float, Curve, Variable

  • Example values:

    • "emission_name", 25

    • "emission_name", Curve("name")

  • Unit: ton CO2eq/ton emission

  • Default: The physical global warming potential assigned to the specific emissions

set_include_vessel#

This command allows the user to include or exclude certain vessels from the regulation.

  • Primary key type: String (Vessel name)

  • Data type: Boolean

  • Default: TRUE

set_fuel_wtt#

This command allows the user to set the WTT (Well-to-Tank) emission factor for a given fuel and emission as it is defined under a certain policy. If these emission factor values are assigned under a regulation, they override the emission factor values that are otherwise used in Navigate

  • Primary key type: String (Fuel name)

  • Secondary key type: String (Emission name)

  • Data type: Float, Forecast, Variable

  • Example values:

    • "fuel_name", "emission_name", 3.2

    • "fuel_name", "emission_name", Forecast("name")

  • Unit: ton emission/ton fuel

  • Default: Determined through internal calculations (a supply-weighted average of the production-based bunker WTT across the jurisdiction ports on the vessel’s route; ports without supply of the fuel carry no weight)

set_fuel_ttw#

This command allows the user to set the TTW (Tank-to-Wake) emission factor for a given fuel and emission as it is defined under a certain policy. If these emission factor values are assigned under a regulation, they override the emission factor values that are otherwise used in Navigate

  • Primary key type: String (Fuel name)

  • Secondary key type: String (Emission name)

  • Data type: Float, Forecast, Variable

  • Example values:

    • "fuel_name", "emission_name", 3.2

    • "fuel_name", "emission_name", Forecast("name")

  • Unit: ton emission/ton fuel

  • Default: Determined through internal calculations

set_vessel_threshold#

This command sets the threshold that a specific vessel must satisfy in the measure unit.

  • Primary key type: String (Vessel name)

  • Data type: Float, Forecast, Variable

  • Example values:

    • "vessel_name", 90

    • "vessel_name", Forecast("name")

  • Unit: Different units depending on the value of ‘Measure’

    • ABSOLUTE: ton emissions

    • INTENSITY: kg emissions / GJ

    • TRANSPORT_NOMINAL: g emissions / nominal cargo miles

    • TRANSPORT: g emissions / actual cargo miles

  • Minimum value: 0

  • Default: None

set_vessel_capacity#

This command sets the capacity of a specific vessel for use in transport calculations.

This is only relevant if ‘Measure’ is set to ‘TRANSPORT_NOMINAL’ or ‘TRANSPORT’.

  • Primary key type: String (Vessel name)

  • Data type: Float, Forecast, Variable

  • Example values:

    • "vessel_name", 75000

    • "vessel_name", Forecast("name")

  • Minimum value: 0

  • Default: None