Creates a data table of emission factors (g/kWh) for the given parameters.

calcEF_LLAF(
  engineType,
  tier,
  location,
  loadFactor = NULL,
  ECAfuelSulfurPercentage = 0.1,
  GlobalfuelSulfurPercentage = 0.5,
  pollutants = "ALL",
  loadBasedBSFC = "Y",
  output = "EF_LLAF",
  main_aux_boiler = "main"
)

Arguments

engineType

Engine type (vector of strings) (see calcEngineType). Valid values are:

  • "SSD"

  • "MSD"

  • "MSD-ED"

  • "GT"

  • "GT-ED"

  • "ST"

  • "LNG"

  • "HSD" (auxiliary only)

  • "Boiler" (boiler only)

tier

NOx engine tier (vector of strings) (see calcTier). Valid values are:

  • "Tier 0"

  • "Tier 1"

  • "Tier 2"

  • "Tier 3"

location

Location of vessel (vector of strings). Valid values are:

  • "ECA"

  • "OutsideECA"

  • "GreatLakes"

loadFactor

Fractional percentage (between 0 and 1) of main engine required to propel vessel at given speed (vector of numericals) (see ShipPowerModel library). This parameter is optional. By default, it is not used and the resulting emission factor is independent of engine load.

ECAfuelSulfurPercentage

Fuel sulfur cap (percentage by weight) for the Emissions Control Area (ECA). Default = 0.1% (in effect Jan. 1, 2015)

GlobalfuelSulfurPercentage

Fuel sulfur cap (percentage by weight) for outside the Emissions Control Area (ECA). Default = 0.5% (in effect Jan. 1, 2020)

pollutants

Select pollutants (default = "ALL"). Options:

  • "co"

  • "hc"

  • "co2"

  • "so2"

  • "pm10"

  • "pm2.5"

  • "nox"

loadBasedBSFC

Determines if baseline BSFC values should be altered according to main engine load (see calcLoadBSFC)

  • "Y"

  • "N"

  • "lower load factor bound , upper load factor bound" (see Details)

output

What output table should be produced? Options:

  • "EF": table of corresponding emission factors

  • "LLAF": table of corresponding low load adjustment factors

  • "EF_LLAF": table of emissions factors multiplied by low load adjustment factors

main_aux_boiler

Is this calculation for a propulsive (main), auxiliary (aux), or boiler engine? Default = "main". Options:

  • "main"

  • "aux"

  • "boiler"

Value

a data.table of emission factors, low load adjustment factors, or low load adjusted emission factors (depending on the output argument) for the given parameters. Each pollutant selected in the pollutants argument will be a column in the table.

Details

Location is important for determining the fuel being used, as type of fuel typically used varies by location.

For more information about marine emission factors, see Section 3.5 of the Port Emissions Inventory Guidance.

Note: If it is desired that baseline BSFC values should be altered according to main engine load only within a specified set of bounds, and the baseline value should be used outside of those bounds, pass the bounds as a string using the loadBasedBSFC argument. The bounds should be formatted as such: the lower bound first, then a comma, then the upper bound.

References

EPA. 2020. "Ports Emissions Inventory Guidance: Methodologies for Estimating Port-Related and Goods Movement Mobile Source Emissions." Ann Arbor, MI: Office of Transportation and Air Quality. US Environmental Protection Agency.

Examples

calcEF_LLAF(engineType=c("SSD","MSD","MSD-ED","GT"),location=c("ECA","OutsideECA","GreatLakes","ECA"),loadFactor=c(0.8,0.5,0.14,0.03),loadBasedBSFC ="0.2,1",output="EF_LLAF",pollutants="co2",tier=c("Tier 3","Tier 2","Tier 1", "Tier 0"))
#> co2 #> 1: 595.0080 #> 2: 695.4535 #> 3: 657.2300 #> 4: 2344.5742
calcEF_LLAF(engineType=c("SSD","MSD","MSD-ED","GT"),location=c("ECA","OutsideECA","GreatLakes","ECA"),loadFactor=c(0.8,0.5,0.14,0.03),loadBasedBSFC="Y",output="EF_LLAF",main_aux_boiler="main",tier=c("Tier 3","Tier 2","Tier 1", "Tier 0"))
#> hc co2 co nox pm2.5 so2 pm10 #> 1: 0.600000 595.0080 1.400000 3.4000 0.16899642 0.3628435 0.18369177 #> 2: 0.500000 695.4535 1.100000 11.2000 0.69159975 2.1831300 0.75173886 #> 3: 0.500000 781.7869 1.100000 12.2000 0.17742693 0.4767437 0.19285535 #> 4: 1.168433 2952.0757 1.292945 16.6402 0.03984598 1.8156153 0.04331085
calcEF_LLAF(engineType=c("SSD","SSD"),location=c("ECA","ECA"),loadFactor=c(0.8,0.03),output="EF",main_aux_boiler="main",tier=c("Tier 3","Tier 2"))
#> hc co2 co nox pm2.5 so2 pm10 #> 1: 0.6 595.0080 1.4 3.4 0.1689964 0.3628435 0.1836918 #> 2: 0.6 746.7904 1.4 14.4 0.1758473 0.4554024 0.1911384
calcEF_LLAF(engineType=c("SSD","SSD"),location=c("ECA","ECA"),output="EF",main_aux_boiler="main",tier=c("Tier 3","Tier 2"))
#> hc co2 co nox pm2.5 so2 pm10 #> 1: 0.6 593.11 1.4 3.4 0.1689108 0.3616861 0.1835987 #> 2: 0.6 593.11 1.4 14.4 0.1689108 0.3616861 0.1835987
calcEF_LLAF(engineType=c("HSD","MSD","LNG"),location=c("ECA","OutsideECA","ECA"),loadFactor=c(0.8,0.5,0.14),ECAfuelSulfurPercentage=0.1,GlobalfuelSulfurPercentage=2.7,pollutants="ALL",output="EF",main_aux_boiler="aux",tier=c("Tier 3","Tier 2", "Tier 0"))
#> hc co2 co nox pm2.5 so2 pm10 #> 1: 0.4 695.702 0.9 2.6 0.1735414 0.424248 0.1886319 #> 2: 0.4 706.878 1.1 11.2 1.4169200 11.982563 1.5401304 #> 3: 0.0 456.500 1.3 1.3 0.0276000 0.033200 0.0300000
calcEF_LLAF(engineType=c("MSD","SSD"),location=c("ECA","OutsideECA"),loadFactor=c(0.8,0.5),ECAfuelSulfurPercentage=0.1,GlobalfuelSulfurPercentage=2.7,pollutants="ALL",output="EF",main_aux_boiler="boiler",tier=c("Tier 0", "Tier 0"))
#> hc co2 co nox pm2.5 so2 pm10 #> 1: 0.1 961.80 0.2 2.0 0.185552 0.586518 0.201687 #> 2: 0.1 949.77 0.2 2.1 1.721672 16.099919 1.871383