-
Notifications
You must be signed in to change notification settings - Fork 0
5: Free Surface RHS Evaluation #15
Copy link
Copy link
Open
Labels
coreEssential functionalityEssential functionality
Description
Description
Implement evaluation of the right-hand side of the Zakharov free surface evolution equations. These are the kinematic and dynamic boundary conditions that govern wave evolution.
Background
The Zakharov formulation evolves surface quantities η and φ̃:
Kinematic (mass conservation):
∂η/∂t = -∂ₓη · ∂ₓφ̃ + w̃·(1 + (∂ₓη)²)
Dynamic (momentum/Bernoulli):
∂φ̃/∂t = -gη - (1/2)·[(∂ₓφ̃)² - w̃²·(1 + (∂ₓη)²)]
Note: Contains up to quartic nonlinear terms (w̃² · (∂ₓη)²).
Tasks
- Implement surface differentiation (1D) for ∂ₓη, ∂ₓφ̃
- Implement kinematic RHS: R_η
- Implement dynamic RHS: R_φ
- Test with still water (should give zero)
- Test with Airy wave (compare to analytical ∂ₜη, ∂ₜφ̃)
Acceptance Criteria
- Still water (η=0, φ̃=0, w̃=0): R_η = 0, R_φ = 0 exactly
- Airy wave: R_η matches analytical ∂ₜη within 1%
- Airy wave: R_φ matches analytical ∂ₜφ̃ within 1%
- Nonlinear terms computed correctly (verify individual terms)
Technical Notes
- All operations are pointwise at surface nodes
- Need to be careful with the sign conventions
- The quartic terms will cause aliasing issues for steep waves (addressed in Issue Code environment stuff before handin #8)
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
coreEssential functionalityEssential functionality