-
Notifications
You must be signed in to change notification settings - Fork 51
Description
I am writing to report a potential bug in the surface plume implementation that I discovered during my simulations.
Problem Description
When using the surface plume configuration (plume_type = surface), the model produces abnormal results:
Bottom friction becomes zero
Turbulent kinetic energy becomes extremely small with periodic oscillations
Surface salinity becomes zero
Velocity fields show abnormal behavior
However, when I switch to bottom plume configuration (plume_type = bottom) with identical other settings, the model runs normally and produces physically reasonable results.
Configuration Details
My gotm.yaml configuration:
int_pressure:
type: plume
plume:
type: surface # Problematic
# type: bottom # Works correctly
x_slope: 0.001
y_slope: 0.00005
Technical Context
External forcing: Velocity fields from reanalysis data
Turbulence model: Standard GOTM turbulence closure
Model version: latest
Platform: windows
Evidence of the Bug
The consistent failure with surface plume and success with bottom plume suggests a specific issue in the surface plume implementation rather than general configuration problems.
Suspected Code Locations
Based on my analysis, the issue might be in:
friction.F90: Surface friction calculation for plume scenarios
internal_pressure.F90: Internal pressure gradient calculation for surface plumes
Boundary condition handling in the momentum equations
Steps to Reproduce
Configure a case with plume_type = surface
Use external velocity forcing
Compare with identical setup using plume_type = bottom
Request
Could you please investigate the surface plume implementation? I'm available to provide additional diagnostic information or test cases if needed.
Thank you for your attention to this matter.