/[MITgcm]/MITgcm/pkg/autodiff/exch_uv_ad.flow
ViewVC logotype

Contents of /MITgcm/pkg/autodiff/exch_uv_ad.flow

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.6 - (show annotations) (download)
Sat Jun 14 16:15:04 2008 UTC (16 years ago) by heimbach
Branch: MAIN
CVS Tags: checkpoint62c, checkpoint62a, checkpoint62f, checkpoint62e, checkpoint62d, checkpoint60, checkpoint61, checkpoint62, checkpoint62b, checkpoint61f, checkpoint61n, checkpoint61q, checkpoint61z, checkpoint61e, checkpoint61g, checkpoint61d, checkpoint61b, checkpoint61c, checkpoint61a, checkpoint61o, checkpoint61l, checkpoint61m, checkpoint61j, checkpoint61k, checkpoint61h, checkpoint61i, checkpoint61v, checkpoint61w, checkpoint61t, checkpoint61u, checkpoint61r, checkpoint61s, checkpoint61p, checkpoint61x, checkpoint61y
Changes since 1.5: +12 -2 lines
Preparing merge of exch2 adjoint in main repository.

1 C $Header: /u/gcmpack/MITgcm/pkg/autodiff/exch_uv_ad.flow,v 1.5 2007/10/08 23:50:53 jmc Exp $
2 C $Name: checkpoint59r $
3
4 #include "CPP_OPTIONS.h"
5
6 C /==========================================================\
7 C | TAMC flow directives |
8 C | for library subroutines exch_uv_xy_rs exch_uv_xyz_rs |
9 C | exch_uv_xy_rl exch_uv_xyz_rl |
10 C |==========================================================|
11 C | These directives are for standard adjoint code |
12 C | generation (vector Jacobian product). |
13 C | tamc -reverse .... |
14 C | |
15 C | written and tested by Ralf Giering, Jan. 14th 1999 |
16 C | added new S/R's for _xz_ , _yz_ heimbach@mit.edu May-01 |
17 C | extended to tangent linear code heimbach@mit.edu Jan-02 |
18 C |==========================================================|
19 C | SUBROUTINE EXCH_UV_*_R* is linear |
20 C | only the array argument is active |
21 C | only myThid is required for the adjoint subroutine |
22 C \==========================================================/
23
24 #ifdef ALLOW_EXCH2
25
26 C Suppress these flow directives in conjunction with EXCH2 adjoint
27
28 #else
29
30 cadj SUBROUTINE exch_uv_xy_rs INPUT = 1, 2, 3, 4
31 cadj SUBROUTINE exch_uv_xy_rs OUTPUT = 1, 2
32 cadj SUBROUTINE exch_uv_xy_rs ACTIVE = 1, 2
33 cadj SUBROUTINE exch_uv_xy_rs DEPEND = 3, 4
34 cadj SUBROUTINE exch_uv_xy_rs ADNAME = adexch_uv_xy_rs
35 cadj SUBROUTINE exch_uv_xy_rs FTLNAME = exch_uv_xy_rs
36
37 cadj SUBROUTINE exch_uv_xy_rl INPUT = 1, 2, 3, 4
38 cadj SUBROUTINE exch_uv_xy_rl OUTPUT = 1, 2
39 cadj SUBROUTINE exch_uv_xy_rl ACTIVE = 1, 2
40 cadj SUBROUTINE exch_uv_xy_rl DEPEND = 3, 4
41 cadj SUBROUTINE exch_uv_xy_rl ADNAME = adexch_uv_xy_rl
42 cadj SUBROUTINE exch_uv_xy_rl FTLNAME = exch_uv_xy_rl
43
44 cadj SUBROUTINE exch_uv_xyz_rs INPUT = 1, 2, 3, 4
45 cadj SUBROUTINE exch_uv_xyz_rs OUTPUT = 1, 2
46 cadj SUBROUTINE exch_uv_xyz_rs ACTIVE = 1, 2
47 cadj SUBROUTINE exch_uv_xyz_rs DEPEND = 3, 4
48 cadj SUBROUTINE exch_uv_xyz_rs ADNAME = adexch_uv_xyz_rs
49 cadj SUBROUTINE exch_uv_xyz_rs FTLNAME = exch_uv_xyz_rs
50
51 cadj SUBROUTINE exch_uv_xyz_rl INPUT = 1, 2, 3, 4
52 cadj SUBROUTINE exch_uv_xyz_rl OUTPUT = 1, 2
53 cadj SUBROUTINE exch_uv_xyz_rl ACTIVE = 1, 2
54 cadj SUBROUTINE exch_uv_xyz_rl DEPEND = 3, 4
55 cadj SUBROUTINE exch_uv_xyz_rl ADNAME = adexch_uv_xyz_rl
56 cadj SUBROUTINE exch_uv_xyz_rl FTLNAME = exch_uv_xyz_rl
57
58 #endif /* ALLOW_EXCH2 */

  ViewVC Help
Powered by ViewVC 1.1.22