wide sponge layer

General scientific issues regarding ROMS

Moderators: arango, robertson

Post Reply
Message
Author
Scarlett
Posts: 48
Joined: Tue Aug 04, 2015 4:42 pm
Location: Universidad del Mar (UMAR), Mexico
Contact:

wide sponge layer

#1 Unread post by Scarlett »

Hello everyone!
Could anybody help me to find where I can set the wide sponge layer?

I found in the file ocean.in that I can set the viscosity, but I didn't find the part of the wide.
I hope you can help me. Thanks in advance.

Scarlett Mar.Mo.

User avatar
kate
Posts: 4091
Joined: Wed Jul 02, 2003 5:29 pm
Location: CFOS/UAF, USA

Re: wide sponge layer

#2 Unread post by kate »

The sponge is generally set in ana_sponge.h. It allows you to set the strength and the width of the sponge when ANA_SPONGE is defined. Otherwise, the sponge is read from get_grid where it looks for the 'visc_factor' and 'diff_factor' variables.

Scarlett
Posts: 48
Joined: Tue Aug 04, 2015 4:42 pm
Location: Universidad del Mar (UMAR), Mexico
Contact:

Re: wide sponge layer

#3 Unread post by Scarlett »

Dear Kate:
Thanks for your help and quick response.
Yes I have define ANA_SPONGE and UV_VIS2, I found this in ana_sponge.h :

# if defined UV_VIS2
IF (LuvSponge(ng)) THEN
DO i=IstrT,IendT
DO j=JstrT,JendT
MIXING(ng) % visc2_r(i,j)=ABS(factor(i,j))* &
& MIXING(ng) % visc2_r(i,j)
END DO
END DO
DO j=JstrP,JendT
DO i=IstrP,IendT
MIXING(ng) % visc2_p(i,j)=0.25_r8*ABS(factor(i-1,j-1)+ & <---------Is this refers to the viscosity sponge layer?
& factor(i ,j-1)+ &
& factor(i-1,j )+ &
& factor(i ,j ))* &
& MIXING(ng) % visc2_p(i,j)
END DO
END DO
END IF
# endif
.
.
.
# if defined UV_VIS2
!
! Momentum sponge regions: sponge viscosities as in Marchesiello
! et al 2003.
!
IF (LuvSponge(ng)) THEN
innerF=visc2(ng) ! inner limit match value
outerF=100.0_r8 ! outer limit maximum value <--------- Is this refers to the wide sponge layer?
!
.
.
.
Thanks and cheers.
Scarlett.

User avatar
kate
Posts: 4091
Joined: Wed Jul 02, 2003 5:29 pm
Location: CFOS/UAF, USA

Re: wide sponge layer

#4 Unread post by kate »

Please read the comments at the top of ROMS/Functionals/ana_sponge.h.

In the ROMS world, a sponge is simply a large value of lateral viscosity (visc2_r, visc2_p) and/or diffusivity (diff2) with intent to damp out problematic noise. What I use instead is what the MOM6 people also call a sponge, but it is actually a nudging to an external climatology. Either way, it is something to be done in a band at the open boundaries, since the open boundaries are a source of numerical trouble.

Post Reply