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.
top_substitute.h90 in branches/dev_001_GM/NEMO/TOP_SRC – NEMO

source: branches/dev_001_GM/NEMO/TOP_SRC/top_substitute.h90 @ 776

Last change on this file since 776 was 776, checked in by gm, 16 years ago

dev_001_GM - passivetrc_substitute.h90 renamed top_substitute.h90 - compilation OK

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 3.5 KB
Line 
1   !!----------------------------------------------------------------------
2   !!                    ***  top_substitute.h90   ***
3   !!----------------------------------------------------------------------
4   !! ** purpose : Statement function file: to be include in all routines
5   !!              concerning passive tracer model
6   !!----------------------------------------------------------------------
7   !! History :   1.0  !  2004-03 (C. Ethe) Original code
8   !!             2.0  !  2007-12 (C. Ethe, G. Madec) new architecture
9   !!----------------------------------------------------------------------
10   !! NEMO/TOP 2.0 , LOCEAN-IPSL (2007)
11   !! $Id:$
12   !! Software governed by the CeCILL licence (modipsl/doc/NEMO_CeCILL.txt)
13   !!----------------------------------------------------------------------
14
15    ! Lateral eddy diffusivity coefficient for passive tracer:
16    ! ========================================================
17#if defined key_traldf_c3d || defined key_off_degrad
18!   'key_traldf_c3d' :                 aht: 3D coefficient
19#       define fsahtrt(i,j,k)  trcrat * ahtt(i,j,k)
20#       define fsahtru(i,j,k)  trcrat * ahtu(i,j,k)
21#       define fsahtrv(i,j,k)  trcrat * ahtv(i,j,k)
22#       define fsahtrw(i,j,k)  trcrat * ahtw(i,j,k)
23#elif defined key_traldf_c2d
24!   'key_traldf_c2d' :                 aht: 2D coefficient
25#       define fsahtrt(i,j,k)  trcrat * ahtt(i,j)
26#       define fsahtru(i,j,k)  trcrat * ahtu(i,j)
27#       define fsahtrv(i,j,k)  trcrat * ahtv(i,j)
28#       define fsahtrw(i,j,k)  trcrat * ahtw(i,j)
29#elif defined key_traldf_c1d
30!   'key_traldf_c1d' :                 aht: 1D coefficient
31#       define fsahtrt(i,j,k)  trcrat * ahtt(k)
32#       define fsahtru(i,j,k)  trcrat * ahtu(k)
33#       define fsahtrv(i,j,k)  trcrat * ahtv(k)
34#       define fsahtrw(i,j,k)  trcrat * ahtw(k)
35#else
36!   Default option :             aht: Constant coefficient
37#       define fsahtrt(i,j,k)  ahtrc0
38#       define fsahtru(i,j,k)  ahtrc0
39#       define fsahtrv(i,j,k)  ahtrc0
40#       define fsahtrw(i,j,k)  ahtrc0
41#endif
42
43    ! Eddy induced velocity  coefficient for passive tracer:
44    ! ========================================================
45#if defined key_traldf_c3d || defined key_off_degrad
46!   'key_traldf_c3d' :                 eiv: 3D coefficient
47#       define fsaeitru(i,j,k)  trcrat * aeiu(i,j,k)
48#       define fsaeitrv(i,j,k)  trcrat * aeiv(i,j,k)
49#       define fsaeitrw(i,j,k)  trcrat * aeiw(i,j,k)
50#elif defined key_traldf_c2d
51!   'key_traldf_c2d' :                 eiv: 2D coefficient
52#       define fsaeitru(i,j,k)  trcrat * aeiu(i,j)
53#       define fsaeitrv(i,j,k)  trcrat * aeiv(i,j)
54#       define fsaeitrw(i,j,k)  trcrat * aeiw(i,j)
55#elif defined key_traldf_c1d
56!   'key_traldf_c1d' :                 eiv: 1D coefficient
57#       define fsaeitru(i,j,k)  trcrat * aeiu(k)
58#       define fsaeitrv(i,j,k)  trcrat * aeiv(k)
59#       define fsaeitrw(i,j,k)  trcrat * aeiw(k)
60#else
61!   Default option :             eiv: Constant coefficient
62#       define fsaeitru(i,j,k)  aeiv0
63#       define fsaeitrv(i,j,k)  aeiv0
64#       define fsaeitrw(i,j,k)  aeiv0
65#endif
66    ! mixing for passive tracer:
67    ! ========================================================
68#if defined key_trc_zdfddm
69!   'key_trc_zdfddm' :    avs
70#       define fstravs(i,j,k)   avs(i,j,k)
71#else
72!   Defautl option :   avs = avt
73#       define fstravs(i,j,k)   avt(i,j,k)
74#endif
75
76! ========================================================
77#include "domzgr_substitute.h90"
78#include "ldfeiv_substitute.h90"
79#include "ldftra_substitute.h90"
80#include "vectopt_loop_substitute.h90"
Note: See TracBrowser for help on using the repository browser.