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

Wave Breaking

Evaluates wave breaking conditions using the Weggel (1972) breaker depth index gamma_b to compute depth-limited breaking wave height H_b = gamma_b * d, then classifies breaker type (spilling, plunging, or surging) via the Iribarren surf similarity parameter. Used in coastal structure design and nearshore hazard assessment per the USACE Coastal Engineering Manual.

both: The model must reason numerically unaided.

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

4 inputs

Always given

Included directly in every task prompt.

2
  • Wave height

    wave_height_m

    Incident (deep-water) wave height H_0

    0.3 – 8 m
  • Water depth

    water_depth_m

    Water depth at location of interest d

    0.3 – 15 m

Derived from scenario

Sampled from the scenario and inferable from its description.

1
  • Wave period

    wave_period_s

    Wave period T

    Derived from the archetype scenario. Hidden at hard difficulty.

    3 – 18 s

Hidden at higher difficulty

Visible in easier tasks and withheld in one or more harder tiers.

1
  • Bottom slope

    bottom_slope

    Bottom slope m (rise/run ratio, dimensionless)

    Hidden at hard difficulty.

    0.005 – 0.2

Scored outputs

4 outputs

Breaking wave height

breaking_wave_height_m

Depth-limited breaking wave height H_b (m)

Scores if within ±3% of the reference value.

Breaking depth

breaking_depth_m

Breaking depth d_b (m)

Scores if within ±3% of the reference value.

Breaker type

breaker_type

Breaker type: 1.0 = spilling, 2.0 = plunging, 3.0 = surging

Scores if within ±1% of the reference value.

Iribarren number

iribarren_number

Iribarren number (surf similarity parameter) xi

Scores if within ±5% 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

Moderate wave and slope — all parameters given, straightforward calculation

medium

All inputs given

Larger waves or steeper slopes — all parameters given, more extreme conditions

hard

Some inputs hidden

Wave period and bottom slope hidden — agent must infer from site description

Hidden inputs

  • Wave period swave_period_s
  • Bottom slopebottom_slope

Prompt replacement text

The site is {{ 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

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 coastal engineer specializing in wave mechanics and shoreline processes.2 3## Problem4 5Determine the wave breaking parameters at a coastal site given the incident wave conditions and seabed geometry. Calculate the depth-limited breaking wave height, breaking depth, breaker type, and Iribarren number.6 7## Given8 9| Parameter | Value | Unit |10|-----------|-------|------|11| Incident wave height (H₀) | {{ wave_height_m }} | m |12{% if wave_period_s is defined %}13| Wave period (T) | {{ wave_period_s }} | s |14{% endif %}15| Water depth (d) | {{ water_depth_m }} | m |16{% if bottom_slope is defined %}17| Bottom slope (m) | {{ bottom_slope }} | - |18{% endif %}19{% if archetype_description is defined %}20 21### Site Conditions22 23{{ archetype_description }}24{% endif %}25 26{% if tool_available %}27## Available Tool28 29A wave breaking calculation tool is available at `/workspace/{{ meta.name }}_calc.py`. Run it with:30 31```bash32python3 /workspace/{{ meta.name }}_calc.py --help33```34 35You may use this tool to verify your calculations or compute values directly.36{% endif %}37 38## Required39 40Calculate the following:41 421. Depth-limited breaking wave height H_b (m)432. Breaking depth d_b (m)443. Breaker type (spilling, plunging, or surging) — report as a numeric code: 1.0 = spilling, 2.0 = plunging, 3.0 = surging454. Iribarren number (surf similarity parameter) ξ46 47## Applicable Standards48 49- USACE Coastal Engineering Manual (CEM)50- Weggel (1972) breaker depth index relation51 52## Constraints53 54- No internet access is available. Work from engineering knowledge and the provided tool.55- Use the following procedure:56 1. **Breaker depth index** (Weggel 1972 simplified):57 - γ_b = 1.56 / (1 + exp(−19.5 × m))58 - where m is the bottom slope59 - On a flat bottom (m → 0), γ_b → 0.78 (McCowan's solitary wave limit)60 2. **Depth-limited breaking wave height**:61 - H_b = γ_b × d62 - where d is the water depth at the location of interest63 3. **Breaking depth**:64 - d_b = H_b / γ_b65 4. **Deep-water wavelength**:66 - L₀ = g × T² / (2π)67 - where g = 9.81 m/s²68 5. **Iribarren number** (surf similarity parameter):69 - ξ = m / √(H₀ / L₀)70 - where H₀ is the incident wave height and L₀ is the deep-water wavelength71 6. **Breaker type classification**:72 - ξ < 0.5 → spilling (code 1.0)73 - 0.5 ≤ ξ < 3.3 → plunging (code 2.0)74 - ξ ≥ 3.3 → surging (code 3.0)75 76## Output Format77 78Show your step-by-step working in Markdown. At the end of your solution, include a JSON block with your final answers in exactly this format:79 80```json81{82 "breaking_wave_height_m": <numeric_value>,83 "breaking_depth_m": <numeric_value>,84 "breaker_type": <numeric_value>,85 "iribarren_number": <numeric_value>86}87```88 89Write your complete solution to `/workspace/output.md`.90

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.

Gentle sandy beach

gentle_sandy_beach

Gentle sandy beach with long flat approach

gold-coast-open-beachbyron-bay-sandy-shoreglenelg-beach-sa
Parameter ranges
wave_height_m
0.5 – 2.5
wave_period_s
8 – 14
water_depth_m
0.5 – 4
bottom_slope
0.01 – 0.02

Moderate beach

moderate_beach

Moderate-slope beach with mixed sand and gravel

manly-beach-nswcottesloe-beach-watorquay-surf-coast
Parameter ranges
wave_height_m
0.5 – 3.5
wave_period_s
6 – 12
water_depth_m
0.5 – 5
bottom_slope
0.03 – 0.05

Steep reef

steep_reef

Steep reef or rocky platform with abrupt depth transition

ningaloo-reef-wagreat-barrier-reef-outernorfolk-island-reef
Parameter ranges
wave_height_m
1 – 5
wave_period_s
6 – 14
water_depth_m
1 – 8
bottom_slope
0.08 – 0.15

Harbour breakwater

harbour_breakwater

Harbour breakwater toe with constructed slope

fremantle-port-breakwatertownsville-harbour-armdarwin-east-arm-wharf
Parameter ranges
wave_height_m
1 – 6
wave_period_s
5 – 12
water_depth_m
2 – 10
bottom_slope
0.05 – 0.1

Example task

gold-coast-open-beach-gentle-sandy-beach-previewhard difficulty, some inputs hidden.

Gentle sandy beach with long flat approach. gold-coast-open-beach. Required outputs: breaking_wave_height_m, breaking_depth_m, breaker_type, iribarren_number

The model sees

Scenario context and visible inputs.

wave_height_m
0.5 to 2.5 m
water_depth_m
0.5 to 4 m

Executable tool: wave-breaking_calc.py

The model must infer

Inputs withheld at this difficulty.

  • Wave period s

    wave_period_s

  • Bottom slope

    bottom_slope

Stand-in text in the prompt

The site is {{ archetype.description }} ({{ archetype.site_context }})

The model must produce

The scored JSON answer schema.

{
  "breaking_wave_height_m": <number>,
  "breaking_depth_m": <number>,
  "breaker_type": <number>,
  "iribarren_number": <number>
}
  • breaking_wave_height_m · scored within ±3%
  • breaking_depth_m · scored within ±3%
  • breaker_type · scored within ±1%
  • iribarren_number · scored within ±5%