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 |
|
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| |
8 |
CBOP |
CBOP |
9 |
C !ROUTINE: INI_FIELDS |
C !ROUTINE: INI_FIELDS |
10 |
|
|
11 |
C !INTERFACE: |
C !INTERFACE: |
12 |
SUBROUTINE INI_FIELDS( myThid ) |
SUBROUTINE INI_FIELDS( myThid ) |
13 |
C !DESCRIPTION: \bv |
|
14 |
C *==========================================================* |
C !DESCRIPTION: |
15 |
C | SUBROUTINE INI_FIELDS |
C Initial conditions of the model state variables are set here. For |
16 |
C | o Initialise model fields |
C continuation runs a restart file will be used. For original runs |
17 |
C *==========================================================* |
C custom rules can be included here. |
|
C | Initial conditions of the model state variables are |
|
|
C | set here. For continuation runs a restart file will be |
|
|
C | used. For original runs custom rules can be included |
|
|
C | here. |
|
|
C *==========================================================* |
|
|
C \ev |
|
18 |
|
|
19 |
C !USES: |
C !USES: |
20 |
IMPLICIT NONE |
IMPLICIT NONE |
|
C === Global variables === |
|
21 |
#include "SIZE.h" |
#include "SIZE.h" |
22 |
#include "EEPARAMS.h" |
#include "EEPARAMS.h" |
23 |
#include "PARAMS.h" |
#include "PARAMS.h" |
24 |
|
|
25 |
C !INPUT/OUTPUT PARAMETERS: |
C !INPUT PARAMETERS: |
|
C == Routine arguments == |
|
|
C myThid - Number of this instance of INI_FIELDS |
|
26 |
INTEGER myThid |
INTEGER myThid |
27 |
CEOP |
CEOP |
28 |
|
|
29 |
C-- Set model variables to initial/restart conditions |
C Set model variables to initial/restart conditions |
30 |
IF ( startTime .EQ. 0. .AND. nIter0 .EQ. 0 ) THEN |
IF ( startTime .EQ. baseTime .AND. nIter0 .EQ. 0 |
31 |
CALL INI_VEL( myThid ) |
& .AND. pickupSuff .EQ. ' ' ) THEN |
32 |
CALL INI_THETA( myThid ) |
CALL INI_VEL( myThid ) |
33 |
CALL INI_SALT( myThid ) |
CALL INI_THETA( myThid ) |
34 |
CALL INI_PSURF( myThid ) |
CALL INI_SALT( myThid ) |
35 |
|
CALL INI_PSURF( myThid ) |
36 |
|
CALL INI_PRESSURE( myThid ) |
37 |
#ifdef INCLUDE_EP_FORCING_CODE |
#ifdef INCLUDE_EP_FORCING_CODE |
38 |
CALL INI_EP( myThid ) |
CALL INI_EP( myThid ) |
39 |
#endif |
#endif |
40 |
IF (nonHydrostatic) CALL INI_PNH( myThid ) |
IF (nonHydrostatic) CALL INI_PNH( myThid ) |
41 |
ELSE |
ELSEIF ( .NOT.useOffLine ) THEN |
42 |
IF ( nIter0 .EQ. 0 ) THEN |
c IF ( nIter0 .EQ. 0 ) THEN |
43 |
nIter0 = INT(startTime/deltaTClock ) |
c nIter0 = INT(startTime/deltaTClock ) |
44 |
ENDIF |
c ENDIF |
45 |
CALL READ_CHECKPOINT( nIter0, myThid ) |
CALL READ_CHECKPOINT( nIter0, myThid ) |
46 |
|
|
47 |
|
CEH3 IF (pickup_write_immed) THEN |
48 |
|
CEH3 CALL WRITE_CHECKPOINT( |
49 |
|
CEH3 & .TRUE., myCurrentTime, myCurrentIter, myThid) |
50 |
|
CEH3 ENDIF |
51 |
|
|
52 |
ENDIF |
ENDIF |
53 |
|
|
54 |
RETURN |
RETURN |