BunkerOptions#

The BunkerOptions general node provides configurations for the bunkering model. It helps define various tolerances and iteration limits that guide how the model operates.

Example:

BunkerOptions {
    Solver = HIGHS
    SolutionTolerance = 1e-6
    FairShareMaximumIterations = 10
    FairShareTolerance = 1e-2
}

Attributes#

Solver#

This attribute selects the solver backend for the bunker algorithm. It can also be set from the command line with --solver, which accepts lowercase values (auto, gurobi, highs) and takes precedence over the deck setting.

SolverMethod#

This attribute selects the LP solution method used by the solver backend.

SolutionTolerance#

This attribute sets the tolerance of the solution for the bunker algorithm. The SolutionTolerance defines the lower tolerance for what to consider in results, i.e., if a fuel is bunkered in an amount smaller than the SolutionTolerance, it is rounded to 0 and thus not brought into reports and plots.

  • Data type: Float

  • Example value: 1e-6

  • Minimum value: 0

  • Default: 1e-6

Threads#

This attribute sets the number of threads used by the LP solver to solve the bunker algorithm.

Notice that ‘0’ corresponds to the solver’s default setting.

  • Data type: Float

  • Example value: 2

  • Minimum value: 0

  • Default: 2

FairShareMaximumIterations#

This attribute sets the maximum iterations of the fair-share sequential LP of the bunker algorithm.

  • Data type: Integer

  • Example value: 10

  • Minimum value: 1

  • Default: 10

FairShareTolerance#

This attribute sets the fair-share tolerance of the bunker algorithm. The fair share tolerance is the tolerance related to how ‘fair’ the solution must be to be considered ‘fair’. Setting this to zero is not recommended due to potential numerical instability issues.

  • Data type: Float

  • Example value: 1e-2

  • Minimum value: 0

  • Default: 1e-2

FlexibilityMaximumIterations#

This attribute sets the maximum iterations for the bisection search algorithm that calculates the flexibility compliance unit value of flexible regulations.

  • Data type: Integer

  • Example value: 10

  • Minimum value: 1

  • Default: 10

FlexibilityToleranceX#

This attribute sets the tolerance for the convergence of the bisection search algorithm that calculates the flexibility compliance unit value of a flexible regulation. The tolerance determines when the change in the estimate is sufficiently small to be considered converged. Setting this to zero is not recommended due to potential numerical instability issues.

  • Data type: Float

  • Example value: 0.1

  • Minimum value: 0

  • Default: 1

FlexibilityToleranceY#

This attribute sets the tolerance for the comparison of objective function values in the bisection search algorithm that calculates the flexibility compliance unit value of a flexible regulation. The tolerance determines when the change in the estimate is sufficiently small to be considered converged. Setting this to zero is not recommended due to potential numerical instability issues.

  • Data type: Float

  • Example value: 0.1

  • Minimum value: 0

  • Default: 1