babylon.engine.dialectics.turnover

TurnoverDialectic — Turnover Cycle (V2 Part 2).

Pole A is TurnoverProfile (durations). Pole B is AnnualSurplusValue (computed turnover-adjusted rates).

See also

babylon.economics.circulation.turnover: Pure turnover computation. babylon.economics.circulation.types: TurnoverProfile, AnnualSurplusValue.

Classes

TurnoverDialectic(**data)

Turnover cycle dialectic.

class babylon.engine.dialectics.turnover.TurnoverDialectic(**data)[source]

Bases: Dialectic[TurnoverProfile, AnnualSurplusValue]

Turnover cycle dialectic.

Pole A is TurnoverProfile (durations). Pole B is AnnualSurplusValue (computed turnover-adjusted rates).

Parameters:
  • id (UUID)

  • type_tag (str)

  • pole_a (TurnoverProfile)

  • pole_b (AnnualSurplusValue)

  • weight (Annotated[float, Ge(ge=-1.0), Le(le=1.0)])

  • parent_id (UUID | None)

  • tick_created (int)

  • tick_updated (int)

type_tag: str
step(inputs, world)[source]

Motion law T for turnover dynamics.

Parameters:
  • inputs (TickInputs) – Upstream outputs with v and s values.

  • world (WorldView) – Read-only world context.

Return type:

TurnoverDialectic

Returns:

New TurnoverDialectic with updated annual surplus value.

observe()[source]

Project turnover state.

Return type:

dict[str, Any]

Returns:

Base observation + annual surplus value metrics.

model_config: ClassVar[ConfigDict] = {'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

id: UUID
pole_a: A
pole_b: B
weight: float
parent_id: UUID | None
tick_created: int
tick_updated: int