/[MITgcm]/MITgcm/pkg/cost/cost_final.F
ViewVC logotype

Contents of /MITgcm/pkg/cost/cost_final.F

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


Revision 1.11 - (show annotations) (download)
Thu Feb 10 00:46:06 2005 UTC (19 years, 3 months ago) by heimbach
Branch: MAIN
Changes since 1.10: +9 -6 lines
More * replacements.

1 C $Header: /u/gcmpack/MITgcm/pkg/cost/cost_final.F,v 1.10 2004/12/04 23:22:28 heimbach Exp $
2
3 #include "PACKAGES_CONFIG.h"
4 #include "COST_CPPOPTIONS.h"
5
6 subroutine cost_final( mythid )
7
8 c ==================================================================
9 c SUBROUTINE cost_final
10 c ==================================================================
11 c
12 c o Sum of all cost function contributions.
13 c
14 c started: Christian Eckert eckert@mit.edu 30-Jun-1999
15 c changed: Christian Eckert eckert@mit.edu 25-Feb-2000
16 c heimbach@mit.edu 05-Nov-2003 Modularize cost package
17 c
18 c ==================================================================
19 c SUBROUTINE cost_final
20 c ==================================================================
21
22 implicit none
23
24 c == global variables ==
25
26 #include "EEPARAMS.h"
27 #include "SIZE.h"
28 #include "PARAMS.h"
29
30 #include "cost.h"
31 #include "ctrl.h"
32
33 c == routine arguments ==
34
35 integer mythid
36
37 #ifdef ALLOW_COST
38 c == local variables ==
39
40 integer i,j,k
41 integer bi,bj
42 integer itlo,ithi
43 integer jtlo,jthi
44
45 c == end of interface ==
46
47 jtlo = mybylo(mythid)
48 jthi = mybyhi(mythid)
49 itlo = mybxlo(mythid)
50 ithi = mybxhi(mythid)
51
52 #if (defined (ALLOW_ECCO))
53 CALL ECCO_COST_FINAL (myThid)
54
55 #elif (defined (ALLOW_COST_VECTOR))
56 CALL COST_VECTOR (myThid)
57
58 #elif (defined (ALLOW_COST_STATE_FINAL))
59 CALL COST_STATE_FINAL (myThid)
60
61 #endif /* above stuff undef */
62
63 #ifndef ALLOW_ECCO
64
65 # ifdef ALLOW_COST_TEST
66 CALL COST_TEST (myThid)
67 # endif
68 # ifdef ALLOW_COST_ATLANTIC_HEAT
69 CALL COST_ATLANTIC_HEAT (myThid)
70 # endif
71
72 c-- Sum up all contributions.
73 do bj = jtlo,jthi
74 do bi = itlo,ithi
75
76 write(standardmessageunit,'(A,E22.14)')
77 & ' --> objf_test(bi,bj) = ', objf_test(bi,bj)
78 write(standardmessageunit,'(A,E22.14)')
79 & ' --> objf_tracer(bi,bj) = ', objf_tracer(bi,bj)
80 write(standardmessageunit,'(A,E22.14)')
81 & ' --> objf_atl(bi,bj) = ', objf_atl(bi,bj)
82
83 fc = fc
84 & + mult_test * objf_test(bi,bj)
85 & + mult_tracer * objf_tracer(bi,bj)
86 & + mult_atl * objf_atl(bi,bj)
87 enddo
88 enddo
89
90 write(standardmessageunit,'(A,E22.14)') ' local fc = ', fc
91
92 c-- Do global summation.
93 _GLOBAL_SUM_R8( fc , myThid )
94
95 write(standardmessageunit,'(A,E22.14)') ' global fc = ', fc
96
97 #endif /* ALLOW_ECCO */
98
99 c-- set averaging freq. to zero to avoid re-write of
100 c-- averaged fields in reverse checkpointing loops
101 taveFreq = 0.
102 dumpFreq = 0.
103 pChkptFreq = 0.
104 monitorFreq = 0.
105
106 #endif /* ALLOW_COST */
107
108 return
109 end
110

  ViewVC Help
Powered by ViewVC 1.1.22