Chapter 5 Coastal Engineering: Detached Breakwater#
1. Introduction#
What Are Detached Breakwaters?#
Detached breakwaters are shore-parallel coastal structures placed offshore to reduce wave energy reaching the beach. They are typically constructed from rock, concrete, or lightweight materials and may be:
Emerged (above water level)
Submerged (low-crested)
Segmented (with gaps between units)
Their primary goals are:
To dissipate wave energy
To modify sediment transport
To promote beach accretion and reduce erosion
Design Philosophy#
Design of detached breakwaters involves balancing:
Hydrodynamic performance (wave transmission, reflection)
Morphological response (salient or tombolo formation)
Environmental impact (habitat, circulation)
Constructability and cost
Key geometric parameters:
\(( L_s \)): Breakwater length
\(( X \)): Distance offshore
\(( L_s/X \)): Governs shoreline response
Empirical studies (e.g., Gourlay, CERC, Suh & Dalrymple) guide design thresholds:
\(( L_s/X < 0.5 \)): Limited response
\(( 0.5 < L_s/X < 1.5 \)): Salient formation
\(( L_s/X > 1.5 \)): Tombolo formation
Shoreline Response Types#
1. Salient#
Bell-shaped shoreline protrusion
Does not connect to breakwater
Allows partial wave energy and sediment flow
Less risk of downstream erosion
2. Tombolo#
Sand accumulation connects beach to breakwater
Creates sheltered zone
May cause upstream accretion and downstream erosion
Often forms when \(( L_s/X > 1.5 \))
Global Applications#
Detached breakwaters have been used extensively in:
Country |
Application Highlights |
---|---|
🇯🇵 Japan |
Over 2,100 breakwaters built (1962–1981) for erosion control |
🇮🇹 Italy |
Common along Adriatic coast for beach stabilization |
🇪🇸 Spain |
Used on Mediterranean coast; geometric models developed |
🇺🇸 USA |
Projects in California, Great Lakes, Gulf Coast |
🇮🇱 Israel |
Tombolo formation observed in Tel Aviv |
🇦🇺 Australia |
Used for beach protection and recreation |
Studies show mixed results depending on wave climate, sediment availability, and structure layout.
Louisiana Case Study: Coastal Restoration#
Rockefeller Wildlife Refuge (Cameron Parish)#
One of the most biologically diverse areas in the U.S.
Faced erosion rates up to 300 ft/year
CWPPRA-funded project installed 4 miles of segmented breakwaters
Used lightweight aggregate core to prevent
References#
[U.S. Army Corps of Engineers, 2011] also provides a clear and formal description of depth of closure (DoC), particularly in Part VI – Design of Coastal Structures. [U.S. Army Coastal Engineering Research Center, 1984]remains a cornerstone reference, offering empirical guidance and design principles for rubble-mound structures and beach profile evolution. Developed by the Coastal Engineering Research Center (CERC), it laid the groundwork for subsequent refinements in coastal engineering theory and practice. Works such as [Dally and Pope, 1986] and [Suh and Dalrymple, 1987] advanced the design and performance evaluation of detached breakwaters through laboratory and field studies. [McCormick, 1993] expanded the design framework to include innovative stabilization techniques and practical guidelines for coastal infrastructure. Collectively, these references provide a robust foundation for understanding the depth of closure, sediment transport limits, and structural interactions in dynamic coastal environments.
“Detached breakwaters interact with waves and sediment in complex ways. Using multiple shoreline response models helps engineers make informed decisions and adapt designs to site-specific conditions.”
“Detached breakwaters are powerful tools for shoreline stabilization. This simulation helps engineers evaluate their effectiveness using multiple empirical models, ensuring robust and informed coastal design.”
2. Simulation#
🧱 Detached Breakwater Design Simulator — Shoreline Response Explorer#
This interactive Jupyter-based tool evaluates shoreline changes behind a detached breakwater using empirical methods from coastal engineering literature. It combines geometry setup, wave inputs, and sediment response predictions with real-time visualization.
🧠 What It Does#
Accepts design and environmental parameters:
Breakwater length, offshore distance, gap, wave height, crest elevation, submergence, wave angle
Computes:
Ls/X ratio: Used in multiple shoreline response methods
Salient length (Xs) — via Suh & Dalrymple (1987)
Tombolo thickness — via Nir (1982)
Sediment volume — via Herbich (1989)
Applies 11 literature-based rules to predict shoreline morphology:
Tombolo, Salient, Limited Response, or No Accretion
Ranks most consistent morphological predictions across methods
Visualizes geometry: coastline, breakwater, wave direction, predicted salient tip
🎛️ Inputs via Sliders#
Parameter |
Description |
---|---|
|
Wave height (m) |
|
Water depth at breakwater (m) |
|
Breakwater crest elevation (m) |
|
Breakwater length (m) |
|
Offshore distance to coastline (m) |
|
Submergence toggle (True/False) |
|
Wave approach angle (° from normal) |
|
Gap between breakwater segments (m) |
Computed Parameters#
Ls/X Ratio: Used to classify shoreline response
Wave Transmission Coefficient (Kt): Fraction of wave energy transmitted past the breakwater
Wave Reflection Coefficient (Kr): Fraction of wave energy reflected seaward
Wave Direction Vector: Visualized as an arrow on the map
Shoreline Response Models Evaluated#
Study |
Response Criteria |
---|---|
Inman & Fritschy (1966) |
Ls/X ≤ 0.33 → Limited |
Noble (1978) |
Ls/X ≤ 0.17 → Limited |
Gourlay (1981) |
Ls/X ≥ 1 → Tombolo; 0.4–1 → Salient |
Nir (1982) |
Ls/X ≤ 0.5 → No Accretion |
CERC (1984) |
Ls/X ≤ 1 → Salient; >2 → Tombolo |
Dally & Pope (1986) |
Ls/X ≥ 1.5 → Tombolo |
Suh & Dalrymple (1987) |
Ls/X ≥ 1 → Tombolo |
Herbich (1989) |
Ls/X > 1 → Tombolo; ≤0.5 → Limited |
Hsu & Silvester (1980) |
Ls/X > 1.33 → Tombolo |
Ahren & Cox (1990) |
Ls/X > 1.5 → Tombolo |
McCormick (1993) |
Ls/X < 0.6 → Tombolo; >0.6 → Salient |
📊 Outputs#
Ls/X ratio
Shoreline response by method (11 methods listed
Top 3 most consistent predictions (e.g. Tombolo by 7 methods)
Predicted salient length (Xs) in meters
Estimated tombolo thickness in meters
Estimated sediment volume in cubic meters per 30 m width
📈 Visual plot showing:
Breakwater geometry
Wave angle
Predicted sediment feature location
🧭 How to Interpret#
Ls/X ratio helps categorize response (e.g., Tombolo forms when Ls/X > 1)
Salient length (Xs) shows the projected horizontal growth of shoreline feature
Tombolo thickness estimates vertical buildup behind breakwater
Sediment volume informs dredging, beach nourishment, or modeling
Visualization supports layout planning and stakeholder communication
Use this tool for scenario testing, morphological classification, or integrating breakwater design into sediment transport and shoreline evolution studies.
# 📌 Run this cell in a Jupyter Notebook
import numpy as np
import matplotlib.pyplot as plt
import ipywidgets as widgets
from IPython.display import display, clear_output
# 📐 Shoreline response predictors from literature
def shoreline_response_methods(Ls, X):
ratio = Ls / X
methods = {}
methods['Inman & Fritschy (1966)'] = 'Limited' if ratio <= 0.33 else 'Salient'
methods['Noble (1978)'] = 'Limited' if ratio <= 0.17 else 'Salient'
methods['Gourlay (1981)'] = 'Tombolo' if ratio >= 1 else 'Salient' if ratio >= 0.4 else 'Limited'
methods['Nir (1982)'] = 'No Accretion' if ratio <= 0.5 else 'Salient'
methods['CERC (1984)'] = 'Tombolo' if ratio > 2 else 'Salient'
methods['Dally & Pope (1986)'] = 'Tombolo' if ratio >= 1.5 else 'Salient'
methods['Suh & Dalrymple (1987)'] = 'Tombolo' if ratio >= 1 else 'Salient'
methods['Herbich (1989)'] = 'Tombolo' if ratio > 1 else 'Salient' if ratio > 0.5 else 'Limited'
methods['Hsu & Silvester (1980)'] = 'Tombolo' if ratio > 1.33 else 'Salient'
methods['Ahren & Cox (1990)'] = 'Tombolo' if ratio > 1.5 else 'Salient'
methods['McCormick (1993)'] = 'Salient' if ratio > 0.6 else 'Tombolo'
return methods
# 📐 Suh & Dalrymple (1987) salient length prediction
def predict_salient_length(X, Ls, G):
GX_ratio = (G * X) / (Ls**2)
Xs = X * 14.8 * GX_ratio * np.exp(-2.83 * np.sqrt(GX_ratio))
return round(Xs, 2)
# 📐 Nir (1982) tombolo thickness estimation
def predict_tombolo_thickness(Xs, Ls):
if Xs == 0 or Ls == 0:
return 0
thickness = 1.78 - 0.809 * (Xs / Ls)
return round(max(thickness, 0), 2)
# 📐 Herbich (1989) sediment volume estimation
def predict_sediment_volume(X, Ls, width=30):
ratio = X / Ls
Qb_per_length = np.exp(0.315 - 1.922 * ratio)
Qb_total = Qb_per_length * width # assume 30 m alongshore width
return round(Qb_total, 2)
# 📊 Interactive design function
def breakwater_design(Hs, h_breakwater, H_breakwater, L_breakwater, X_offshore, submerged, wave_angle_deg, gap):
clear_output(wait=True)
ratio = L_breakwater / X_offshore
methods = shoreline_response_methods(L_breakwater, X_offshore)
salient_length = predict_salient_length(X_offshore, L_breakwater, gap)
tombolo_thickness = predict_tombolo_thickness(salient_length, L_breakwater)
sediment_volume = predict_sediment_volume(X_offshore, L_breakwater)
# Count responses
counts = {'Tombolo': 0, 'Salient': 0, 'Limited': 0, 'No Accretion': 0}
for m in methods.values():
counts[m] += 1
top_consistent = sorted(counts.items(), key=lambda x: -x[1])[:3]
# 📋 Output summary
print(f"📏 Breakwater Length (Ls): {L_breakwater:.1f} m")
print(f"📍 Distance Offshore (X): {X_offshore:.1f} m")
print(f"🔢 Ls/X Ratio: {ratio:.2f}")
print(f"🔀 Gap Between Segments (G): {gap:.1f} m")
print(f"📐 Predicted Salient Length (Xs): {salient_length:.2f} m")
print(f"🧱 Estimated Tombolo Thickness: {tombolo_thickness:.2f} m")
print(f"🏖️ Estimated Sediment Volume (Herbich): {sediment_volume:.2f} m³ per 30 m width")
print(f"🧭 Wave Direction: {wave_angle_deg:.1f}° from shore-normal\n")
print("📊 Shoreline Response Predictions:")
for method, result in methods.items():
print(f" - {method}: {result}")
print("\n🏆 Top 3 Most Consistent Predictions:")
for label, score in top_consistent:
print(f" - {label}: {score} methods")
# 📈 Geometry visualization
fig, ax = plt.subplots(figsize=(10, 6))
# Plot coastline
ax.plot([0, L_breakwater + 40], [0, 0], 'b--', label='Coastline')
# Plot breakwater
x_start = 20
x_end = x_start + L_breakwater
y_base = -X_offshore
ax.plot([x_start, x_end], [y_base, y_base], color='gray', linewidth=6, label='Breakwater')
ax.text((x_start + x_end) / 2, y_base - 1, 'Breakwater Crest', ha='center', color='black')
# Annotate offshore distance
ax.annotate('', xy=(x_start, 0), xytext=(x_start, y_base),
arrowprops=dict(arrowstyle='<->', color='darkgreen'))
ax.text(x_start - 2, y_base / 2, f'{X_offshore:.1f} m', va='center', ha='right', color='darkgreen')
# Plot wave direction
angle_rad = np.radians(wave_angle_deg)
arrow_length = 15
dx = arrow_length * np.sin(angle_rad)
dy = -arrow_length * np.cos(angle_rad)
ax.arrow(x_start + L_breakwater / 2, 5, dx, dy, head_width=2, head_length=3,
fc='red', ec='red', label='Wave Direction')
ax.text(x_start + L_breakwater / 2 + dx / 2, 5 + dy / 2, f'{wave_angle_deg:.0f}°', color='red')
# Plot predicted salient tip
ax.plot([x_start + L_breakwater / 2], [-salient_length], 'go', label='Predicted Salient Tip')
ax.text(x_start + L_breakwater / 2, -salient_length - 1, f'Xs = {salient_length:.1f} m', ha='center', color='green')
ax.set_title('Detached Breakwater Geometry with Salient & Sediment Prediction')
ax.set_xlabel('Alongshore Distance (m)')
ax.set_ylabel('Offshore Distance (m)')
ax.set_xlim(0, L_breakwater + 40)
ax.set_ylim(-X_offshore - 20, 10)
ax.grid(True)
ax.legend()
plt.tight_layout()
plt.show()
# 🎚️ Interactive controls
Hs_slider = widgets.FloatSlider(value=1.5, min=0.5, max=5.0, step=0.1, description='Wave Height Hs (m)')
h_slider = widgets.FloatSlider(value=2.0, min=1.0, max=10.0, step=0.1, description='Water Depth h (m)')
H_slider = widgets.FloatSlider(value=1.0, min=0.5, max=5.0, step=0.1, description='Crest Elevation H (m)')
L_slider = widgets.FloatSlider(value=30.0, min=10.0, max=100.0, step=5.0, description='Breakwater Length (m)')
X_slider = widgets.FloatSlider(value=20.0, min=5.0, max=100.0, step=5.0, description='Distance Offshore (m)')
gap_slider = widgets.FloatSlider(value=20.0, min=5.0, max=100.0, step=5.0, description='Gap G (m)')
submerged_toggle = widgets.ToggleButtons(options=[True, False], value=True, description='Submerged?')
angle_slider = widgets.FloatSlider(value=0.0, min=-90.0, max=90.0, step=5.0, description='Wave Angle (°)')
interactive_plot = widgets.interactive(
breakwater_design,
Hs=Hs_slider,
h_breakwater=h_slider,
H_breakwater=H_slider,
L_breakwater=L_slider,
X_offshore=X_slider,
gap=gap_slider,
submerged=submerged_toggle,
wave_angle_deg=angle_slider
)
display(interactive_plot)
3. Self-Assessment#
Conceptual Questions#
What does the Ls/X ratio represent in breakwater design?
A. Ratio of wave height to crest elevation
B. Ratio of breakwater length to offshore distance
C. Ratio of sediment thickness to beach width
D. Ratio of wave direction to shoreline angle
Which shoreline response is most likely when Ls/X > 1.5?
A. No accretion
B. Salient formation
C. Tombolo formation
D. Limited response
Wave transmission coefficient (Kt) indicates:
A. The amount of wave energy absorbed by the breakwater
B. The fraction of wave energy reflected seaward
C. The fraction of wave energy passing through or over the breakwater
D. The angle of wave approach
Which of the following is NOT a factor in predicting shoreline response?
A. Breakwater length
B. Offshore distance
C. Wave angle
D. Crest elevation
Which study suggests that Ls/X < 0.6 leads to tombolo formation?
A. Gourlay (1981)
B. McCormick (1993)
C. Nir (1982)
D. Suh & Dalrymple (1987)
Interpretation#
Why is the breakwater plotted parallel to the coastline in the simulation?
What does the red arrow on the map represent, and how does its angle affect sediment transport?
How does changing the crest elevation affect wave transmission and shoreline response?
Why are multiple empirical methods used instead of relying on a single predictor?
How does the scoring system help identify the most consistent shoreline response?
Reflective Questions#
How do breakwater geometry and placement influence sediment accumulation and beach stability?
Why is it important to visualize wave direction in coastal structure design?
What are the limitations of using empirical Ls/X ratios without site-specific data?
How would you modify the design if most methods predict limited response?
What insights can be gained by comparing shoreline response across multiple studies?
Design Insight#
“Detached breakwaters interact with waves and sediment in complex ways. Using multiple shoreline response models helps engineers make informed decisions and adapt designs to site-specific conditions.”