revrt.models.routing.RoutingFrictionLayer#

class RoutingFrictionLayer(*, multiplier_layer: str | None = None, multiplier_scalar: float = 1, include_in_report: bool = False, apply_row_mult: bool = False, apply_polarity_mult: bool = False)[source]#

Bases: BaseModel

Config for one friction layer in a routing option

Friction layers are aggregated separately and then multiplied onto the summed cost surface using C = (sum cost) * (1 + sum friction). Their values influence the selected route but are not included in the final route cost.

The rest of this docstring is inserted by Pydantic and can be ignored.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Methods

Attributes

multiplier_layer

Layer of spatial multipliers applied to the aggregated costs

multiplier_scalar

Scalar multiplier applied before friction is aggregated

include_in_report

Report route distance and values for this layer when True

apply_row_mult

Apply the transmission row_width multiplier when True

apply_polarity_mult

Apply the voltage and polarity multiplier when True

multiplier_layer: str | None#

Layer of spatial multipliers applied to the aggregated costs

multiplier_scalar: float#

Scalar multiplier applied before friction is aggregated

include_in_report: bool#

Report route distance and values for this layer when True

apply_row_mult: bool#

Apply the transmission row_width multiplier when True

The routing table input should resolve a voltage value for each routing option, either from the shared voltage column or from voltage_<option> column. Every resolved voltage value must be given in the “row_width” dictionary in the transmission config, otherwise an error will be thrown.

apply_polarity_mult: bool#

Apply the voltage and polarity multiplier when True

The routing table input should resolve both a voltage and a polarity value for each routing option, either from shared columns or from voltage_<option> / polarity_<option> columns, and the transmission config must provide each combination in voltage_polarity_mult. For example, a valid “voltage_polarity_mult” dictionary in the transmission config might be {"138": {"ac": 1.15, "dc": 2}}.

Important

The configured multiplier is assumed to be in million dollars per mile and is converted to dollars per pixel before being applied.