/[MITgcm]/MITgcm/model/src/initialise_fixed.F
ViewVC logotype

Diff of /MITgcm/model/src/initialise_fixed.F

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

revision 1.8 by cnh, Wed Sep 26 18:09:15 2001 UTC revision 1.47 by jmc, Tue Oct 17 18:52:34 2006 UTC
# Line 1  Line 1 
1  C $Header$  C $Header$
2  C $Name$  C $Name$
3    
4    #include "PACKAGES_CONFIG.h"
5  #include "CPP_OPTIONS.h"  #include "CPP_OPTIONS.h"
6    
7  CBOP  CBOP
# Line 28  C     INITIALISE_FIXED Line 29  C     INITIALISE_FIXED
29  C      |  C      |
30  C      |-- INI_PARMS  C      |-- INI_PARMS
31  C      |  C      |
32    C      |-- PACKAGES_BOOT
33    C      |
34    C      |-- PACKAGES_READPARMS
35    C      | |
36    C      | | - MNC_INIT + MNC_CW_INIT
37    C      | |
38    C      | | - ${PKG}_READPARMS
39    C      |
40    C      |-- SET_PARMS
41    C      |
42    C      |-- INI_MODEL_IO
43    C      |
44  C      |-- MON_INIT  C      |-- MON_INIT
45  C      |  C      |
46  C      |-- INI_GRID  C      |-- INI_GRID
47  C      |  C      |
48  C      |-- INI_DEPTHS  C      |-- INI_EOS
 C      |  
 C      |-- INI_MASKS_ETC  
49  C      |  C      |
50  C      |-- INI_LINEAR_PHSURF  C      |-- INI_PHIREF
51  C      |  C      |
52  C      |-- INI_CORI  C      |-- INI_DEPTHS
53  C      |  C      |
54  C      |-- PACKAGES_BOOT  C      |-- INI_MASKS_ETC
55  C      |  C      |
56  C      |-- PACKAGES_READPARMS  C      |-- PACKAGES_INIT_FIXED
57  C      |  C      |
58  C      |-- PACKAGES_CHECK  C      |-- PACKAGES_CHECK
59  C      |  C      |
60  C      |-- PACKAGES_INIT_FIXED  C      |-- INI_LINEAR_PHSURF
61  C      |  C      |
62  C      |-- ZONAL_FILT_INIT  C      |-- INI_CORI
63  C      |  C      |
64  C      |-- INI_CG2D  C      |-- INI_CG2D
65  C      |  C      |
66  C      |-- INI_CG3D  C      |-- INI_CG3D
67  C      |  C      |
68    C      |-- CONFIG_CHECK
69    C      |
70  C      |-- CONFIG_SUMMARY  C      |-- CONFIG_SUMMARY
71    C      |
72    C      |-- WRITE_GRID
73    C      |
74    C      |-- CPL_EXCH_CONFIGS
75    
76  C     !USES:  C     !USES:
77        IMPLICIT NONE        IMPLICIT NONE
# Line 68  C     == Routine arguments == Line 85  C     == Routine arguments ==
85        INTEGER myThid        INTEGER myThid
86  CEOP  CEOP
87    
88    C-    here is a way to deliberately break the barrier syncronization
89    C     by adding a BARRIER on thread XXX only ; Used to test BAR_CHECK.
90    c     IF ( myThid.EQ.XXX ) THEN
91    c       _BARRIER
92    c       CALL SYSTEM('sleep 1')
93    c     ENDIF
94    C--   Check barrier synchronization:
95          CALL BAR_CHECK( 2, myThid )
96    
97  C--   Set model parameters.  C--   Set model parameters.
98  C     Parameters are set to defaults and then updates are read from  C     Parameters are set to defaults and then updates are read from
99  C     an input file called data.  C     an input file called data.
100        CALL INI_PARMS( myThid )        CALL INI_PARMS( myThid )
       _BARRIER  
101    
102  #ifndef EXCLUDE_MONITOR  C--   Configure packages
103          CALL PACKAGES_BOOT( myThid )
104    
105    C--   Read configuration parameters for packages
106          CALL PACKAGES_READPARMS( myThid )
107    
108    C--   Set (or reset) parameters (at this point, know which packages are used);
109    C     after this call, main model parameters are not supposed to be modified.
110          CALL SET_PARMS( myThid )
111    
112    C--   Write units/set precision/etc for I/O of variables/arrays belonging
113    C     to the core dynamical model
114          CALL INI_MODEL_IO( myThid )
115    
116    #ifdef ALLOW_MONITOR
117  C--   Initialise MONITOR I/O streams so we can report config. info  C--   Initialise MONITOR I/O streams so we can report config. info
118        CALL MON_INIT( myThid )        CALL MON_INIT( myThid )
       _BARRIER  
119  #endif  #endif
120    
   
121  C--   Set model grid.  C--   Set model grid.
122  C     Variables defining model grid spacing are defined.  C     Variables defining model grid spacing are defined.
123        CALL INI_GRID( myThid )        CALL INI_GRID( myThid )
124        _BARRIER  
125    C--   Set equation of state parameters.
126          CALL INI_EOS( myThid )
127    
128    C--   Set pressure/geopotential reference profile
129          CALL INI_PHIREF( myThid )
130    
131  C--   Initialise map of depths  C--   Initialise map of depths
132        CALL INI_DEPTHS( myThid )        CALL INI_DEPTHS( myThid )
       _BARRIER  
133    
134  C--   Derive masks, lopping factors and recipricols of quantities.  C--   Derive masks, lopping factors and recipricols of quantities.
135  C     Volumes and areas are set according to grid and depth map.  C     Volumes and areas are set according to grid and depth map.
136        CALL INI_MASKS_ETC( myThid )        CALL INI_MASKS_ETC( myThid )
       _BARRIER  
   
 C--   Set Bo_surf => define the Linear Relation: Phi_surf(eta)  
       CALL INI_LINEAR_PHISURF( myThid )  
   
 C--   Set coriolis operators  
       CALL INI_CORI( myThid )  
137    
138  C--   Configure packages  C--   Synchronize all threads after setting masks and before pkgs init.
139        CALL PACKAGES_BOOT( myThid )        _BARRIER
140    
141  C--   Read configuration parameters for packages  C--   Call fixed data initialization phase of packages
142        CALL PACKAGES_READPARMS( myThid )        CALL PACKAGES_INIT_FIXED( myThid )
143    
144  C--   Check dependances between packages  C--   Check dependances between packages
145        CALL PACKAGES_CHECK( myThid )        CALL PACKAGES_CHECK( myThid )
146    
147  C--   Call fixed data initialization phase of packages  C--   Set Bo_surf => define the Linear Relation: Phi_surf(eta)
148        CALL PACKAGES_INIT_FIXED( myThid )        CALL INI_LINEAR_PHISURF( myThid )
149    
150  #ifdef ALLOW_ZONAL_FILT  C--   Set coriolis operators
151  C--   Latitude circle filter initialisation        CALL INI_CORI( myThid )
       CALL ZONAL_FILT_INIT(myThid)  
       _BARRIER  
 #endif  
152    
153  C--   Set laplace operators for use in 2D conjugate gradient solver.  C--   Set laplace operators for use in 2D conjugate gradient solver.
154        CALL INI_CG2D( myThid )        CALL INI_CG2D( myThid )
155    
156  #ifdef ALLOW_NONHYDROSTATIC  #ifdef ALLOW_NONHYDROSTATIC
157  C--   Set laplace operators for use in 3D conjugate gradient solver.  C--   Set laplace operators for use in 3D conjugate gradient solver.
158    ceh3 needs an IF ( useNONHYDROSTATIC ) THEN
159        CALL INI_CG3D( myThid )        CALL INI_CG3D( myThid )
160  #endif  #endif
161    
162    C--   Check parameters and model cofiguration
163          CALL CONFIG_CHECK( myThid )
164    
165  C--   Finally summarise the model cofiguration  C--   Finally summarise the model cofiguration
166        CALL CONFIG_SUMMARY( myThid )        CALL CONFIG_SUMMARY( myThid )
167    
168    C--   Write grid data and geometry arrays
169          IF ( debugLevel.GE.debLevA .OR.
170         &     startTime.EQ.baseTime ) CALL WRITE_GRID( myThid )
171    
172    #ifdef COMPONENT_MODULE
173    C--   Post component-model configuration information to coupler
174    C     and get config. info for other component(s).
175          IF ( useCoupler ) CALL CPL_EXCH_CONFIGS( myThid )
176    #endif
177    
178    C--   Check barrier synchronization:
179          CALL BAR_CHECK( 3, myThid )
180    
181    C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
182    
183          RETURN
184        END        END

Legend:
Removed from v.1.8  
changed lines
  Added in v.1.47

  ViewVC Help
Powered by ViewVC 1.1.22