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

Pump Affinity Laws

Calculates the new flow rate, head, and power draw for the same pump operating at a different rotational speed. The template applies the standard pump affinity laws Q2 = Q1(N2/N1), H2 = H1(N2/N1)^2, and P2 = P1(N2/N1)^3 for deterministic variable-speed pump checks.

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

5 inputs

Always given

Included directly in every task prompt.

5
  • Original speed

    original_speed_rpm

    Original pump rotational speed N1

    500 – 3600 rpm
  • New speed

    new_speed_rpm

    New pump rotational speed N2

    500 – 3600 rpm
  • Original flow

    original_flow_l_s

    Original pump flow rate Q1

    1 – 500 L/s
  • Original head

    original_head_m

    Original pump total head H1

    2 – 150 m
  • Original power

    original_power_kw

    Original pump power P1

    0.5 – 1000 kW

Scored outputs

4 outputs

Speed ratio

speed_ratio

Speed ratio N2/N1

Scores if within ±3% of the reference value.

New flow

new_flow_l_s

New flow rate Q2

Scores if within ±3% of the reference value.

New head

new_head_m

New total head H2

Scores if within ±3% of the reference value.

New power

new_power_kw

New pump power P2

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

All inputs remain visible at every tier

For this template, difficulty scales through parameter and scenario ranges rather than hidden information.

easy:
All parameters given for a small speed reduction
medium:
All parameters given across common pump operating scenarios
hard:
All parameters given for larger pumps and wider speed changes

Task bundle

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

/workspace

  • instruction.md
  • pump-affinity-laws_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 mechanical engineer specializing in pump systems.2 3## Problem4 5Apply the pump affinity laws to estimate the same pump's performance at a new rotational speed.6 7## Given8 9| Parameter | Value | Unit |10|-----------|-------|------|11| Original speed N1 | {{ original_speed_rpm }} | rpm |12| New speed N2 | {{ new_speed_rpm }} | rpm |13| Original flow Q1 | {{ original_flow_l_s }} | L/s |14| Original head H1 | {{ original_head_m }} | m |15| Original power P1 | {{ original_power_kw }} | kW |16 17{% if archetype_description is defined %}18### Operating Context19 20{{ archetype_description }}21{% endif %}22 23{% if tool_available %}24## Available Tool25 26A pump affinity law calculation tool is available at `/workspace/{{ meta.name }}_calc.py`. Run it with:27 28```bash29python3 /workspace/{{ meta.name }}_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. Speed ratio N2/N1402. New flow rate Q2 (L/s)413. New total head H2 (m)424. New pump power P2 (kW)43 44## Constraints45 46- No internet access is available. Work from engineering knowledge and the provided tool.47- Assume the same pump geometry, the same fluid, dynamically similar operation, and no cavitation limitation.48- Use Q2 = Q1 x (N2/N1).49- Use H2 = H1 x (N2/N1)^2.50- Use P2 = P1 x (N2/N1)^3.51 52## Output Format53 54Show 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:55 56```json57{58 "speed_ratio": <numeric_value>,59 "new_flow_l_s": <numeric_value>,60 "new_head_m": <numeric_value>,61 "new_power_kw": <numeric_value>62}63```64 65Write your complete solution to `/workspace/output.md`.66

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.

Small booster speed reduction

small_booster_speed_reduction

Small booster pump slowed for low-demand operation

suburban-water-boosterbuilding-services-transfer
Parameter ranges
original_speed_rpm
1450 – 1800
new_speed_rpm
900 – 1400
original_flow_l_s
5 – 35
original_head_m
15 – 45
original_power_kw
2 – 25

Transfer pump speed increase

transfer_pump_speed_increase

Transfer pump checked for a moderate speed increase

regional-water-transferindustrial-process-transfer
Parameter ranges
original_speed_rpm
1200 – 1800
new_speed_rpm
1600 – 2200
original_flow_l_s
40 – 180
original_head_m
20 – 80
original_power_kw
20 – 250

Large station trim

large_station_trim

Large pump station trimmed to match a lower duty point

trunk-main-transferraw-water-intake
Parameter ranges
original_speed_rpm
980 – 1500
new_speed_rpm
750 – 1200
original_flow_l_s
150 – 500
original_head_m
40 – 150
original_power_kw
150 – 1000

Example task

regional-water-transfer-transfer-pump-speed-increase-previewhard difficulty, all inputs given.

Transfer pump checked for a moderate speed increase. regional-water-transfer. Required outputs: speed_ratio, new_flow_l_s, new_head_m, new_power_kw

The model sees

Scenario context and visible inputs.

original_speed_rpm
1200 to 1800 rpm
new_speed_rpm
1600 to 2200 rpm
original_flow_l_s
40 to 180 L/s
original_head_m
20 to 80 m
original_power_kw
20 to 250 kW

Executable tool: pump-affinity-laws_calc.py

The model must infer

Inputs withheld at this difficulty.

Nothing. All inputs are supplied.

The model must produce

The scored JSON answer schema.

{
  "speed_ratio": <number>,
  "new_flow_l_s": <number>,
  "new_head_m": <number>,
  "new_power_kw": <number>
}
  • speed_ratio · scored within ±3%
  • new_flow_l_s · scored within ±3%
  • new_head_m · scored within ±3%
  • new_power_kw · scored within ±3%