Hi all,

I want to know if there is any significant improvement in the artificial reflections, which comes from the improper setting of OBC, by using the latest combination: Chapman explicit (free surface) + Shchepetkin (2D momentum). So I made a simple test as follows:

1. Control Run:

Experiment 1

A 0.5m abnormal high ssh, with a diameter of 200km, is set to be in the middle of model grid in the initial moment. The model domain for the control run is large enough, about 140 degree x 140 degree with a horizontal resolution of 1/6 degree, avoid the influence of lateral boundary. The total model grid is 841x841. To simplify the ideal case, f-plane is adopted, with its value corresponding to that in 30°N, besides, the model bathymetry is set to be flat, to 200m. The approximate time for the freely gravitational wave to travel from middle of the grid to the lateral boundary is about 50 hrs. The wall condition is applied to all four lateral boundary for the control run, and model is integrated to 50hrs, when the gravitational wave just arrive the boundary. So there will be no any influence or impact induced by the lateral boundary, and the wave can evolve freely. Model results are saved every 0.25 hr.

A sub region, which is symmetry against the middle point (421,421), is extracted from above experiment, i.e. grid index: 283~559, for the grid and initial file, which will be used for the next case study. Now the grid size for the case study is 277x277. The ‘perfect’ boundary forcing (zeta, ubar, vbar) for the freely evolving gravitational wave can be extracted from above experiment 1.

2. Old Case: Chapman implicit + Flather

Open boundary condition for all four sides, using Cha (Free surface) + Fla(2D momentum) + Radiation (3D varialbe)

3. New Case: Chapman explicit + Shchepetkin

Open boundary condition for all four sides, using Che (Free surface) + Shc (2D momentum) + Radiation (3D varialbe)

Result figures are attached.

Actually, I can not find any significant difference or improvement in the results for the new OBC combination (Che + Shc), comparing to the old (Cha + Fla), at least not as much as I expected.

Any comment from the others?

## Doubts about the new OBC combination (Che + Shc)

### Re: Doubts about the new OBC combination (Che + Shc)

What is your barotropic gravity wave Courant number in these experiments?

Cg_max = ?

Cg_max = ?

### Re: Doubts about the new OBC combination (Che + Shc)

shchepet wrote:What is your barotropic gravity wave Courant number in these experiments?

Cg_max = ?

Hi Sasha,

Many thanks for your reply~

The Courant number for all thress experiments are as follows:

(1) Control Run:

878: Minimum barotropic Courant Number = 1.01459937E-01

879: Maximum barotropic Courant Number = 2.21692138E-01

880: Maximum Coriolis Courant Number = 6.54498469E-02

(2) Old combination: Cha + Fla

885: Minimum barotropic Courant Number = 1.60422246E-01

886: Maximum barotropic Courant Number = 1.70376483E-01

887: Maximum Coriolis Courant Number = 6.54498469E-02

(3) New Combination: Che + Shc

885: Minimum barotropic Courant Number = 1.60422246E-01

886: Maximum barotropic Courant Number = 1.70376483E-01

887: Maximum Coriolis Courant Number = 6.54498469E-02

Is there any problem for such values?

Best,

Last edited by backkom on Mon Jun 03, 2013 1:59 pm, edited 1 time in total.

### Re: Doubts about the new OBC combination (Che + Shc)

The problem with these values is that they are way all too small.

Normally, when you are running the code in 3D configuration you should not waste your CPU time on the barotropic mode, so the time step dt and mode splitting ratio should be set accordingly from the respective stability limits.

While for the 3D mode the maximum allowed time step is hard to predict apriori because most likely it is limited by vertical advection and that depends on too many factors (topography, vertical grid stretching, overall flow regime), for the barotropic mode it is plain and simple: it is dominated by Cg=dtfast*sqrt[g*h*(1/dx^2+1/dy^2)], and the maximum barotropic Courant number should be 0.8 or slightly more: anything less than that is waste of computing power.

[There are different stepping algorithms for barotropic mode for dirreerent codes among ROMS family, some are more efficient than the others, but all of them a capable to exceed 0.8.]

So I suggest you to do the following:

1. Close all the open boundaries (solid wall boundary conditions all around) and keep increasing time step dt (same as dtfast, since this is a purely 2D configuration with ndtfast=1) and determine the maximum time step at which the model can still run stably. This is your "control run".

2. Then open the boundiries using one of the boundary algorithms and find the maximum allowed time step and compare it with the one for closed case.

3. Do the same thing for the other boundary algorithm.

P.S.: Your Minimum and Maximum barotropic Curant numbers are slightly different: 0.16 and 017 respectively, but I believe that this is flat bottom configuration. So why they are different?

Normally, when you are running the code in 3D configuration you should not waste your CPU time on the barotropic mode, so the time step dt and mode splitting ratio should be set accordingly from the respective stability limits.

While for the 3D mode the maximum allowed time step is hard to predict apriori because most likely it is limited by vertical advection and that depends on too many factors (topography, vertical grid stretching, overall flow regime), for the barotropic mode it is plain and simple: it is dominated by Cg=dtfast*sqrt[g*h*(1/dx^2+1/dy^2)], and the maximum barotropic Courant number should be 0.8 or slightly more: anything less than that is waste of computing power.

[There are different stepping algorithms for barotropic mode for dirreerent codes among ROMS family, some are more efficient than the others, but all of them a capable to exceed 0.8.]

So I suggest you to do the following:

1. Close all the open boundaries (solid wall boundary conditions all around) and keep increasing time step dt (same as dtfast, since this is a purely 2D configuration with ndtfast=1) and determine the maximum time step at which the model can still run stably. This is your "control run".

2. Then open the boundiries using one of the boundary algorithms and find the maximum allowed time step and compare it with the one for closed case.

3. Do the same thing for the other boundary algorithm.

P.S.: Your Minimum and Maximum barotropic Curant numbers are slightly different: 0.16 and 017 respectively, but I believe that this is flat bottom configuration. So why they are different?

### Re: Doubts about the new OBC combination (Che + Shc)

Hi Sasha,

I am really appreciated for your kind help on this topic~.

Best,

I am really appreciated for your kind help on this topic~.

Since the model domain for my ideal test case is on a spherical grid, ranging from 0 ~ 140 degree in East-West direction and -70 ~ 70 degree in North-South direction, with a spatially uniform resolution of 1/6 degree, thus the pm and pn gradually vary with the changes of latitude, consequently resulting in the variations of barotropic Courant number Cg=dtfast*sqrt[g*h*(1/dx^2+1/dy^2)].P.S.: Your Minimum and Maximum barotropic Curant numbers are slightly different: 0.16 and 017 respectively, but I believe that this is flat bottom configuration. So why they are different?

Do you mean that I should compare the maximum time step dt & dtfast allowed for different OBC combinations, instead of the artifical reflections as I did in my 1th post, i.e. the most advantage of the new OBC is to improve the model stability, hence it can tolerate a much biger time step than the Old OBC option, am I right?So I suggest you to do the following:

1. Close all the open boundaries (solid wall boundary conditions

all around) and keep increasing time step dt (same as dtfast,

since this is a purely 2D configuration with ndtfast=1) and

determine the maximum time step at which the model can still

run stably. This is your "control run".

2. Then open the boundiries using one of the boundary algorithms

and find the maximum allowed time step and compare it with the

one for closed case.

3. Do the same thing for the other boundary algorithm.

Best,

### Re: Doubts about the new OBC combination (Che + Shc)

You have to do both: look for artificial reflections, and look for maximum

allowed time step (actually to make sure that your boundary algorithm does

not impose additional restrictions on dtfast relative to what is the natural

limit of the time stepping algorithm), as well as check how the reflections

depend on Courant number when approaching the limit of stability.

allowed time step (actually to make sure that your boundary algorithm does

not impose additional restrictions on dtfast relative to what is the natural

limit of the time stepping algorithm), as well as check how the reflections

depend on Courant number when approaching the limit of stability.