Fos before drawdown
fos_before_drawdown
Factor of safety of the upstream slope before drawdown (submerged steady state)
Scores if within ±3% of the reference value.
Computes the factor of safety before and after rapid reservoir drawdown on an embankment dam upstream slope using the simplified infinite slope method per USACE EM 1110-2-1902. Assumes undrained pore-pressure response in low-permeability core materials, comparing the submerged steady-state condition to the post-drawdown condition where full saturated weight drives shear but pore pressures remain elevated.
with-tool: The model is given an executable Python calculator script.
Standards
One template produces many comparable benchmark tasks while keeping the scoring contract fixed.
01
The reusable contract shown on this page.
02
An archetype and site context are sampled.
03
Inputs may be hidden at harder tiers.
04
The model responds with the declared outputs.
Inputs the model receives, and the outputs it is scored on.
7 inputs
Included directly in every task prompt.
Slope angle deg
slope_angle_deg
Upstream slope angle measured from horizontal
Slip depth
slip_depth_m
Depth of potential slip surface below the slope face
Initial reservoir level
initial_reservoir_level_m
Initial (pre-drawdown) reservoir water level above the dam base
Final reservoir level
final_reservoir_level_m
Final (post-drawdown) reservoir water level above the dam base
Sampled from the scenario and inferable from its description.
Cohesion
cohesion_kpa
Effective cohesion c' of the embankment material
Derived from the archetype scenario. Hidden at hard difficulty.
Friction angle deg
friction_angle_deg
Effective friction angle phi' of the embankment material
Derived from the archetype scenario. Hidden at hard difficulty.
Saturated unit weight
saturated_unit_weight_kn_m3
Saturated unit weight of the embankment material gamma_sat
Derived from the archetype scenario. Hidden at hard difficulty.
4 outputs
fos_before_drawdown
Factor of safety of the upstream slope before drawdown (submerged steady state)
Scores if within ±3% of the reference value.
fos_after_drawdown
Factor of safety of the upstream slope after rapid drawdown (undrained pore pressures)
Scores if within ±3% of the reference value.
drawdown_ratio
Drawdown ratio R = (initial_level - final_level) / initial_level (dimensionless)
Scores if within ±3% of the reference value.
pore_pressure_kpa
Undrained pore pressure at the slip surface after drawdown u (kPa)
Scores if within ±3% of the reference value.
Each template is sampled at three tiers. Harder tiers may hide inputs, forcing the model to infer them from the scenario description.
All inputs given
Homogeneous dam scenario, all parameters given including material properties
All inputs given
All parameters given, wider range of dam types and operating conditions
Some inputs hidden
Material properties hidden; agent must infer cohesion, friction angle, and unit weight from site context
Hidden inputs
Prompt replacement text
The embankment is a {{ archetype.description }} ({{ archetype.site_context }})
The exact instruction and parameter contract used to generate this task, pinned to the published library source.
/workspace
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 geotechnical/dams engineer specializing in embankment slope stability and dam safety assessments.2 3## Problem4 5Calculate the factor of safety for an upstream embankment slope before and after rapid reservoir drawdown using the simplified infinite slope method per USACE EM 1110-2-1902.6 7## Given8 9| Parameter | Value | Unit |10|-----------|-------|------|11| Upstream slope angle (beta) | {{ slope_angle_deg }} | degrees |12| Slip surface depth (z) | {{ slip_depth_m }} | m |13{% if cohesion_kpa is defined %}14| Effective cohesion (c') | {{ cohesion_kpa }} | kPa |15{% endif %}16{% if friction_angle_deg is defined %}17| Effective friction angle (phi') | {{ friction_angle_deg }} | degrees |18{% endif %}19{% if saturated_unit_weight_kn_m3 is defined %}20| Saturated unit weight (gamma_sat) | {{ saturated_unit_weight_kn_m3 }} | kN/m3 |21{% endif %}22| Initial reservoir level | {{ initial_reservoir_level_m }} | m |23| Final reservoir level | {{ final_reservoir_level_m }} | m |24{% if archetype_description is defined %}25 26### Site Conditions27 28{{ archetype_description }}29{% endif %}30 31{% if tool_available %}32## Available Tool33 34A rapid drawdown factor of safety calculation tool is available at `/workspace/fos-rapid-drawdown_calc.py`. Run it with:35 36```bash37python3 /workspace/fos-rapid-drawdown_calc.py --help38```39 40You may use this tool to verify your calculations or compute values directly.41{% endif %}42 43## Required44 45Calculate the following:46 471. Factor of safety before drawdown FoS_before (dimensionless) — submerged steady-state condition482. Factor of safety after rapid drawdown FoS_after (dimensionless) — undrained pore pressures493. Drawdown ratio R (dimensionless)504. Undrained pore pressure at the slip surface u (kPa)51 52## Applicable Standards53 54- USACE EM 1110-2-1902 — Slope Stability (Chapter 13: Rapid Drawdown)55 56## Constraints57 58- No internet access is available. Work from engineering knowledge and the provided tool.59- Use the **simplified infinite slope method** with the following approach:60- **Buoyant unit weight:**61 - **gamma_sub = gamma_sat - gamma_w**62- **Before drawdown** (slope submerged, steady state):63 - Normal stress: **sigma_n = gamma_sub * z * cos^2(beta)**64 - Shear stress: **tau = gamma_sub * z * sin(beta) * cos(beta)**65 - **FoS_before = (c' + sigma_n * tan(phi')) / tau**66- **After rapid drawdown** (external water removed, pore pressures undrained):67 - Total normal stress: **sigma_n = gamma_sat * z * cos^2(beta)**68 - Pore pressure: **u = gamma_w * z * cos^2(beta)** (unchanged from pre-drawdown)69 - Effective normal stress: **sigma_n' = gamma_sub * z * cos^2(beta)**70 - Driving shear stress: **tau = gamma_sat * z * sin(beta) * cos(beta)** (full saturated weight)71 - **FoS_after = (c' + sigma_n' * tan(phi')) / tau**72- **Drawdown ratio:**73 - **R = (initial_level - final_level) / initial_level**74- Use **gamma_w = 9.81 kN/m3**75- USACE minimum acceptable FoS for rapid drawdown is typically 1.1 to 1.376- Typical material properties for compacted clay embankments: c' = 5-25 kPa, phi' = 18-32 degrees, gamma_sat = 17-21 kN/m377 78## Output Format79 80Show 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:81 82```json83{84 "fos_before_drawdown": <numeric_value>,85 "fos_after_drawdown": <numeric_value>,86 "drawdown_ratio": <numeric_value>,87 "pore_pressure_kpa": <numeric_value>88}89```90 91Write your complete solution to `/workspace/output.md`.92 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.
homogeneous_earth_dam
Homogeneous compacted clay embankment dam with moderate upstream slope
zoned_embankment
Zoned embankment dam with clay core and granular shells on upstream slope
tailings_dam
Mining tailings storage facility with upstream-raise embankment
flood_levee
Flood protection levee with steep upstream face on alluvial foundation
snowy-mountains-hydro-dam-zoned-embankment-preview — hard difficulty, some inputs hidden.
Zoned embankment dam with clay core and granular shells on upstream slope. snowy-mountains-hydro-dam. Required outputs: fos_before_drawdown, fos_after_drawdown, drawdown_ratio, pore_pressure_kpa
Scenario context and visible inputs.
Executable tool: fos-rapid-drawdown_calc.py
Inputs withheld at this difficulty.
Saturated unit weight kn m3
saturated_unit_weight_kn_m3
Cohesion
cohesion_kpa
Friction angle deg
friction_angle_deg
Stand-in text in the prompt
The embankment is a {{ archetype.description }} ({{ archetype.site_context }})
The scored JSON answer schema.
{
"fos_before_drawdown": <number>,
"fos_after_drawdown": <number>,
"drawdown_ratio": <number>,
"pore_pressure_kpa": <number>
}