New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Custom Query – NEMO

Custom Query (2547 matches)

Filters
 
Or
 
  
 
Columns

Show under each result:


Results (4 - 6 of 2547)

1 2 3 4 5 6 7 8 9 10 11 12
Ticket Resolution Summary Owner Reporter
#1768 fixed zdfric: momentum background viscosity propagates into tracer diffusivity nemo mclaus
Description

Context

I think, the following code of zdfric.F90 (line 158, trunk@6489) produces to large values of vertical eddy viscosity for the tracers.

    DO jj = 2, jpjm1                                   ! Eddy diffusivity coefficients (avt)
       DO ji = fs_2, fs_jpim1
          avt(ji,jj,jk) = tmric(ji,jj,jk) / ( 1._wp + rn_alp * zwx(ji,jj) )           &
             &                            * (  avmu(ji,jj,jk) + avmu(ji-1,jj,jk)      &
             &                               + avmv(ji,jj,jk) + avmv(ji,jj-1,jk)  )   &
             &          + avtb(jk) * tmask(ji,jj,jk)
          !                                            ! Add the background coefficient on eddy viscosity
          avmu(ji,jj,jk) = avmu(ji,jj,jk) + avmb(jk) * umask(ji,jj,jk)
          avmv(ji,jj,jk) = avmv(ji,jj,jk) + avmb(jk) * vmask(ji,jj,jk)
       END DO
    END DO

Analysis

The problem is that within the same loop body, the vertical eddy viscosity for the tracer is computed using a four point average of the eddy viscosity for the zonal and meridional momentum and the background eddy viscosity is added to the viscosity of the momentum. This way, avmu(ji-1,jj,jk) has the background viscosity added but avmu(ji,jj,jk) has not. As a result, the four point average is larger by about 50% of the momentums' background viscosity.

As a side effect, there is a memory dependence in the loop preventing the compiler to optimize the loop.

Affected versions are 3.4, 3.6 and trunk and possibly older version of NEMO

Fix

I suggest to split the loop into two nested loops. A patch file is attached.

#918 fixed zdf restart issue nemo charris
Description

I've found that the latest revision of the 3.4beta branch (r3276) won't do exact restarts. I think this is because of the changes in [3259] where avmu/v is now modified in dynzdf_imp. The sequence of calls in step (where tke_rst is called before dyn_zdf)) means that these changes don't get picked up by zdftke on the first time-step after a restart.

I'm not sure if the solution is just to move the tke_rst call, or whether there is a more significant bug here about the way avmu/v are being used / changed.

Thanks,

Chris

#2027 fixed zdf_iwm_init (zdfiwm.F90) reads from a misnamed name list acc acc
Description

Context

Branch dev_merge_2017: zdf_iwm_init reads from a namelist whose name does not match that of the namelist supplied in the namelist_ref file.

Analysis

As a consequence updated values for the wave-driven mixing parameters are not not used

Recommendation

Change every occurrence of namzdf_iwm_new to namzdf_iwm to match entries in the reference namelist ...

1 2 3 4 5 6 7 8 9 10 11 12
Note: See TracQuery for help on using queries.