> ## Documentation Index
> Fetch the complete documentation index at: https://offthepace.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# dim_circuits

> One row per event slug (circuit_key).

<Note>Part of the [Reference](/transform/families/reference) family.</Note>

One row per event slug (circuit\_key). Lifts the circuit\_reference seed into a typed dimension carrying the physical properties used for fuel-load estimation (weight\_penalty\_factor), track evolution (abrasiveness\_index), and constructor pace decomposition (track\_energy\_index). circuit\_key is a grand-prix/event slug, so several keys can share one physical venue (renamed events, double-headers); circuit\_id is the stable physical-circuit identifier used to pool races run at the same track. Refresh the seed when layouts change.

## Lineage

```mermaid theme={null}
flowchart LR
  dim_circuits --> dim_corners
  dim_circuits --> fct_cliff_prediction_features
  dim_circuits --> fct_driver_skill_features
  dim_circuits --> int_lap_fuel_state
  dim_circuits --> int_pit_loss_circuit
  dim_circuits --> mart_degradation_history_envelope
  style dim_circuits fill:#e40404,stroke:#e40404,color:#fff
```

## Overview

| Property          | Value                                      |
| ----------------- | ------------------------------------------ |
| Layer             | `reference`                                |
| Family            | [Reference](/transform/families/reference) |
| Contract enforced | No                                         |

**7 tests** [guard](/transform/ci/overview) this model  -  6 generic, 1 singular.

## Columns

| Column                             | Type      | Nullable | Tests                                                                        | Description                                                                                                                                                           |
| ---------------------------------- | --------- | -------- | ---------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `circuit_key`                      | `varchar` | Yes      | [`not_null`](/transform/ci/structural), [`unique`](/transform/ci/structural) | Event slug (grand-prix key) matching race\_id in stg\_laps.                                                                                                           |
| `circuit_id`                       | `varchar` | Yes      | [`not_null`](/transform/ci/structural)                                       | Physical-circuit identifier (slug of circuit\_name). Several event slugs can share one circuit\_id (renamed events, double-headers), so it is non-unique here.        |
| `circuit_name`                     | `varchar` | Yes      |                                                                              | Human-readable circuit name from the seed.                                                                                                                            |
| `lap_length_km`                    | `double`  | Yes      | [`expect_column_values_to_be_between`](/transform/ci/range-and-domain)       | Circuit lap length in kilometres.                                                                                                                                     |
| `corner_count`                     | `integer` | Yes      |                                                                              | Number of corners on the lap (used in the weight-penalty formula).                                                                                                    |
| `avg_lateral_g`                    | `double`  | Yes      |                                                                              | Average lateral g-force proxy for the circuit (used in the weight-penalty formula).                                                                                   |
| `fuel_consumption_rate_kg_per_lap` | `double`  | Yes      | [`not_null`](/transform/ci/structural)                                       | Estimated kg of fuel burned per lap, used for fuel\_mass\_kg in Layer 03.                                                                                             |
| `track_energy_index`               | `double`  | Yes      |                                                                              | Energy-demand index for the circuit; conditions constructor structural-pace decomposition.                                                                            |
| `abrasiveness_index`               | `integer` | Yes      |                                                                              | Ordinal surface-abrasiveness rating driving track-evolution / rubber-in modelling.                                                                                    |
| `weight_penalty_factor`            | `double`  | Yes      | [`not_null`](/transform/ci/structural)                                       | Seconds per kg of fuel mass carried. Formula: 0.02 + 0.0002 × corner\_count × avg\_lateral\_g. Used in int\_lap\_fuel\_state to compute weight\_corrected\_lap\_time. |
| `era_start_year`                   | `integer` | Yes      |                                                                              | First season of the regulation era this circuit row applies to (e.g. 2022 ground-effect).                                                                             |
