LIVEdataset aec-bench@releasetasks 552models 18last submission · built
civilwith-tool

Stilling Basin Sizing

Estimates the required stilling basin length for energy dissipation downstream of a spillway using USBR hydraulic design methods. Calculates the entry Froude number, derives the sequent (conjugate) depth from the Belanger equation d2 = (d1/2)*(sqrt(1+8*Fr^2)-1), then selects the appropriate USBR basin type (I, II, or III) and corresponding basin length factor.

with-tool: The model is given an executable Python calculator script.

How this task is generated

One template produces many comparable benchmark tasks while keeping the scoring contract fixed.

  1. 01

    Template

    The reusable contract shown on this page.

  2. 02

    Scenario

    An archetype and site context are sampled.

  3. 03

    Difficulty tier

    Inputs may be hidden at harder tiers.

  4. 04

    Task prompt

    The model responds with the declared outputs.

Parameters

Inputs the model receives, and the outputs it is scored on.

Inputs

3 inputs

Always given

Included directly in every task prompt.

2
  • Unit discharge

    unit_discharge_m3_s_m

    Unit discharge at the spillway toe q (discharge per metre width)

    0.5 – 80 m³/s/m
  • Drop height

    drop_height_m

    Vertical drop height from reservoir level to basin floor ΔH

    1 – 50 m

Derived from scenario

Sampled from the scenario and inferable from its description.

1
  • Tailwater depth

    tailwater_depth_m

    Tailwater depth downstream of the basin d_tw

    Derived from the archetype scenario. Hidden at hard difficulty.

    0 – 20 m

Scored outputs

4 outputs

Froude number

froude_number

Froude number at basin entry Fr₁

Scores if within ±3% of the reference value.

Sequent depth

sequent_depth_m

Sequent (conjugate) depth from Belanger equation d₂ (m)

Scores if within ±3% of the reference value.

Basin length

basin_length_m

Required stilling basin length L_basin (m)

Scores if within ±3% of the reference value.

Basin type

basin_type

USBR basin type code (0.0 = none, 1.0 = Type I, 2.0 = Type II, 3.0 = Type III)

Scores if within ±1% of the reference value.

Difficulty

Each template is sampled at three tiers. Harder tiers may hide inputs, forcing the model to infer them from the scenario description.

easy

All inputs given

Low weir with all parameters given, straightforward Froude calculation

medium

All inputs given

Medium to high dam, all parameters given, wider range of Froude numbers and basin types

hard

Some inputs hidden

Tailwater depth hidden; agent must infer from site context and typical downstream conditions

Hidden inputs

  • Tailwater depthtailwater_depth_m

Prompt replacement text

The structure is a {{ archetype.description }} ({{ archetype.site_context }})

Task bundle

The exact instruction and parameter contract used to generate this task, pinned to the published library source.

/workspace

  • instruction.md
  • stilling-basin-sizing_calc.py

Teal lines show Jinja input conditions, not task visibility policy. A line renders only when that input or tool is visible.

1You are a senior civil/dams engineer specializing in spillway hydraulics and energy dissipation design.2 3## Problem4 5Estimate the stilling basin dimensions required for energy dissipation downstream of a spillway, using the USBR method based on the entry Froude number and the Belanger conjugate depth equation.6 7## Given8 9| Parameter | Value | Unit |10|-----------|-------|------|11| Unit discharge (q) | {{ unit_discharge_m3_s_m }} | m³/s/m |12| Drop height (ΔH) | {{ drop_height_m }} | m |13{% if tailwater_depth_m is defined %}14| Tailwater depth (d_tw) | {{ tailwater_depth_m }} | m |15{% endif %}16{% if archetype_description is defined %}17 18### Site Conditions19 20{{ archetype_description }}21{% endif %}22 23{% if tool_available %}24## Available Tool25 26A stilling basin sizing calculation tool is available at `/workspace/stilling-basin-sizing_calc.py`. Run it with:27 28```bash29python3 /workspace/stilling-basin-sizing_calc.py --help30```31 32You may use this tool to verify your calculations or compute values directly.33{% endif %}34 35## Required36 37Calculate the following:38 391. Froude number at basin entry Fr₁402. Sequent (conjugate) depth d₂ (m)413. Required stilling basin length L_basin (m)424. USBR basin type recommendation (0 = none, 1 = Type I, 2 = Type II, 3 = Type III)43 44## Applicable Standards45 46- USBR Hydraulic Design of Stilling Basins47- USACE EM 1110-2-1603 — Hydraulic Design of Spillways48 49## Constraints50 51- No internet access is available. Work from engineering knowledge and the provided tool.52- Use the energy-based supercritical velocity approximation:53 - **V₁ = sqrt(2 × g × ΔH)**54- Compute supercritical depth from continuity:55 - **d₁ = q / V₁**56- Compute Froude number at basin entry:57 - **Fr₁ = V₁ / sqrt(g × d₁)**58- Compute sequent depth using the Belanger equation:59 - **d₂ = (d₁ / 2) × (sqrt(1 + 8 × Fr₁²) − 1)**60- Select basin type and compute basin length L_basin = k × d₂:61 - Fr₁ < 2.5: no basin needed (k = 0, type = 0)62 - 2.5 ≤ Fr₁ < 4.5: USBR Type I pre-formed basin (k = 4.0, type = 1)63 - 4.5 ≤ Fr₁ < 9.0: USBR Type II dentated sill basin (k = 4.5, type = 2)64 - Fr₁ ≥ 9.0: USBR Type III baffle block basin (k = 4.0, type = 3)65- Use g = 9.81 m/s²66- Report basin type as a numeric code: 0.0, 1.0, 2.0, or 3.067 68## Output Format69 70Show your step-by-step working in Markdown, including formulas and intermediate calculations. At the end of your solution, include a JSON block with your final answers in exactly this format:71 72```json73{74 "froude_number": <numeric_value>,75 "sequent_depth_m": <numeric_value>,76 "basin_length_m": <numeric_value>,77 "basin_type": <numeric_value>78}79```80 81Write your complete solution to `/workspace/output.md`.82

Scenario archetypes

Each generated task is drawn from one of these realistic scenario bands.

Site contexts ground each scenario in a real locale the model can use to infer hidden values.

Low weir

low_weir

Low overflow weir or small check dam with moderate unit discharge

victoria-farm-dam-weirsouth-australia-creek-weir
Parameter ranges
unit_discharge_m3_s_m
0.5 – 5
drop_height_m
2 – 5
tailwater_depth_m
0.3 – 2

Medium dam

medium_dam

Medium-height dam spillway with significant energy to dissipate

nsw-water-supply-damqueensland-irrigation-dam
Parameter ranges
unit_discharge_m3_s_m
5 – 30
drop_height_m
5 – 20
tailwater_depth_m
1.5 – 8

High dam

high_dam

High dam spillway with large energy head and high Froude number flow

snowy-mountains-major-damnorth-queensland-flood-dam
Parameter ranges
unit_discharge_m3_s_m
15 – 80
drop_height_m
20 – 50
tailwater_depth_m
3 – 20

Overflow structure

overflow_structure

Low-head overflow structure or diversion weir with small drop

western-australia-diversion-weirtasmania-small-hydro-outlet
Parameter ranges
unit_discharge_m3_s_m
0.5 – 8
drop_height_m
1 – 5
tailwater_depth_m
0.2 – 2.5

Example task

nsw-water-supply-dam-medium-dam-previewhard difficulty, some inputs hidden.

Medium-height dam spillway with significant energy to dissipate. nsw-water-supply-dam. Required outputs: froude_number, sequent_depth_m, basin_length_m, basin_type

The model sees

Scenario context and visible inputs.

unit_discharge_m3_s_m
5 to 30 m³/s/m
drop_height_m
5 to 20 m

Executable tool: stilling-basin-sizing_calc.py

The model must infer

Inputs withheld at this difficulty.

  • Tailwater depth

    tailwater_depth_m

Stand-in text in the prompt

The structure is a {{ archetype.description }} ({{ archetype.site_context }})

The model must produce

The scored JSON answer schema.

{
  "froude_number": <number>,
  "sequent_depth_m": <number>,
  "basin_length_m": <number>,
  "basin_type": <number>
}
  • froude_number · scored within ±3%
  • sequent_depth_m · scored within ±3%
  • basin_length_m · scored within ±3%
  • basin_type · scored within ±1%