/[MITgcm]/MITgcm/pkg/autodiff/autodiff_check.F
ViewVC logotype

Contents of /MITgcm/pkg/autodiff/autodiff_check.F

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


Revision 1.7 - (show annotations) (download)
Fri Oct 19 23:52:43 2007 UTC (16 years, 6 months ago) by heimbach
Branch: MAIN
CVS Tags: checkpoint63a, checkpoint60, checkpoint61, checkpoint62, checkpoint63, checkpoint59q, checkpoint59p, checkpoint59r, checkpoint59m, checkpoint59l, checkpoint59o, checkpoint59n, checkpoint59i, checkpoint59k, checkpoint59j, checkpoint62c, checkpoint62b, checkpoint62a, checkpoint62g, checkpoint62f, checkpoint62e, checkpoint62d, checkpoint62k, checkpoint62j, checkpoint62i, checkpoint62h, checkpoint62o, checkpoint62n, checkpoint62m, checkpoint62l, checkpoint62s, checkpoint62r, checkpoint62q, checkpoint62p, checkpoint62w, checkpoint62v, checkpoint62u, checkpoint62t, checkpoint62z, checkpoint62y, checkpoint62x, checkpoint61f, checkpoint61g, checkpoint61d, checkpoint61e, checkpoint61b, checkpoint61c, checkpoint61a, checkpoint61n, checkpoint61o, checkpoint61l, checkpoint61m, checkpoint61j, checkpoint61k, checkpoint61h, checkpoint61i, checkpoint61v, checkpoint61w, checkpoint61t, checkpoint61u, checkpoint61r, checkpoint61s, checkpoint61p, checkpoint61q, checkpoint61z, checkpoint61x, checkpoint61y
Changes since 1.6: +7 -1 lines
Parameter check for parallel gradient checks.

1 C $Header: /u/gcmpack/MITgcm/pkg/autodiff/autodiff_check.F,v 1.6 2007/08/16 12:32:49 heimbach Exp $
2 C $Name: $
3
4 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
5
6 #include "AUTODIFF_OPTIONS.h"
7
8 CBOP
9 C !ROUTINE: AUTODIFF_CHECK
10 C !INTERFACE:
11 SUBROUTINE AUTODIFF_CHECK( myThid )
12
13 C !DESCRIPTION: \bv
14 C \ev
15
16 IMPLICIT NONE
17 #include "SIZE.h"
18 #include "GRID.h"
19 #include "EEPARAMS.h"
20 #include "PARAMS.h"
21 #ifdef ALLOW_AUTODIFF
22 #include "tamc.h"
23 #endif
24
25 C !INPUT/OUTPUT PARAMETERS:
26 C myThid - Number of this instances
27 INTEGER myThid
28 CEOP
29
30 #ifdef ALLOW_AUTODIFF_TAMC
31
32 #if (defined (AUTODIFF_2_LEVEL_CHECKPOINT))
33 if (nchklev_1*nchklev_2 .lt. nTimeSteps) then
34 print*, ' the_main_loop: TAMC checkpointing parameters'
35 print*, ' nchklev_1*nchklev_2 = ',
36 & nchklev_1*nchklev_2
37 print*, ' are not consistent with nTimeSteps = ',
38 & nTimeSteps
39 stop ' ... stopped in autodiff_check'
40 endif
41 #elif (defined (AUTODIFF_4_LEVEL_CHECKPOINT))
42 if (nchklev_1*nchklev_2*nchklev_3*nchklev_4 .lt. nTimeSteps) then
43 print*, ' the_main_loop: TAMC checkpointing parameters'
44 print*, ' nchklev_1*nchklev_2*nchklev_3*nchklev_4 = ',
45 & nchklev_1*nchklev_2*nchklev_3*nchklev_4
46 print*, ' are not consistent with nTimeSteps = ',
47 & nTimeSteps
48 stop ' ... stopped in autodiff_check'
49 endif
50 #else
51 c-- Check the choice of the checkpointing parameters in relation
52 c-- to nTimeSteps: (nchklev_1*nchklev_2*nchklev_3 .ge. nTimeSteps)
53 if (nchklev_1*nchklev_2*nchklev_3 .lt. nTimeSteps) then
54 print*, ' the_main_loop: TAMC checkpointing parameters'
55 print*, ' nchklev_1*nchklev_2*nchklev_3 = ',
56 & nchklev_1*nchklev_2*nchklev_3
57 print*, ' are not consistent with nTimeSteps = ',
58 & nTimeSteps
59 stop ' ... stopped in autodiff_check'
60 endif
61 #endif
62
63 #ifndef ALLOW_AUTODIFF_MONITOR
64 IF ( adjDumpFreq .NE. 0. ) THEN
65 STOP 'adjDumpFreq <> 0, but undef ALLOW_AUTODIFF_MONITOR'
66 ENDIF
67 IF ( adjMonitorFreq .NE. 0. ) THEN
68 STOP 'adjMonitorFreq <> 0, but undef ALLOW_AUTODIFF_MONITOR'
69 ENDIF
70 #endif
71
72 #ifdef ALLOW_GRDCHK
73 IF ( useSingleCpuIO .AND. useGrdchk ) THEN
74 STOP 'Need to have useSingleCpuIO=.FALSE. with useGrdchk'
75 ENDIF
76 #endif
77
78 #endif
79
80 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
81
82 RETURN
83 END

  ViewVC Help
Powered by ViewVC 1.1.22