[MITgcm-devel] implicit formulation for bottom (and side) drag?
Martin Losch
martin.losch at awi.de
Tue Aug 30 10:49:22 EDT 2016
Hi Dan,
So far the drag is fully explicit (AFAIK).
I like your suggestion. I would actually make this “more invasive” (if it does not change results): remove all
#ifndef IMPLICIT_BOTTOMSIDEDRAG
& * uFld(i,j)
#endif
and have an extra loop
#ifdef ALLOW_IMPLICIT_BOTTOMSIDEDRAG
IF ( useImplictBottomSideDrag ) THEN
DO j=1-OLy+1,sNy+OLy-1
DO i=1-OLx,sNx+OLx-1
uDragTerms(i,j) = uDragTerms(i,j)*uFld(i,j) /
& (1. - deltaTmom*uDragTerms(i,j))
ENDDO
ENDDO
ELSE
#else
IF (.TRUE.)
#endif
DO j=1-OLy+1,sNy+OLy-1
DO i=1-OLx,sNx+OLx-1
uDragTerms(i,j) = uDragTerms(i,j)*uFld(i,j)
ENDDO
ENDDO
ENDIF
It would be more in-line with the general procedure (1) enable code with CPP flag, (2) turn it on with runtime flag. (1) is necessary to hide it from TAF/OpenAD if it create recomputations (division by active variable).
Martin
> On 18 Jul 2016, at 11:32, Daniel Goldberg <dngoldberg at gmail.com> wrote:
>
> Hi All,
>
> I am experimenting with some very small hFacMin values and experiencing instabilities as a result.
>
> Is it correct that there is no implicit formulation for bottom drag? If this is true, please see http://mitgcm.org/viewvc/MITgcm/MITgcm_contrib/dgoldberg/impl_drag/
>
> The change is not invasive (and hidden with a CPP directive.) The drag formulations take the form
> gU -= F(u,v) * u
> and i replace by
> gU -= F(u,v) / (1 + deltaTmom * F(u,v) ) * u
> which is not quite implicit but will help to stabilize when drag terms are high (e.g. when hFacW is small) and will hopefully not affect things too much when they are small.
>
> If not I wonder if anyone has any thoughts/objections on this modification to allow for such a thing? In addition, it seems something similar can be done for side drag if biharmonic horizontal viscosity is not used?
>
> Many thanks
> Dan
>
>
>
>
> --
>
> Daniel Goldberg, PhD
> Lecturer in Glaciology
> School of Geosciences, University of Edinburgh
> Geography Building, Drummond Street, Edinburgh EH8 9XP
>
>
> em: Dan.Goldberg at ed.ac.uk
> web: http://ocean.mit.edu/~dgoldberg
> _______________________________________________
> MITgcm-devel mailing list
> MITgcm-devel at mitgcm.org
> http://mitgcm.org/mailman/listinfo/mitgcm-devel
More information about the MITgcm-devel
mailing list