Opened 14 years ago

Closed 14 years ago

#466 closed bug (Fixed)

IMPORTANT: horizontal viscosity and MIX_GEO_UV

Reported by: arango Owned by: arango
Priority: major Milestone: Release ROMS/TOMS 3.4
Component: Nonlinear Version: 3.4
Keywords: Cc:

Description

Checking the horizontal viscosity along geopotentials (MIX_GEO_UV) has been in my to-do list for very long time. We have some complains about this in the past about the model blowing-up in parallel applications and arrays out-of-range in couple of DO-loops. I checked this problem and I was able to reproduce the reported problems.

I corrected the parallel bugs for uv3dmix2_geo.h and uv3dmix4_geo.h. Also corrected a missing dt factor in the biharmonic mixing.

I did an analysis for each do loop and reworked all the DO-loop ranges and eliminated specifying them with local CPP directives. I wrote then in such a way that eliminated special treatment in nesting applications.

I also revised and tested the tangent linear, representer, and adjoint version of these routines. I also added the new code for time-evolving, 3D viscosity coefficients. However, this time evolving capability is not yet available in adjoint-based applications. It is coded for completeness and availability in the future.

Many thanks to Xinyou Lin for bringing this to my attention.

Although the MIX_GEO_UV option is rarely used for momentum. I highly recommend everybody to update because this is an important correction and this bug has been in ROMS for long time.

Change History (1)

comment:1 by arango, 14 years ago

Resolution: Fixed
Status: newclosed
Note: See TracTickets for help on using tickets.