I am facing a strange problem with my CROCO setup and was wondering if anyone can help. Details below:
Horizontal resolution = 200 meters with varying bathymetry ranging from 20 m shallow to 2500 m deep.
theta_s = 5.0, theta_b = 0.1, Tcline = 50.0
Haidvogel and Haney numbers are rx0 = 0.0123958344, rx1 = 0.2893939053. I think these are well within the stable range.
Here is the bathymetry contour plot with masked islands.
I am running this setup with a time step of 20 sec and barotropic time step of 30 sec. The preprocessor options are the following:
The initial condition is set with no temperature/salinity gradient, and 0 velocities everywhere in the domain. However, within the first few seconds the outputs show a strange buildup in the zeta (sea surface), and the velocities. This buildup accumulates over the first few seconds, and blows up at the 6th second due to unrealistically high velocity. Here is a vertical transect plot of the velocity at the 6th second when it blows.
Right at that point I looked into the depths of the sigma layers. Here is the sigma layer plot at the 6th second. At the point of instability, the surface height shows a strange disturbance, and the sigma layers are also getting distorted because of it. I couldn’t figure out what’s causing this problem.
Then, I then looked into an earlier time step. Here is the velocity at the same transect at 5 seconds.
I think this disturbance is mostly because of the batrotropic component which comes from the sea surface height. Here is the barotropic velocity contour plot at 5 sec:
Does anybody know whats causing this? Any suggestions?
I have tried running a larger grid setup with 3 km resolution and that works perfectly with no problems with SSH. However, with finer resolution I am facing these issues. These strange disturbances in SSH are affecting the velocity, blowing up the simulation. Is there any specific modification that I should do for getting the SSH correct in a fine resolution run?
If you want to look at more details, the preprocessor cppdefs.h and input .in files are attached.