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

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

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


Revision 1.4 - (hide annotations) (download)
Thu Dec 8 15:44:34 2005 UTC (18 years, 5 months ago) by heimbach
Branch: MAIN
CVS Tags: checkpoint57y_post, checkpoint58, checkpoint58d_post, checkpoint58c_post, checkpoint58a_post, checkpoint57z_post, checkpoint58b_post
Changes since 1.3: +5 -1 lines
First step for a NLFS adjoint
o initially suppress rStar (new flag DISABLE_RSTAR_CODE)
o new init. routines for calc_r_star, calc_surf_dr
o still need to deal with ini_masks_etc
o testreport seemed happy

1 heimbach 1.4 C $Header: /u/gcmpack/MITgcm/pkg/autodiff/autodiff_check.F,v 1.3 2005/08/10 03:34:48 heimbach Exp $
2 heimbach 1.1 C $Name: $
3    
4     C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
5    
6 jmc 1.2 #include "AUTODIFF_OPTIONS.h"
7 heimbach 1.1
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 heimbach 1.3 #if (defined (AUTODIFF_2_LEVEL_CHECKPOINT))
33 heimbach 1.1 if (nchklev_1*nchklev_2 .lt. nTimeSteps) then
34     print*, ' the_main_loop: TAMC checkpointing parameters'
35 heimbach 1.3 print*, ' nchklev_1*nchklev_2 = ',
36 heimbach 1.1 & nchklev_1*nchklev_2
37     print*, ' are not consistent with nTimeSteps = ',
38     & nTimeSteps
39     stop ' ... stopped in autodiff_check'
40     endif
41 heimbach 1.3 #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 heimbach 1.1 #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 heimbach 1.3 print*, ' nchklev_1*nchklev_2*nchklev_3 = ',
56 heimbach 1.1 & 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 heimbach 1.4 IF ( select_rStar.NE.0 ) THEN
64     STOP 'in autodiff_check: adjoint not implemented for rStar'
65     ENDIF
66    
67 heimbach 1.1 #endif
68    
69     C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
70    
71     RETURN
72     END

  ViewVC Help
Powered by ViewVC 1.1.22