Bottom Friction and How to Slow Down Currents in Shallow Regions
-
- Posts: 12
- Joined: Wed Sep 07, 2022 2:32 pm
- Location: Harbor Branch Oceanographic Institute
Bottom Friction and How to Slow Down Currents in Shallow Regions
Hello everyone,
I am currently working on modeling Florida Bay, which consists of multiple sub-regions characterized by mud banks with seagrass. These areas are very shallow, with depths less than 30cm, and some parts are only submerged during high tide. Unfortunately, I am encountering difficulties in accurately modeling these regions, as the vertically averaged currents in my model appear to be excessively strong.
I attempted to increase the drag coefficient specifically in the shallow regions: I utilized the #define UV_QDRAG and #define UV_DRAG_GRID options and raised the drag coefficient for these areas by a lot (rdrg2 = 1 instead of 0.003). For the DEFAULT option LIMIT_BSTRESS, I adjusted the coefficient cff from 0.75 to 1. However, these modifications only resulted in a slight decrease in ubar and vbar values. I think that the problem lies in the fact that bustr/bvstr are multiplied by 0.5_r8*(Hz(i-1,j,1)+Hz(i,j,1)) and are only applied to the bottom layer in the baroclinic mode.
I would greatly appreciate any suggestions or insights on how to effectively reduce the barotropic currents in these regions.
Thank you all for your assistance in advance.
I am currently working on modeling Florida Bay, which consists of multiple sub-regions characterized by mud banks with seagrass. These areas are very shallow, with depths less than 30cm, and some parts are only submerged during high tide. Unfortunately, I am encountering difficulties in accurately modeling these regions, as the vertically averaged currents in my model appear to be excessively strong.
I attempted to increase the drag coefficient specifically in the shallow regions: I utilized the #define UV_QDRAG and #define UV_DRAG_GRID options and raised the drag coefficient for these areas by a lot (rdrg2 = 1 instead of 0.003). For the DEFAULT option LIMIT_BSTRESS, I adjusted the coefficient cff from 0.75 to 1. However, these modifications only resulted in a slight decrease in ubar and vbar values. I think that the problem lies in the fact that bustr/bvstr are multiplied by 0.5_r8*(Hz(i-1,j,1)+Hz(i,j,1)) and are only applied to the bottom layer in the baroclinic mode.
I would greatly appreciate any suggestions or insights on how to effectively reduce the barotropic currents in these regions.
Thank you all for your assistance in advance.
Re: Bottom Friction and How to Slow Down Currents in Shallow Regions
Do you think it is due to the vegetation, or just that the water is shallow?
you could use the VEGETATION option that we have in coawst.
it extracts momentum from the water column up to the veg height, and this has been shown to reduce flow in those areas.
Beudin, A., Kalra, T. S., Ganju, N. K., and Warner, J.C. (2016). Development of a coupled wave-flow-vegetation interaction module. Computers and Geosciences, http://dx.doi.org/10.1016/j.cageo.2016.12.010
you could use the VEGETATION option that we have in coawst.
it extracts momentum from the water column up to the veg height, and this has been shown to reduce flow in those areas.
Beudin, A., Kalra, T. S., Ganju, N. K., and Warner, J.C. (2016). Development of a coupled wave-flow-vegetation interaction module. Computers and Geosciences, http://dx.doi.org/10.1016/j.cageo.2016.12.010
Re: Bottom Friction and How to Slow Down Currents in Shallow Regions
Have you tried logarithmic drag? In [1], it says
[1] https://www.myroms.org/wiki/Sediment_Mo ... tom_Stress
For testing purposes, it may be possible to disable LIMIT_BSTRESS alltogether and use an extremely small timestep instead, just to see if there are any differences.Because the vertical elevation of the velocity in the bottom computational cell will vary spatially and temporally, the inclusion of the elevation provides a more consistent formulation.
[1] https://www.myroms.org/wiki/Sediment_Mo ... tom_Stress
Re: Bottom Friction and How to Slow Down Currents in Shallow Regions
" I think that the problem lies in the fact that bustr/bvstr are multiplied by 0.5_r8*(Hz(i-1,j,1)+Hz(i,j,1)) and are only applied to the bottom layer in the baroclinic mode."
How many vertical layers do you have? What Critical depth do you have? And what are the values of bottom and surface stretching parameters set to?
How many vertical layers do you have? What Critical depth do you have? And what are the values of bottom and surface stretching parameters set to?
-
- Posts: 12
- Joined: Wed Sep 07, 2022 2:32 pm
- Location: Harbor Branch Oceanographic Institute
Re: Bottom Friction and How to Slow Down Currents in Shallow Regions
Thanks, this looks like what I need.jcwarner wrote: ↑Thu May 11, 2023 11:55 am Do you think it is due to the vegetation, or just that the water is shallow?
you could use the VEGETATION option that we have in coawst.
it extracts momentum from the water column up to the veg height, and this has been shown to reduce flow in those areas.
Beudin, A., Kalra, T. S., Ganju, N. K., and Warner, J.C. (2016). Development of a coupled wave-flow-vegetation interaction module. Computers and Geosciences, http://dx.doi.org/10.1016/j.cageo.2016.12.010
I suspect it's the vegetation because the bottom portion of the water moves very fast in those shallow regions in my model.
-
- Posts: 12
- Joined: Wed Sep 07, 2022 2:32 pm
- Location: Harbor Branch Oceanographic Institute
Re: Bottom Friction and How to Slow Down Currents in Shallow Regions
I have 35 sigma layers so the stretching parameters don't matter too much for those shallow regions... The bottom is set to 0, and the the surface is set to 5. Dcrit = 0.3.sissalVE wrote: ↑Fri May 12, 2023 11:03 am " I think that the problem lies in the fact that bustr/bvstr are multiplied by 0.5_r8*(Hz(i-1,j,1)+Hz(i,j,1)) and are only applied to the bottom layer in the baroclinic mode."
How many vertical layers do you have? What Critical depth do you have? And what are the values of bottom and surface stretching parameters set to?
-
- Posts: 12
- Joined: Wed Sep 07, 2022 2:32 pm
- Location: Harbor Branch Oceanographic Institute
Re: Bottom Friction and How to Slow Down Currents in Shallow Regions
Thanks, I will try the two things you suggested, log drag and disabling LIMIT_BSTRESS.stef wrote: ↑Fri May 12, 2023 8:30 am Have you tried logarithmic drag? In [1], it says
For testing purposes, it may be possible to disable LIMIT_BSTRESS alltogether and use an extremely small timestep instead, just to see if there are any differences.Because the vertical elevation of the velocity in the bottom computational cell will vary spatially and temporally, the inclusion of the elevation provides a more consistent formulation.
[1] https://www.myroms.org/wiki/Sediment_Mo ... tom_Stress
Re: Bottom Friction and How to Slow Down Currents in Shallow Regions
Hi again,yuchengzhang wrote: ↑Sat May 13, 2023 11:06 amI have 35 sigma layers so the stretching parameters don't matter too much for those shallow regions... The bottom is set to 0, and the the surface is set to 5. Dcrit = 0.3.sissalVE wrote: ↑Fri May 12, 2023 11:03 am " I think that the problem lies in the fact that bustr/bvstr are multiplied by 0.5_r8*(Hz(i-1,j,1)+Hz(i,j,1)) and are only applied to the bottom layer in the baroclinic mode."
How many vertical layers do you have? What Critical depth do you have? And what are the values of bottom and surface stretching parameters set to?
I would suggest to have a non-zero value for theta b e.g. 0.1 or 1.0 as you are interested in resolving the bottom layer dynamics, and then maybe also reduce Dcrit, if a large part of you domain is this shallow.
Re: Bottom Friction and How to Slow Down Currents in Shallow Regions
35 sigma layers over 30cm? Hopefully, someone that knows can chip in but I would be concerned about numerical problems because there may be way too many layers for such a shallow water column. Is there any stratification at all? Just curious.
yuchengzhang wrote: ↑Sat May 13, 2023 11:06 amI have 35 sigma layers so the stretching parameters don't matter too much for those shallow regions... The bottom is set to 0, and the the surface is set to 5. Dcrit = 0.3.sissalVE wrote: ↑Fri May 12, 2023 11:03 am " I think that the problem lies in the fact that bustr/bvstr are multiplied by 0.5_r8*(Hz(i-1,j,1)+Hz(i,j,1)) and are only applied to the bottom layer in the baroclinic mode."
How many vertical layers do you have? What Critical depth do you have? And what are the values of bottom and surface stretching parameters set to?
Re: Bottom Friction and How to Slow Down Currents in Shallow Regions
it is nested in a larger model, which covers Florida Straits and part of west Florida shelf so it needs this to simulate the deeper areas. I am not very familiar with nesting but I guess ROMS won't allow different vertical stretching between parent and child model? One alternative approach is simply running an independent model instead of nesting. But then it will not have the benefit of the nesting.
Re: Bottom Friction and How to Slow Down Currents in Shallow Regions
One hack we have used is to modify the nudgcoef.nc array, adding a non-zero inverse timescale to places we want to slow down. This is a 3-D array so you can have variation in the vertical as well as horizontal. Then we set u, and v to zero in the ocean_clm.nc in the same regions, and turn on momentum nudging in the .in file: LnudgeM3CLM == T ! 3D momentum. In our case we are simulating the effect of an over-water pier that has a lot of pilings that extend through the whole water column.
-
- Posts: 12
- Joined: Wed Sep 07, 2022 2:32 pm
- Location: Harbor Branch Oceanographic Institute
Re: Bottom Friction and How to Slow Down Currents in Shallow Regions
This is smart, I will give this a try! Thanks!pmaccc wrote: ↑Tue May 16, 2023 2:06 pm One hack we have used is to modify the nudgcoef.nc array, adding a non-zero inverse timescale to places we want to slow down. This is a 3-D array so you can have variation in the vertical as well as horizontal. Then we set u, and v to zero in the ocean_clm.nc in the same regions, and turn on momentum nudging in the .in file: LnudgeM3CLM == T ! 3D momentum. In our case we are simulating the effect of an over-water pier that has a lot of pilings that extend through the whole water column.